Skip to content

Cookiecutter template for a REST API backend powered by Django

License

Notifications You must be signed in to change notification settings

viper-development/django-backend-cookiecutter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

django-backend cookiecutter template

Built with Nix

Features

  • Uses Python 3.8, Django 3.1, Django REST Framework 3.12.
  • Python dependencies are managed with Poetry package manager.
    • Pins dependencies with poetry.lock, ensures reproducibility!
  • Built with the Nix package manager.
    • Developers, No need to learn Nix! You can use the Python toolset you're already familiar with.
    • Ensures end-to-end reproducibility, "it works on my computer" is no longer a valid excuse.
  • Small Docker image, only 65 megabytes compressed!
    • 233 megabytes uncompressed, still comparatively small for a Django app with all of its dependencies!
  • Out of the box support for Amazon S3 (and compatibles) for media storage.
    • Don't use Amazon S3? No worries, this project uses django-storages which supports other object storage backends too!
  • Static files served by the backend itself, thanks to whitenoise.
    • Why setup a separate bucket solely for static files when whitenoise is good enough.
  • Authentication, registration, verification endpoints preconfigured, thanks to django-rest-authemail.
  • Scaffold client libraries quickly with OpenAPI 3.0 schema generation, thanks to drf-spectacular