Hello Coders,
In this short article, I will present a curated list with open-source web apps coded in Python / Flask and released under permissive licenses (MIT, LGPL) that might help students and beginners to code and deploy a real project. All apps presented here are generated using automation tools, boilerplate code, and HTML parsers. The features, common to all apps:
- Open-Source, released under the MIT, LGPL
- Dual database setup, SQLite for local development and PostgreSQL for - production
- Apps are generated using automation tools and boilerplate code
- Clean code-base, helpers and basic tooling
- Deployment Scripts: Docker, Gunicorn
In a rush? Check out the full index here: open-source admin panels. Also, this list is open to suggestions, feel free to mention more open-source apps in the comments.
How to Build the Apps
All Flask starters share the same code-base and the build instructions are identical for all projects. For instance, if we want to build Flask Dashboard Black boilerplate, we need to write a few simple commands in a terminal window:
$ # Get the code
$ git clone https://github.com/app-generator/flask-black-dashboard.git
$ cd flask-black-dashboard
$
$ # Virtualenv modules installation (Unix based systems)
$ virtualenv --no-site-packages env
$ source env/bin/activate
$
$ # Virtualenv modules installation (Windows based systems)
$ # virtualenv --no-site-packages env
$ # .\env\Scripts\activate
$
$ # Install modules
$ # SQLIte version (no PostgreSQL)
$ pip3 install -r requirements-sqlite.txt
$
$ # OR with PostgreSQL connector
$ pip install -r requirements.txt
$
$ # Set the FLASK_APP environment variable
$ (Unix/Mac) export FLASK_APP=run.py
$ (Windows) set FLASK_APP=run.py
$ (Powershell) $env:FLASK_APP = ".\run.py"
$
$ # Set up the DEBUG environment
$ # (Unix/Mac) export FLASK_ENV=development
$ # (Windows) set FLASK_ENV=development
$ # (Powershell) $env:FLASK_ENV = "development"
$
$ # Start the application (development mode)
$ # --host=0.0.0.0 - expose the app on all network interfaces (default 127.0.0.1)
$ # --port=5000 - specify the app port (default 5000)
$ flask run --host=0.0.0.0 --port=5000
$
$ # Access the dashboard in browser: http://127.0.0.1:5000/
If all goes well, the app should be visible in the browser
Pretty cool!
The full list
- Flask Dashboard Argon
- Flask Dashboard SRTDash
- Flask Dashboard NowUI
- Flask Dashboard Material Admin
- Flask Dashboard Material Dark
- Flask Dashboard CoreUI
- Flask Dashboard Black
- Flask Dashboard AdminLTE
- Flask Dashboard Atlantis Dark
- Flask Dashboard Atlantis
- Flask Dashboard Modular Admin
- Flask Light Bootstrap Dashboard
- Flask Dashboard Material
- Flask Dashboard Sleek
- Flask Dashboard Light Blue
Links
- Index with free admin dashboards presented as products
- A similar list published on Github
- Open-Source Admin Dashboards - a popular article published here on Dev
Thank you!