************ Coded in Django Framework by ME MEK ************
Features:
- Python v3.8, Django v3.1.2, Django REST framework v3.12.1
- PostgresSQL Database, Django Native ORM
- 12-Factor based settings via django-environ
- Clean code-base
- Docker support using docker-compose for development
- Productivity tip: using Makefile
- Versioning API v1, v2...
- Seed your database via django-seed
- Documenting Your API via drf-yasg
- Dockerize the app
- Travis-CI
- Test-Driven Development (TDD) of APIs
- Deployment scripts: Docker, Gunicorn / Nginx
Next Features:
- LOGGING (for prod purpose)
- Release
- Supervisor
$ # Get the code $ git clone https://github.com/MidoAhmed/django-rest-api $ cd django-rest-api $ $ # Virtualenv modules installation (Unix based systems) $ virtualenv env $ source env/bin/activate $ $ # Virtualenv modules installation (Windows based systems) $ # virtualenv env $ # .\env\Scripts\activate $ $ # Install packags $ pip install -r requirements/dev.txt $ $ # Create tables $ python manage.py makemigrations $ python manage.py migrate $ $ # Start the application (development mode) $ python manage.py runserver # default port 8000 $ $ # Start the app - custom port $ # python manage.py runserver 0.0.0.0:<your_port> $ $ # Access the web app in browser: http://127.0.0.1:8000/
Note: WORK IN PROGRESS
The project is coded using a simple and intuitive structure presented bellow:
WORK IN PROGRESS
The bootstrap flow
- WORK IN PROGRESS
The app is provided with a basic configuration to be executed in Docker
Docker execution
The application can be easily executed in a docker container. The steps:
Get the code
WORK IN PROGRESS
Start the app in Docker
WORK IN PROGRESS
Visit http://localhost:5005
in your browser. The app should be up & running.
- Django - The official website
Backend API REST & UI Views based on DJANGO - Provided by ME MEK.