Need help with python-sample-vscode-flask-tutorial?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

183 Stars 2.0K Forks MIT License 57 Commits 3 Opened issues


Sample code for the Flask tutorial in the VS Code documentation

Services available


Need anything else?

Contributors list

Python/Flask Tutorial for Visual Studio Code

  • This sample contains the completed program from the tutorial, make sure to visit the link: Using Flask in Visual Studio Code. Intermediate steps are not included.

  • It also contains the Dockerfile and uwsgi.ini files necessary to build a container with a production server. The resulting image works both locally and when deployed to Azure App Service. See Deploy Python using Docker containers.

  • To run the app locally:

    1. Run the command
      cd hello_app
      , to change into the folder that contains the Flask app.
    2. Run the command
      set FLASK_APP=webapp
      (Windows cmd) or
      (macOS/Linux) to point to the app module.
    3. Start the Flask server with
      flask run

The file

In the root folder, the
file is specifically for deploying to Azure App Service on Linux without using a containerized version of the app (that is, deploying the code directly, not as a container).

Because the app code is in its own module in the

folder (which has an
), trying to start the Gunicorn server within App Service on Linux produces an "Attempted relative import in non-package" error.

file, therefore, is a shim to import the app object from the
module, which then allows you to use startup:app in the Gunicorn command line (see


Contributions to the sample are welcome. When submitting changes, also consider submitting matching changes to the tutorial, the source file for which is

Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit

When you submit a pull request, a CLA-bot automatically determines whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

Additional details

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.