It is a beautiful Django image simple to configure, run and deploy, it was made with a lot of love and dedicated for humans who love django and simple things.
this project contains the next libraries
- Python 3.8.10
- Django==3.2
- django-admin-interface
- Channels
- Celery
- django-celery-beat
- django-celery-results
- django-cors-headers
- django-environ
- django-extensions
- drf-yasg (Swagger)
- djangorestframework
- djangorestframework-gis
- django-leaflet
- django-map-widgets
- psycopg2
- Redis
- Pillow
- django-storages
- boto
- botocore
- s3transfer
and more pretty stuff like
- Docker compose
- Daphne
- UWSGI (no gunicorn)
- Postgis as Database
- Geo Django
- Leaflet and Google Maps
- Django Admin Themes
- Celery Worker and Celery Beat
- Nginx with django static files support
- Static files working fine !
- AWS S3 Storage
- Natural structure, like you weren't using docker
- Production deploy steps click here
Django Rest Framework Swagger
the project contains its own auth backend with register, login and reset password
Each endpoint contains its own serializer and swagger collection
if you want to disable the register and the confirmation after register you have to go to setup in the admin
Go to main and then go to setup
I'll disabled the register for now
Then if I try to register in the register endpoint this gonna be the result
Django Google Maps Widget
Django Leaflet
Django Admin custom themes by django-admin-interface
Custom Commands
to use the custom commands just give permissions
Command to collect Statics
chmod +x run_collect_static.sh
Command to make migrations and migrate
chmod +x run_migrate.sh
Command to create super user
chmod +x run_create_user.sh
Command to load django admin themes
chmod +x run_theme.sh
Simple and beautiful structure
to run the image follow the next instructions, just for local environment
cp env_template .env
docker compose build
docker compose up -d
you can create migrations and migrate the new models changes using the custom commands
this command just run migrate command
docker compose exec backend python3 manage.py migrate
this command just run makemigrations and migrate commands
./run_migrate.sh
docker compose restart beat
command
docker compose exec backend python3 manage.py createsuperuser
sh file
./run_create_user.sh
this command just works in local doesn't work in production
docker compose exec backend python3 manage.py collectstatic
this command works in local and production
sh file
./run_collect_static.sh
./run_theme.sh
Pycharm Support first, we need to setup the common stuff to active the autocomplete adding the Django Support choosing the manage.py and settings.py files location.
now we need add the python interpreter what live inside the docker container to the project
Go to preferences and to click in Interpreter then in Project Interpreter and press add
now, do click in Docker, select the image what contains the project name, then write python3 and press ok
now we have configured the interpreter what lives inside our Docker Container in our project
Please, DON'T UPDATE THE DEPENDENCIES ! unless necessary
if you wanna deploy this project in production, go to here
Thanks for using my project, if you need something else, feel you free to contact me ioswxd@gmail.com