Open-source Flask Dashboard generated by AppSeed
op top of a modern design. Designed for those who like bold elements and beautiful websites, Soft UI Dashboard is ready to help you create stunning websites and webapps. Soft UI Dashboard is built with over 70 frontend individual elements, like buttons, inputs, navbars, nav tabs, cards, or alerts, giving you the freedom of choosing and combining.
- π Soft UI Dashboard Flask - product page
- π Complete documentation -
Learn how to use and update the product
- π Free support for registered users (Email &
Discord
)
Built with App Generator, timestamp
2022-10-11 15:47
Up-to-date dependencies
- Database:
mysql
DB Tools
: SQLAlchemy ORM, Flask-Migrate (schema migrations)- Session-Based authentication (via flask_login), Forms validation
Dark Mode
(enhancement)- Persistent via browser
local storage
- Persistent via browser
Note: Make sure your Mysql server is properly installed and accessible.
Step 1 - Create the MySql Database to be used by the app
Create a new MySql
databaseCreate a new user
and assign full privilegies (read/write)
Step 2 - Edit the
.env
to match your MySql DB credentials. Make sureDB_ENGINE
is set tomysql
.
DB_ENGINE
:mysql
DB_NAME
: default value =appseed_db
DB_HOST
: default value =localhost
DB_PORT
: default value =3306
DB_USERNAME
: default value =appseed_db_usr
DB_PASS
: default value =pass
Here is a sample:
# .env sample
DEBUG=False # False enables the MySql Persistence
DB_ENGINE=mysql # Database Driver
DB_NAME=appseed_db # Database Name
DB_USERNAME=appseed_db_usr # Database User
DB_PASS=STRONG_PASS_HERE # Password
DB_HOST=localhost # Database HOST, default is localhost
DB_PORT=3306 # MySql port, default = 3306
Download the code
$ # Get the code
$ git clone https://github.com/appseed-projects/a46b6ce0-3d7f-4865-b37d-f0782f6bb772.git
$ cd a46b6ce0-3d7f-4865-b37d-f0782f6bb772
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
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
At this point, the app runs at http://127.0.0.1:5000/
.
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
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
|
|-- ************************************************************************
The set up
- Create a FREE account on Heroku platform
- Install the Heroku CLI that match your OS: Mac, Unix or Windows
- Open a terminal window and authenticate via
heroku login
command - Clone the sources and push the project for LIVE deployment
Step 1 - Download the code from the GH repository (using
GIT
)
$ # Get the code
$ git clone https://github.com/appseed-projects/<YOUR_BUILD_ID>.git
$ cd <YOUR_BUILD_ID>
Step 2 - Connect to
HEROKU
using the console
$ # This will open a browser window - click the login button (in browser)
$ heroku login
Step 3 - Create the
HEROKU
project
$ heroku create
Step 4 - Push Sources to
HEROKU
$ git push heroku HEAD:master
Step 5 - Srt up the APP Environemnt in
HEROKU
(.env
file is ignored by the platform)
DEBUG
=TrueFLASK_APP
=run.pyFLASK_ENV
=developmentASSETS_ROOT
=/static/assets
Step 6 - Visit the app in the browser
$ $ heroku open
At this point, the APP should be up & running.
Step 7 (Optional) - Visualize
HEROKU
logs
$ heroku logs --tail
For more components, pages and priority on support, feel free to take a look at this amazing starter:
Soft UI Dashboard is a premium Bootstrap 5 Design now available for download in Flask. Made of hundred of elements, designed blocks, and fully coded pages, Soft UI Dashboard PRO is ready to help you create stunning websites and web apps.
- π Soft UI Dashboard PRO Flask - product page
- β
Enhanced UI
- more pages and components - β
Priority
on support
- β
Soft UI Dashboard Flask - Open-source starter generated by AppSeed Generator.