Skip to content

Commit

Permalink
Release v1.0.14
Browse files Browse the repository at this point in the history
  • Loading branch information
app-generator committed May 14, 2024
1 parent bc9d58a commit 60f96b7
Show file tree
Hide file tree
Showing 3 changed files with 73 additions and 526 deletions.
101 changes: 32 additions & 69 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,87 +1,50 @@
# Change Log

## [1.0.18] 2022-08-18
### Improvements

- Auth:
- OAuth - Warn the user to provide an email
- Session-Based login is possible user OR Email
- Remove `old password` input for `change pass` option
- User profile
- Improved UX
- Added `API Explorer` tab
- List the `API_KEY` (required in API usage)
## [1.0.14] 2024-05-14
### Changes

## [1.0.17] 2022-08-17
### Fixes & Improvements
- Update Links
- Minor Improvements

- Update API (minor)
- List TOKEN_API on the user profile page
- Patch Twitter OAuth Blueprint
## [1.0.13] 2024-05-14
### Changes

## [1.0.16] 2022-08-17
### Fixes
- Update Dependencies
- Added Apps
- DataTables
- API
- Charts
- Celery
- Media Files Manager

- Patch Twitter OAuth Flow
- SIGN-IN page was always hidden
## [1.0.12] 2023-10-08
### Changes

## [1.0.15] 2022-07-28
### Fixes
- Update Dependencies

- `Users List` (Admin only view)
- Fix Users Deletion
- JS (Minor) Fixes
- Patch all JS Browser Warnings
## [1.0.11] 2023-06-09
### Changes

## [1.0.14] 2022-07-28
### Improvements & Fixes
- Bump Codebase Version
- `LIVE Reload` in Docker
- CI/CD via Render
- `render.yaml`
- DBMS silent fallback to SQLite:
- `.env` DBMS settings not good or not present
- `CDN` support

- Update password Improvements
- Change Password Improvements
- Fix JS Errors (Browser Console)

## [1.0.13] 2022-07-20
## [1.0.10] 2022-06-13
### Fixes

- Patch Docker (now includes latest evolutions)
- Starts with `SQLite`

## [1.0.12] 2022-07-20
### Improvements

- Auth Features
- Change password
- Self Account Deletion
- API via Flask-RestX
- Path: `/api/`
- Products, Sales models

## [1.0.11] 2022-07-19
### Improvements

- Added Social Login
- Github & Twitter
- Persistent Dark Mode

## [1.0.10] 2022-06-22
### Improvements

- Improve error checking on FTP IMG Upload
- Added test CMD: `flask test_ftp`
- UI is showing the status
- Added Unitary tests
- `python.exe run.py tests`
- Docker Scripts
- `elements-ac_tour.html` - fix broken template

## [1.0.9] 2022-06-15
## [1.0.9] 2022-06-13
### Improvements

- Improved Authentication
- Force strong passwords during registration
- Suspend user after 3 failed login attempts
- New Feature: `User Profiles`
- Extended User profile
- Added Superusers
- Image upload via `FTP`
- Built with [Datta Able PRO Generator](https://appseed.us/generator/datta-able-pro/)
- Timestamp: `2022-06-13 10:57`
- Improved `Auth UX`

## [1.0.8] 2022-05-30
### Fixes
Expand Down
163 changes: 41 additions & 122 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,123 +1,61 @@
# [Datta Able PRO Flask](https://appseed.us/product/datta-able-pro/flask/)

Premium **[Flask Dashboard](https://appseed.us/admin-dashboards/flask/)** generated by `AppSeed` on top of a modern design. **Datta Able PRO** is the most stylized Bootstrap Admin Template, around all other Lite/Free admin templates in the market. It comes with highly feature-rich pages and components with fully developer-centric code. Before developing Datta Able our key points were performance and design.

- 👉 [Datta Able PRO Flask](https://appseed.us/product/datta-able-pro/flask/) - `product page`
- 👉 [Flask Datta Able PRO](https://flask-datta-able-enh.appseed-srv1.com/) - `LIVE demo`
- 👉 [Complete documentation](https://docs.appseed.us/products/flask-dashboards/datta-able-pro) - `Learn how to use and update the product`

<br />

> **Basic Version**
- `Up-to-date dependencies`, active versioning
- `DB Tools`: SQLAlchemy ORM, `Flask-Migrate` (schema migrations)
- Session-Based authentication (via **flask_login**), Forms validation
- `Docker`

> **Extended Version**
- `Authentication`
- Social Login (optional) for Github & Twitter
- Automatic suspension on failed logins
- Change Password, Self Deletion
- `Users Management`
- `Extended user profile`
- Complete Users management (for `Admins`)
- Edit users, suspend/unsuspend
- `API` via Flask-RestX
- Path: `/api/`
- `Products`, `Sales` Models
- `Deployment`
- Page Compression via `Flask-Minify` (for production)

<br />
Premium **Flask Dashboard** generated by `AppSeed` op top of a modern design. **[Datta Able PRO](https://appseed.us/generator/datta-able-pro/)** Bootstrap PRO is the most stylised Bootstrap 5 Admin Template, around all other Lite/Free admin templates in the market. It comes with high feature-rich pages and components with fully developer-centric code. Before developing Datta Able our key points were performance and design.

- 👉 [Datta Able PRO Flask](https://flask-datta-pro.onrender.com) - `LIVE demo`
- 👉 [Datta Able PRO Flask](https://appseed.us/product/datta-able-pro/flask/) - `Product Page`

## **Features**

- `Up-to-date dependencies`
- Apps
- DataTables
- API
- Charts
- Media Files Manager
- `Database`: `SQLite`, MySql
- Silent fallback to `SQLite`
- `DB Tools`: SQLAlchemy ORM, `Flask-Migrate`
- `Authentication`, Session Based
- `Docker`, Page Compression via `Flask-Minify`
- `CI/CD` flow via `Render`


![Datta Able PRO - Full-Stack Starter generated by AppSeed.](https://user-images.githubusercontent.com/51070104/170474361-a58da82b-fff9-4a59-81a8-7ab99f478f48.png)

<br />

## Start the app in Docker
## Start in `Docker`

> **Step 1** - Download the [code](https://appseed.us/product/datta-able-pro/flask/) and unzip the sources (requires a `purchase`).
> 👉 Unzip sources or clone the private repository (requires a [purchase](https://appseed.us/product/datta-able-pro/flask/))
```bash
$ # Get the code
$ unzip flask-datta-able-pro.zip
$ cd flask-datta-able-pro
// OR
$ git clone https://github.com/app-generator/priv-flask-datta-able-pro.git
$ cd priv-flask-datta-able-pro
```

<br />

> **Step 2** - Edit `.env` and set `DEBUG=True`. This will activate the `SQLite` persistance.
```txt
DEBUG=True
```

<br />

> **Step 3** - Start the APP in `Docker`
> Start the APP in `Docker`
```bash
# Optional (kill all existing containers)
$ docker container kill $(docker ps -q) ; docker container rm $(docker ps -a -q) ; docker network prune -f
# Start the APP
$ docker-compose up --build
```

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

<br />


## ✨ Set up the MySql Database

**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` database
- `Create a new user` and assign full privilegies (read/write)

<br />
Visit `http://localhost:5085` in your browser. The app should be up & running.

> **Step 2** - Edit the `.env` to match your MySql DB credentials. Make sure `DB_ENGINE` is set to `mysql`.
- Default User: `test` / `test@appseed.us` / `pass` (the password)

- `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`
Authenticated users can access all apps and pages.

<br />

Here is a sample:

```txt
# .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
```

<br />

## ✨ How to use it

> Download the [code](https://appseed.us/product/datta-able-pro/flask/) and unzip the sources (requires a `purchase`).
```bash
$ # Get the code
$ unzip flask-datta-able-pro.zip
$ cd flask-datta-able-pro
```

<br />
## `Manual Build`

### 👉 Set Up for `Unix`, `MacOS`

Expand All @@ -126,7 +64,7 @@ $ cd flask-datta-able-pro
```bash
$ virtualenv env
$ source env/bin/activate
$ pip3 install -r requirements.txt
$ pip install -r requirements.txt
```

<br />
Expand Down Expand Up @@ -198,46 +136,29 @@ By default, the app redirects guest users to authenticate. In order to access th

<br />

## ✨ Code-base structure
## ✅ Codebase

The project is coded using blueprints, app factory pattern, dual configuration profile (development and production) and an intuitive structure presented bellow:
The project has a simple, intuitive structure presented bellow:

```bash
< 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)
| |-- charts/ # Showcase the sales information in Charts
| |-- tables/ # Showcase the sales information in dataTables
| |
| |-- 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
| |
| | |-- pages/ # UI Kit Pages
| |
| config.py # Set up the app
| __init__.py # Initialize the app
|
Expand All @@ -249,7 +170,5 @@ The project is coded using blueprints, app factory pattern, dual configuration p
|-- ************************************************************************
```

<br />

---
[Datta Able PRO Flask](https://appseed.us/product/datta-able-pro/flask/) - Starter generated by **[AppSeed Generator](https://appseed.us/generator/)**.
[Datta Able PRO](https://appseed.us/generator/datta-able-pro/) Flask - Starter provided by **[AppSeed](https://appseed.us)**.
Loading

0 comments on commit 60f96b7

Please sign in to comment.