This repository contains the code for the board Flask sample project.
You can run the provided example project on your local machine by following the steps outlined below.
Create a new virtual environment:
python3 -m venv venv/Activate the virtual environment:
source ./venv/bin/activateNavigate to the folder for the step that you're currently on.
Install the dependencies for this project if you haven't installed them yet:
(venv) $ python -m pip install -r requirements.txtThis project works with environment variables that the application expects in a .env file inside the root directory of your project.
Create a .env file with this content:
FLASK_SECRET_KEY="mysecretkey"
FLASK_DATABASE="board.sqlite"
You can add your own content there, but you must define it before running the Flask application.
If you want to deploy your Flask app later, then it's a good idea to generate a proper secret key.
If you need to create cryptographically sound data like a Flask secret key, then you can use Python's secrets module:
>>> import secrets
>>> secrets.token_hex()
'2e9ac41b1e0b66a8d93d66400e2300c4b4c2953f'The .token_hex() method returns a hexadecimal string containing random numbers and letters from 0 to 9 and a to f. Use the value that secrets.token_hex() outputs for you and add it to your Flask project's .env file:
# .env
FLASK_SECRET_KEY="2e9ac41b1e0b66a8d93d66400e2300c4b4c2953f"
FLASK_DATABASE="board.sqlite"
To avoid saving the secret key directly in your code, it may be a good idea to work with environment variables. You can learn more about that in the Flask documentation on configuration handling.
To initialize the database, run this command:
(venv) $ python -m flask --app board init-dbIf you used the content for the .env file from above, then you can find a board.sqlite database in the root directory of your project.
To run the Flask development server, enter this command in your terminal while being in the root directory of your project:
(venv) $ python -m flask --app board run --debugNow you can navigate to the address that's shown in the output when you start the server. Commonly, that's http://localhost:5000/.