Skip to main content

Flask React Datta Able

Open-source Full Stack seed project built in React and Flask on top of Datta Able Dashboard

Open-source full-stack seed project coded in React and Flask on top of a modern design from CodedThemes. The React / Flask codebase is already configured with an SQLite database, API, and JWT token-based authentication flow.

Django React Datta Able


Product features

The product expects a running API backend that exposes an interface for login/logout and register actions. By default, the guest users are redirected to the login page. Once the user is authenticated using an existing account or the new one, all private pages are accessible.


React Datta Able

  • M-UI based design
  • Modern aesthetics UI design - Designed by CodedThemes
  • React, Redux, Redux-persist

Tests (compatibility matrix using Ubuntu 18 LTS as reference)

NodeJSNPMYARN
v14.0.0
v16.0.0
v18.0.0

Flask API Features

  • Stack: Flask / Flask-RestX / SQLite
  • DB Layer: SqlAlchemyORM, SQLite persistence
  • Auth: JWT tokens managed via Flask-jwt_extended
  • API Definition - the unified API structure implemented by this server

✨ How to use it

Being a full-stack product, the backend and the frontend should be compiled and started separately. Before starting to compile the product, make sure you have the following tools installed in the environment:

  • NodeJS - version 14.x or higher
  • GIT - used to clone tjhe sources from Github
  • Python3 - used in many tools

👉 Start the Frontend

Step 1 - Once the project is downloaded, change the directory to react-ui.

$ cd react-ui

Step 2 - Install dependencies via NPM or yarn

$ npm i
// OR
$ yarn

Step 3 - Start in development mode

$ npm run start 
// OR
$ yarn start

At this point, the app is available in the browser localhost:3000 (the default address).


👉 Start the Backend Server

Step 1 - Change the directory to api-server-flask

$ cd api-server-flask

Step 2 - Install dependencies using a virtual environment

$ # Virtualenv modules installation (Unix based systems)
$ virtualenv env
$ source env/bin/activate
$
$ # Virtualenv modules installation (Windows based systems)
$ # virtualenv env
$ # .\env\Scripts\activate
$
$ pip install -r requirements.txt

Step 3 - Setup the Flask environment

$ export FLASK_APP=run.py
$ export FLASK_ENV=development
// OR
$ (Windows CMD) set FLASK_APP=run.py
$ (Windows CMD) set FLASK_ENV=development
$
$ (Powershell) $env:FLASK_APP = ".\run.py"
$ (Powershell) $env:FLASK_ENV = "development"

Step 4 - Start the API server (development mode)

$ flask run

Use the API via POSTMAN or Swagger Dashboard at localhost:5000.


👉 Codebase Structure

< ROOT  >
|
api-server-flask/
├── api
│ ├── config.py
│ ├── __init__.py
│ ├── models.py
│ └── routes.py
├── requirements.txt
├── run.py
└── tests.py

Resources

Flask React Datta PRO