tarsil/cookiecutter-django

Cookiecutter Django + PostGres + Docker + DramatiQ

async
asyncio
django
djangorestframework
dramatiq
python
python3

Announcement

After almost 10 years maintining this cookiecutter and with joy doing it so, it's now the time to retire it.

The painful reason behind it has nothing toon with Django but bigger projects came out since its inception like Dymmond and my focus has shifted towards it and my time became constrained.

I'm also the creator of:

And many others that require special dedicated attention and maintenance.

I would personally invite you to join me there and help growing them.

I also personally thank you for the support and for using this great cookiecutter that was also my first biggest open source contribution back in the day.

Cookiecutter Django with PostGres + Docker + DramatiQ and optional APScheduler

CI

This is a cookiecutter application that aims to help people speeding up the development process. We use django-guardian for user permissions if not using external services (Auth0, Google...) as we see it fit and easy to use as well as simple to manipulate complex object permissions.

Table of Contents


Introduction

Every time a new django project needs to be set, a lot of settings and configurations need to be also set and this cookiecutter offers a lot of boilerplating including:

  1. Login
  2. Task Manager with Dramatiq
  3. Django Rest Framework
  4. Redis
  5. RabbitMQ
  6. PGBouncer for database accesses
  7. django-guardian
  8. MongoDB as Optional

All of this using docker.

Requirements

To use this cookiecutter you should have at least.

  1. Docker
  2. Python 3.8
  3. Any virtual environment at your choice

Cookiecutter

  1. Cookiecutter - More details how to use and install here

Task Manager

This project implements dramatiq

The project also contains inside the development/settings.py a DRAMATIQ_BROKER specially designed for developement. For users used to CELERY_TASK_ALWAYS_EAGER=True, this broker has a similar behaviour. Special thanks to @dnmellen for providing an alternative.

Install the template

  1. cookiecutter https://github.com/tarsil/cookiecutter-django and follow the instructions. When giving a name to your project, avoid dashes by using underscores instead.
Stars
23
100.00% more than last month
Forks
14
Open Issues
1