Getting Started with Flask: A Beginner’s Guide to Python Web Development

Contents

    Flask is a lightweight and flexible web framework for Python that is perfect for beginners. This guide will walk you through installing Flask, setting up a basic web app, and troubleshooting common errors.


    Step 1: Install Python

    Why?

    Flask is a Python framework, so you need Python installed on your machine.

    How?

      • Check if Python is installed:
        Open your terminal (Command Prompt, Powershell, Terminal):
        bash
        python –version

        or
        bash
        python3 –version

        If you see a version number (e.g., Python 3.9.7), Python is installed.

      • If Python is not installed:
          • Follow the installation instructions.
          • Ensure you check the box “Add Python to PATH” during installation (important for using Python from the command line).

    Why?

    A virtual environment isolates your project and its dependencies from global Python installations.

    How?

      • Create a folder for your project:
        bash
        mkdir flask_project
        cd flask_project
      • Create a virtual environment:
        bash
        python -m venv venv

        or, if your system uses python3:
        bash
        python3 -m venv venv

      • Activate the virtual environment:
          • On Windows (Command Prompt):

        venv\Scripts\activate

          • On macOS/Linux:

        source venv/bin/activate

      • You should now see (venv) at the start of your terminal prompt indicating the environment is active.

    Step 3: Install Flask

    Why?

    You need to install the Flask package inside your virtual environment.

    How?

      • Run:
        bash
        pip install Flask

    Troubleshooting:

      • If pip is not recognized:
          • Ensure your virtual environment is activated.
          • Use python -m pip install Flask as an alternative.
      • If you get permissions errors, make sure you are not using sudo or running outside a virtual environment.

    Step 4: Create Your First Flask Application

    How?

      • Inside your project folder, create a new Python file, e.g., app.py.
      • Open app.py in a text editor and paste the following starter code:

    python
    from flask import Flask

    app = Flask(name)

    @app.route(‘/’)
    def home():
    return “Hello, Flask!”

    if name == “main“:
    app.run(debug=True)

      • Explanation:
          • Flask(__name__) initializes the app.
          • @app.route('/') creates a route for the homepage.
          • app.run(debug=True) starts the server with debug mode on (helpful for catching errors).

    Step 5: Run Your Flask Application

    How?

      • Make sure your virtual environment is activated.
      • Run the file:
        bash
        python app.py

        or if your system requires:
        bash
        python3 app.py

      • You should see output like:
          • Restarting with stat
          • Debugger is active!
          • Debugger PIN: 123-456-789
      • Open your web browser and visit http://127.0.0.1:5000/.
      • You should see the text: Hello, Flask!

    Step 6: Common Errors & How to Fix Them

    1. ModuleNotFoundError: No module named ‘flask’

      • Cause: Flask is not installed in your current environment.
      • Fix:
          • Ensure virtual environment is activated ((venv) prefix).
          • Run pip install Flask.
          • Verify installation with pip list and look for Flask.

    2. ‘python’ is not recognized as an internal or external command

      • Cause: Python is not added to your PATH environment variable.
      • Fix:
          • Reinstall Python and check “Add Python to PATH” option.
          • Alternatively, use full Python path or edit the Path variable manually.

    3. Port 5000 already in use

      • Sometimes another app is using Flask’s default port.
      • Fix:
          • Run Flask on a different port, e.g.:
            bash
            python app.py –port=5001

        Or edit app.run():
        python
        app.run(debug=True, port=5001)

    4. IndentationError or SyntaxError

      • Python is sensitive to indentation.
      • Make sure your code is properly indented (4 spaces per indentation level).
      • Avoid mixing tabs and spaces.

    Step 7: Next Steps

      • Start building more routes and templates.
      • Learn how to:
          • Use HTML templates with Jinja2 (render_template()).
          • Handle form submissions.
          • Connect to a database.
          • Organize your Flask project structure.

    Additional Tips

      • Always activate the virtual environment when working on your project.
      • Use pip freeze > requirements.txt to save dependencies.
      • Share your requirements.txt so others can install dependencies with:
        bash
        pip install -r requirements.txt
    Updated on July 11, 2025
    Was this article helpful?

    Leave a Reply

    Your email address will not be published. Required fields are marked *