tarsil / cookiecutter-django

Cookiecutter Django + PostGres + Docker + DramatiQ

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

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.

About

Cookiecutter Django + PostGres + Docker + DramatiQ

License:MIT License


Languages

Language:Python 86.6%Language:HTML 5.7%Language:Dockerfile 4.1%Language:Makefile 2.8%Language:Shell 0.8%Language:CSS 0.1%