Skip to content

Commit 0ba627b

Browse files
author
App Generator
committed
Release v1.0.4 - Bump Codebase Version & Fixes
1 parent 00ca884 commit 0ba627b

File tree

3 files changed

+140
-28
lines changed

3 files changed

+140
-28
lines changed

CHANGELOG.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,19 @@
11
# Change Log
22

3+
## [1.0.4] 2021-11-10
4+
### Improvements
5+
6+
- Bump Codebase: [Flask Dashboard](https://github.com/app-generator/boilerplate-code-flask-dashboard) v2.0.0
7+
- Dependencies update (all packages)
8+
- Flask==2.0.1 (latest stable version)
9+
- Better Code formatting
10+
- Improved Files organization
11+
- Optimize imports
12+
- Docker Scripts Update
13+
- Gulp Tooling (SASS Compilation)
14+
- Fixes:
15+
- Import error caused by WTForms
16+
317
## [1.0.3] 2021-05-16
418
### Dependencies Update
519

README.md

Lines changed: 125 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,8 @@
88

99
> Free product - **Flask Dashboard** starter project - Features:
1010
11+
- Up-to-date [dependencies](./requirements.txt): **Flask 2.0.1**
12+
- [SCSS compilation](#recompile-css) via **Gulp**
1113
- UI Kit: **Argon Dashboard** (Free Version) provided by **[Creative-Tim](https://www.creative-tim.com/)**
1214
- Flask Codebase - provided by **[AppSeed](https://appseed.us/)**
1315
- SQLite, PostgreSQL, SQLAlchemy ORM
@@ -22,6 +24,7 @@
2224
## Table of Contents
2325

2426
* [Demo](#demo)
27+
* [Docker Support](#docker-support)
2528
* [Quick Start](#quick-start)
2629
* [Documentation](#documentation)
2730
* [File Structure](#file-structure)
@@ -42,6 +45,27 @@
4245

4346
<br />
4447

48+
## Docker Support
49+
50+
> Get the code
51+
52+
```bash
53+
$ git clone https://github.com/app-generator/black-dashboard-flask.git
54+
$ cd black-dashboard-flask
55+
```
56+
57+
> Start the app in Docker
58+
59+
```bash
60+
$ docker-compose pull # download dependencies
61+
$ docker-compose build # local set up
62+
$ docker-compose up -d # start the app
63+
```
64+
65+
Visit `http://localhost:85` in your browser. The app should be up & running.
66+
67+
<br />
68+
4569
## Quick start
4670

4771
> UNZIP the sources or clone the private repository. After getting the code, open a terminal and navigate to the working directory, with product source code.
@@ -98,41 +122,115 @@ Within the download you'll find the following directories and files:
98122
```bash
99123
< PROJECT ROOT >
100124
|
101-
|-- app/
102-
| |-- home/ # Home Blueprint - serve app pages (private area)
103-
| |-- base/ # Base Blueprint - handles the authentication
104-
| |-- static/
105-
| | |-- <css, JS, images> # CSS files, Javascripts files
106-
| |
107-
| |-- templates/ # Templates used to render pages
108-
| |
109-
| |-- includes/ #
110-
| | |-- navigation.html # Top menu component
111-
| | |-- sidebar.html # Sidebar component
112-
| | |-- footer.html # App Footer
113-
| | |-- scripts.html # Scripts common to all pages
114-
| |
115-
| |-- layouts/ # Master pages
116-
| | |-- base-fullscreen.html # Used by Authentication pages
117-
| | |-- base.html # Used by common pages
118-
| |
119-
| |-- accounts/ # Authentication pages
120-
| |-- login.html # Login page
121-
| |-- register.html # Registration page
125+
|-- apps/
126+
| |
127+
| |-- home/ # A simple app that serve HTML files
128+
| | |-- routes.py # Define app routes
129+
| |
130+
| |-- authentication/ # Handles auth routes (login and register)
131+
| | |-- routes.py # Define authentication routes
132+
| | |-- models.py # Defines models
133+
| | |-- forms.py # Define auth forms (login and register)
134+
| |
135+
| |-- static/
136+
| | |-- <css, JS, images> # CSS files, Javascripts files
137+
| |
138+
| |-- templates/ # Templates used to render pages
139+
| | |-- includes/ # HTML chunks and components
140+
| | | |-- navigation.html # Top menu component
141+
| | | |-- sidebar.html # Sidebar component
142+
| | | |-- footer.html # App Footer
143+
| | | |-- scripts.html # Scripts common to all pages
144+
| | |
145+
| | |-- layouts/ # Master pages
146+
| | | |-- base-fullscreen.html # Used by Authentication pages
147+
| | | |-- base.html # Used by common pages
148+
| | |
149+
| | |-- accounts/ # Authentication pages
150+
| | | |-- login.html # Login page
151+
| | | |-- register.html # Register page
152+
| | |
153+
| | |-- home/ # UI Kit Pages
154+
| | |-- index.html # Index page
155+
| | |-- 404-page.html # 404 page
156+
| | |-- *.html # All other pages
157+
| |
158+
| config.py # Set up the app
159+
| __init__.py # Initialize the app
160+
|
161+
|-- requirements.txt # Development modules - SQLite storage
162+
|-- requirements-mysql.txt # Production modules - Mysql DMBS
163+
|-- requirements-pqsql.txt # Production modules - PostgreSql DMBS
122164
|
123-
|-- requirements.txt # Development modules - SQLite storage
124-
|-- requirements-mysql.txt # Production modules - Mysql DMBS
125-
|-- requirements-pqsql.txt # Production modules - PostgreSql DMBS
165+
|-- Dockerfile # Deployment
166+
|-- docker-compose.yml # Deployment
167+
|-- gunicorn-cfg.py # Deployment
168+
|-- nginx # Deployment
169+
| |-- appseed-app.conf # Deployment
126170
|
127-
|-- .env # Inject Configuration via Environment
128-
|-- config.py # Set up the app
129-
|-- run.py # Start the app - WSGI gateway
171+
|-- .env # Inject Configuration via Environment
172+
|-- run.py # Start the app - WSGI gateway
130173
|
131174
|-- ************************************************************************
132175
```
133176

134177
<br />
135178

179+
> The bootstrap flow
180+
181+
- `run.py` loads the `.env` file
182+
- Initialize the app using the specified profile: *Debug* or *Production*
183+
- If env.DEBUG is set to *True* the SQLite storage is used
184+
- If env.DEBUG is set to *False* the specified DB driver is used (MySql, PostgreSQL)
185+
- Call the app factory method `create_app` defined in app/__init__.py
186+
- Redirect the guest users to Login page
187+
- Unlock the pages served by *home* blueprint for authenticated users
188+
189+
<br />
190+
191+
## Recompile CSS
192+
193+
To recompile SCSS files, follow this setup:
194+
195+
<br />
196+
197+
**Step #1** - Install tools
198+
199+
- [NodeJS](https://nodejs.org/en/) 12.x or higher
200+
- [Gulp](https://gulpjs.com/) - globally
201+
- `npm install -g gulp-cli`
202+
- [Yarn](https://yarnpkg.com/) (optional)
203+
204+
<br />
205+
206+
**Step #2** - Change the working directory to `assets` folder
207+
208+
```bash
209+
$ cd apps/static/assets
210+
```
211+
212+
<br />
213+
214+
**Step #3** - Install modules (this will create a classic `node_modules` directory)
215+
216+
```bash
217+
$ npm install
218+
// OR
219+
$ yarn
220+
```
221+
222+
<br />
223+
224+
**Step #4** - Edit & Recompile SCSS files
225+
226+
```bash
227+
$ gulp scss
228+
```
229+
230+
The generated file is saved in `static/assets/css` directory.
231+
232+
<br />
233+
136234
## Browser Support
137235

138236
At present, we officially aim to support the last two versions of the following browsers:

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "argon-dashboard-flask",
33
"mastertemplate": "boilerplate-code-django-dashboard",
4-
"version": "1.0.3",
4+
"version": "1.0.4",
55
"description": "Template project - Django Boilerplate Code ",
66
"scripts": {},
77
"repository": {

0 commit comments

Comments
 (0)