Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/metcalfc/simple-flask
https://github.com/metcalfc/simple-flask
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/metcalfc/simple-flask
- Owner: metcalfc
- License: mit
- Created: 2023-06-19T00:08:59.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-01-23T00:19:14.000Z (11 months ago)
- Last Synced: 2024-01-23T02:51:29.185Z (11 months ago)
- Language: Python
- Size: 49.8 KB
- Stars: 0
- Watchers: 2
- Forks: 3
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
README
# Try Out Daytona
[![Open in Daytona](https://img.shields.io/static/v1?label=Daytona&message=Open&color=blue&logo=visualstudiocode)](https://daytona.io/#https://github.com/metcalfc/simple-flask)
## Things to try
Once you have this sample opened, you'll be able to work with it like you would locally.
Some things to try:
1. **Edit:**
- Open `app.py`
- Try adding some code and check out the language features.
- Make a spelling mistake and notice it is detected. The [Code Spell Checker](https://marketplace.visualstudio.com/items?itemName=streetsidesoftware.code-spell-checker) extension was automatically installed because it is referenced in `.devcontainer/devcontainer.json`.
- Also notice that utilities like `pylint` and the [Python](https://marketplace.visualstudio.com/items?itemName=ms-python.python) extension are installed.2. **Terminal:**
- Press ctrl+shift+\` to open a terminal window.
- Type `python -m flask run --port 5000 --no-debugger --no-reload` to run the app.
- The terminal will say your app is `Running on http://127.0.0.1:5000/`. Click on the link in the terminal to view your app running in the browser.
- Notice that the Python extension is already installed in the container since the `.devcontainer/devcontainer.json` lists `"ms-python.python"` as an extension to install automatically when the container is created.
> **Tip:** If you use this container outside of VS Code via `docker run` with `-p 5000`, you may need to append `--host 0.0.0.0` to the command above. The `-p` option "publishes" the port rather than forwarding it. It therefore will not work if the application only listens to localhost. The `forwardPorts` property in `devcontainer.json` does not have this limitation, but you can use `appPort` property instead if you want to mirror the `docker run` behavior.3. **Build, Run, and Debug:**
- Open `app.py`
- Add a breakpoint (e.g. on line 9).
- Press F5 to launch the app in the container.
- Once the breakpoint is hit, try hovering over variables (e.g. the app variable on line 7), examining locals, and more.
- Continue (F5). You can connect to the server in the container by either:
- Clicking on `Open in Browser` in the notification telling you: `Your service running on port 5000 is available`.
- Clicking the globe icon in the 'Ports' view. The 'Ports' view gives you an organized table of your forwarded ports, and you can access it with the command **Ports: Focus on Ports View**.
- Notice port 5000 in the 'Ports' view is labeled "Hello Remote World." In `devcontainer.json`, you can set `"portsAttributes"`, such as a label for your forwarded ports and the action to be taken when the port is autoforwarded.
4. **Rebuild or update your container**You may want to make changes to your container, such as installing a different version of a software or forwarding a new port. You'll rebuild your container for your changes to take effect.
**Open browser automatically:** As an example change, let's update the `portsAttributes` in the `.devcontainer/devcontainer.json` file to open a browser when our port is automatically forwarded.
- Open the `.devcontainer/devcontainer.json` file.
- Modify the `"onAutoForward"` attribute in your `portsAttributes` from `"notify"` to `"openBrowser"`.
- Press F1 and select the **Dev Containers: Rebuild Container**.5. **Install Node.js using a Dev Container Feature:**
- Press F1 and select the **Dev Containers: Configure Container Features...** or **Codespaces: Configure Container Features...** command.
- Type "node" in the text box at the top.
- Check the check box next to "Node.js (via nvm) and yarn" (published by devcontainers)
- Click OK
- Press F1 and select the **Dev Containers: Rebuild Container**.