#Django React full-stack
Full-Stack
project generated by Henry Udezuligbo.
The backend logic is provided by a simple, easy-to-extend
DJANGO API Server that manages the Authentication flow (login, registration, logout) using JSON Web Tokens
(JWT).
The React Design is crafted on top of MUI
Library.
M-UI
based design- Modern aesthetics UI design - Designed by Henry Udezuligbo
- React, Redux, Redux-persist
Tests
(compatibility matrix)
NodeJS | NPM | YARN |
---|---|---|
v14.0.0 |
✅ | ✅ |
v16.0.0 |
✅ | ✅ |
v18.0.0 |
❌ | ❌ |
- Stack: :
Django
/DRF
/ SQLite Up-to-date dependencies
- DB Layer: Django Native
ORM
,SQLite
persistence - Auth: JWT tokens managed via
PyJWT
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
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).
Step 1 - Change the directory to
api-server-django
$ cd api-server-django
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 database
$ python manage.py makemigrations
$ python manage.py migrate
Step 4 - Start the API server (development mode)
$ python manage.py runserver 5000
Use the API via POSTMAN
or Swagger Dashboard
at localhost:5000
.
Step 1 - Change the directory to
api-server-django
$ cd api-server-django
Step 2 - Start API using
docker-compose
command
$ docker-compose up --build