Django Starter Template

screenshot of Django Starter Template
django

Django 5+, Django Rest Framework, Redis/Celery and more

Overview

The Django Starter Template is a comprehensive and user-friendly starting point for new projects. This template comes with pre-configured features to save time and effort during project setup.

Features

  • Django 4+: The template will be updated to Django 5 when django-celery-beat supports it.
  • Custom User Model & Django Rest Framework: Includes a custom user model and Django Rest Framework for creating APIs.
  • JWT and Token Authentication: Uses dj-rest-auth for Token and JWT authentication.
  • Auto Documentation: Includes drf-yasg for Swagger and Redoc API auto documentation.
  • Django Filters: Easily add filters to views and APIs with django-filter.
  • Asynchronous Tasks & Caching: Includes Redis, Celery, django-celery-beat, django-celery-results, and django-redis for task scheduling and caching.
  • Asynchronous Emails: Uses django-celery-email for sending asynchronous emails.
  • Automatic File Cleanup: Includes django-cleanup to automatically delete uploaded files after a database delete.
  • Data Seeding: Ability to seed models with django-seed.
  • Debugging & Extensions: Includes Django debug toolbar and Django extensions for debugging and enhancing.
  • Notebook Support: Supports Django/Jupyter Notebooks.
  • Error Tracking: Includes sentry-sdk for error tracking.
  • Database: Uses Postgresql as the database.
  • Code Formatting & Testing: VSCode is configured to use Black for code formatting, pytest for testing, and flake8 for linting.

Summary

The Django Starter Template provides a convenient starting point for Django projects. It includes essential features such as Django 4+, custom user model, token authentication, and API documentation. The template also offers various tools for asynchronous tasks, caching, email handling, debugging, and error tracking. With support for Jupyter notebooks and easy installation steps, the Django Starter Template is an efficient choice for developers starting new projects.

django
Django

Django is a high-level Python web framework that encourages rapid development and clean, pragmatic design. It follows the model-view-controller (MVC) architectural pattern, providing an extensive set of built-in tools and conventions to streamline the creation of robust and scalable web applications.

template
Templates & Themes

A template or theme refers to a pre-designed layout or structure that provides a basic framework for building a specific type of application or website. It typically includes good design, placeholder content and functional features, allowing developers to customize and fill in the details according to their specific needs.