Open-source Flask Dashboard generated by AppSeed
op top of a modern Bootstrap
design. Designed for those who like bold elements and beautiful websites, Black Dashboard is ready to help you create stunning websites and webapps. Black Dashboard is built with over 50 frontend individual elements, like buttons, inputs, navbars, nav tabs, cards, or alerts, giving you the freedom of choosing and combining.
- ๐ Black Dashboard Flask -
product page
- ๐ Black Dashboard Flask -
LIVE Demo
- โ
Compatible with LIVE Deployer
- Deploy Black Dashboard with Drag & Drop -
video material
- Deploy Black Dashboard with Drag & Drop -
๐ Built with App Generator, timestamp:
2022-05-25 09:44
- โ
Up-to-date dependencies
- โ
Black Dashboard, Persistent
Dark-Mode
- โ
DB Tools
: SQLAlchemy ORM,Flask-Migrate
(schema migrations) - โ
Persistence
: SQLite (dev), MySql (prod) - โ
Authentication
: Session Based,OAuth
via Github - โ
Deployment
: Docker, Page Compression (Flask-Minify)
๐ Step 1 - Download the code from the GH repository (using
GIT
)
$ git clone https://github.com/app-generator/flask-black-dashboard.git
$ cd flask-black-dashboard
๐ Step 2 - Start the APP in
Docker
$ docker-compose up --build
Visit http://localhost:5085
in your browser. The app should be up & running.
The meaning of each variable can be found below:
DEBUG
: ifTrue
the app runs in develoment mode- For production value
False
should be used
- For production value
ASSETS_ROOT
: used in assets management- default value:
/static/assets
- default value:
OAuth
via GithubGITHUB_ID
=<GITHUB_ID_HERE>GITHUB_SECRET
=<GITHUB_SECRET_HERE>
Download the code
$ git clone https://github.com/app-generator/flask-black-dashboard.git
$ cd flask-black-dashboard
Install modules via
VENV
$ virtualenv env
$ source env/bin/activate
$ pip3 install -r requirements.txt
Set Up Flask Environment
$ export FLASK_APP=run.py
$ export FLASK_ENV=development
Start the app
$ flask run
// OR
$ flask run --cert=adhoc # For HTTPS server
At this point, the app runs at http://127.0.0.1:5000/
.
Install modules via
VENV
(windows)
$ virtualenv env
$ .\env\Scripts\activate
$ pip3 install -r requirements.txt
Set Up Flask Environment
$ # CMD
$ set FLASK_APP=run.py
$ set FLASK_ENV=development
$
$ # Powershell
$ $env:FLASK_APP = ".\run.py"
$ $env:FLASK_ENV = "development"
Start the app
$ flask run
// OR
$ flask run --cert=adhoc # For HTTPS server
At this point, the app runs at http://127.0.0.1:5000/
.
The product can be easily deployed on Render using Python Deployer (open-source
tool).
๐ Step 1: Set UP a Render account
- Create account
- Create an API_KEY
- Attach a
credit card
to the account- Note: Each Python service deployed on Render requires a monthly payment
๐ Step 2: Download Python Deployer
$ git clone https://github.com/app-generator/deploy-automation-render.git
$ cd deploy-automation-render
$ pip install -r requirements.txt
๐ Step 3: Set up the
ENV
as suggested in the deployer help
$ export RENDER_API_KEY=<RENDER_API_KEY> # mandatory
$ export RENDER_OWNER_ID=<RENDER_OWNER_ID> # needs to have a CC attached, used for Billing
๐ Step 4: Deploy the repo
$ python.exe deployer.py flask https://github.com/app-generator/flask-star-admin "run:app"
The new service should be visible on your Render Dashboard and soon be LIVE.
app-gen-and-live-deploy-flask-black-dashboard.mp4
By default, the app redirects guest users to authenticate. In order to access the private pages, follow this set up:
- Start the app via
flask run
- Access the
registration
page and create a new user:http://127.0.0.1:5000/register
- Access the
sign in
page and authenticatehttp://127.0.0.1:5000/login
To recompile SCSS files, follow this setup:
๐ Step #1 - Install tools
๐ Step #2 - Change the working directory to
assets
folder
$ cd apps/static/assets
๐ Step #3 - Install modules (this will create a classic
node_modules
directory)
$ npm install
// OR
$ yarn
๐ Step #4 - Edit & Recompile SCSS files
$ gulp
The generated file is saved in static/assets/css
directory.
The project is coded using blueprints, app factory pattern, dual configuration profile (development and production) and an intuitive structure presented bellow:
< PROJECT ROOT >
|
|-- apps/
| |
| |-- home/ # A simple app that serve HTML files
| | |-- routes.py # Define app routes
| |
| |-- authentication/ # Handles auth routes (login and register)
| | |-- routes.py # Define authentication routes
| | |-- models.py # Defines models
| | |-- forms.py # Define auth forms (login and register)
| |
| |-- static/
| | |-- <css, JS, images> # CSS files, Javascripts files
| |
| |-- templates/ # Templates used to render pages
| | |-- includes/ # HTML chunks and components
| | | |-- navigation.html # Top menu component
| | | |-- sidebar.html # Sidebar component
| | | |-- footer.html # App Footer
| | | |-- scripts.html # Scripts common to all pages
| | |
| | |-- layouts/ # Master pages
| | | |-- base-fullscreen.html # Used by Authentication pages
| | | |-- base.html # Used by common pages
| | |
| | |-- accounts/ # Authentication pages
| | | |-- login.html # Login page
| | | |-- register.html # Register page
| | |
| | |-- home/ # UI Kit Pages
| | |-- index.html # Index page
| | |-- 404-page.html # 404 page
| | |-- *.html # All other pages
| |
| config.py # Set up the app
| __init__.py # Initialize the app
|
|-- requirements.txt # App Dependencies
|
|-- .env # Inject Configuration via Environment
|-- run.py # Start the app - WSGI gateway
|
|-- ************************************************************************
For more components, pages and priority on support, feel free to take a look at this amazing starter:
Black Dashboard is a premium Bootstrap Design now available for download in Django. Made of hundred of elements, designed blocks, and fully coded pages, Black Dashboard PRO is ready to help you create stunning websites and web apps.
- ๐ Black Dashboard PRO Flask - product page
- โ
Enhanced UI
- more pages and components - โ
Priority
on support
- โ
Black Dashboard Flask - Open-source starter generated by App Generator.