Skip to content
A demonstration of best practices for a large Flask API project
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.
app Add shared folder May 19, 2019
.gitignore Add skeleton app with namespaces May 18, 2019 Add skeleton app with namespaces May 18, 2019


A sample project showing how to build a scalable, maintainable, modular Flask API with a heavy emphasis on testing.

Running the app

Preferably, first create a virtualenv and activate it, perhaps with the following command:

virtualenv -p python3 venv
source venv/bin/activate

Next, run

pip install -r requirements.txt

to get the dependencies.

Next, initialize the database

python seed_db

Type "Y" to accept the message (which is just there to prevent you accidentally deleting things -- it's just a local SQLite database)

Finally run the app with


Navigate to the posted URL in your terminal to be greeted with Swagger, where you can test out the API.

You can’t perform that action at this time.