loading...
Cover image for Flask Dashboard - Simple Open-Source Starters

Flask Dashboard - Simple Open-Source Starters

sm0ke profile image Sm0ke Updated on ・8 min read

Hello Coders,

In this article, I will present a shortlist with open-source and free admin panels coded in Flask on top of some super nice UI Kits. The apps are published on Github under permissive licenses (MIT, LGPL) and anyone can use them for unlimited hobby and commercial products.

The starters are provided with a minimum set of features (authentication, ORM, Database, DB Migration Tools, Deployment Scripts) and might a good knowledge base for beginners to start new projects on top of functional, tested starters.


Dashboards Links (for those in a rush)

Flask Dashboard Atlantis Dark - Open-Source App coded in Flask


Flask Dashboards Features

All starters are built using an automatized workflow, and the code-base is quite similar to all Flask dashboards - The common features:

  • MIT License (of course), UI-Ready
  • Dual DB profile: SQLite (development), PostgreSQL for production
  • DB Tools: Flask-SqlAlchemy ORM, Alembic for Db Migration
  • Session-based login, hashed passwords
  • Deployment scripts: Docker, Gunicorn / Nginx
  • Modern UI Kits, actively supported by publishers

The code follows the best practices, with a simple, modular code-base. Apps are documented via comprehensive README files, along with separated detailed docs accessible here: Admin Dashboards - Usage


Flask Dashboards - Short-List


How to use the code

As mentioned, all admin panels are published on Github. Let's built a sample app, and see something nice on the screen: Flask Dashboard Black

To build successfully the starters, we need a Python3 environment properly set up, and (optionally) GIT tool, to grab the source code directly from Github. For those unfamiliar with Git, feel free to access the repository and download the ZIP. All we need to do is to open a terminal and type a few commands:

Clone/download the source code

$ git clone https://github.com/app-generator/flask-black-dashboard.git
$ cd flask-black-dashboard

Built a virtual environment

$ # 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 dependencies

$ # Install modules - SQLite Database
$ pip3 install -r requirements.txt

Set up the environment

$ # Set the FLASK_APP environment variable
$ (Unix/Mac) export FLASK_APP=run.py

Start the app

$ # 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 this super simple set up works well, we should see the login page in the browser. By default, the app redirects guests users to the login page for authentication. After passing the login, we should see the main dashboard screen:

Flask Dashboard Black - Main dashboard screen.

Profile Page

Flask Dashboard Black - User Profile Page.

From this point, we can play with the code to add more pages, update the title or labels for authentication pages or add more features like: remember password.

At some point, might be a good idea to go LIVE with our app we can reuse some basic deployment configurations already provided for all starters:


Docker execution

The application can be easily executed in a docker container. The steps:

Get the code

$ git clone https://github.com/app-generator/flask-black-dashboard.git
$ cd flask-black-dashboard

Start the app in Docker

$ sudo docker-compose pull && sudo docker-compose build && sudo docker-compose up -d

Visit http://localhost:5005 in your browser. The app should be up & running.


Gunicorn

Gunicorn 'Green Unicorn' is a Python WSGI HTTP Server for UNIX.

Install using pip

$ pip install gunicorn

Start the app using gunicorn binary

$ gunicorn --bind 0.0.0.0:8001 run:app
Serving on http://localhost:8001

Visit http://localhost:8001 in your browser. The app should be up & running.


Waitress

Waitress (Gunicorn equivalent for Windows) is meant to be a production-quality pure-Python WSGI server with very acceptable performance. It has no dependencies except ones that live in the Python standard library.

Install using pip

$ pip install waitress

Start the app using waitress-serve

$ waitress-serve --port=8001 run:app
Serving on http://localhost:8001

Visit http://localhost:8001 in your browser. The app should be up & running.

In case of any issues, it might be a good idea to access the official docs provided in the public space.


Other Flask Dashboards - Short-Info

Flask iDashboard Free - LIVE Demo

Open-Source Admin Dashboard coded in Flask on top of iDashboard Design (free version) by YooKits.

Flask iDashboard Free - Open-Source Flask Boilerplate.


Flask Dashboard Argon - LIVE Demo

Open-Source Admin Dashboard coded in Flask on top of Argon Dashboard design (free version)

Flask Dashboard Argon - Open-Source Flask Boilerplate.


Flask DattaAble - LIVE Demo

Free admin panel coded in Flask on top of free and beautiful design provided by CodedThemes: DattaAble Free Dashboard.

Flask DattaAble - Free Admin Panel coded in Flask.


Flask Light Blue - LIVE Demo

Free admin panel coded in Flask Framework on top of Light Blue Dashboard design provided by FlatLogic.

Flask Light Blue - Free Admin panel coded in Flask.


Flask Star Admin - LIVE Demo

Open-Source Admin Dashboard coded in Flask Framework on top of Star Admin Dashboard design (free version).

Flask Star Admin - Free admin panel coded in Flask


Flask Dashboard Shards - LIVE Demo

Open-Source Admin Dashboard coded in Flask Framework on top of Shards Dashboard design (free version).

Flask Dashboard Shards - Open-Source Admin Panel Coded in Flask.


Flask Atlantis Dark - LIVE Demo

Open-Source Admin Dashboard coded in Flask Framework on top of Atlantis Dark Dashboard design (free version).

Flask Dashboard Atlantis Dark - Free Web App coded in Flask.


Flask Dashboard Adminator - LIVE Demo

Flask Dashboard Adminator - Open-Source Admin Panel Coded in Flask.


Credits & Links

Flask Framework

Flask is a micro web framework written in Python. It is classified as a microframework because it does not require particular tools or libraries. It has no database abstraction layer, form validation, or any other components where pre-existing third-party libraries provide common functions.

What is a dashboard

A dashboard is a set of pages that are easy to read and offer information to the user in real time regarding his business. A dashboard usually consists of graphical representations of the current status and trends within an organization. Having a well-designed dashboard will give you the possibility to act and make informed decisions based on the data that your business provides - definition provided by Creative-Tim - Free Dashboard Templates.


Thanks for reading! Let me know your thoughts in the comments.

Posted on by:

sm0ke profile

Sm0ke

@sm0ke

#Automation, my favorite programming language

Discussion

markdown guide
 

I am going to read it again , learn from it, & implement it. Thanks a ton for this article.

 

Hello Vinil!
Thanks for reading. In case I've missed something, might be a good idea to take a look at the official docs provided for each product. The full-index available here.
Happy coding & stay safe!

 
 

Thank you!
God is a programmer. I'm just a humble messenger. .. <('_')> ..