Awesome Django 
A curated list of awesome things related to Django. Maintained by Will Vincent and Jeff Triplett.
Please consider supporting Django by making a donation to the
Django
Software Foundation, sponsoring via
GitHub
Sponsors, or buying
official
merchandise.
Contents
Third-Party Packages
For a complete listing of all available packages, see Django Packages
Admin
- django-hijack
- Admins can log in and work on behalf of other users without having to
know their credentials.
- django-import-export
- Django application and library for importing and exporting data with
admin integration.
- django-admin-inline-paginator-plus
- A simple way to paginate your inline in Django admin
- django-loginas
- “Log in as user” for the Django admin.
- impostor -
Impostor is a Django application which allows staff members to log in as
a different user by using their own username and password.
- django-impersonate
- Allow superusers to “impersonate” other non-superuser accounts.
- django-admin-env-notice
- Visually distinguish environments in Django Admin, for example:
development, staging,
production.
- django-related-admin
- A helper library that allows you to write list_displays across foreign
key relationships.
- django-admin-sortable2
- Generic drag-and-drop ordering for objects in the Django admin
interface.
- django-admin-collaborator
- Add real-time user presence, edit locks, and chat to Django admin with
Channels and Redis.
Admin Themes
APIs
Async
Caching
- django-cachalot -
Caches your Django ORM queries and automatically invalidates them.
- django-cacheops - A
slick ORM cache with automatic granular event-driven invalidation.
Commands
Configuration
- confidential
- Manage configs and secrets (with CLI support).
- django-environ -
Environment variables.
- django-split-settings
- Organize multiple settings files.
- django-constance
- A Django app for storing dynamic settings in pluggable backends (Redis
and Django model backend built in) with an integration with the Django
admin app.
- django-configurations
- eases Django project configuration by relying on the composability of
Python classes and following principles of the twelve-factor app.
- dynaconf - Dynaconf
loads django settings from multiple sources (multiple file formats, env
vars, redis, vault, etcd), manages secrets, and allows for different
merging strategies all following the twelve-factor app.
- django-extra-settings
- Config and manage typed extra settings using just the django
admin.
- django-removals
- Detect deprecated settings variables via convenient system checks
- environs -
Simplified environment variable parsing that comes with a Django
helper that installs additional packages.
- django-classy-settings
- Class-based settings to keep your environments in order, with easy
access to typed environment variables.
- django-content-settings
- Easily create and manage editable typed variables directly from the
Django admin panel.
Content Management Systems
Database Connectors
- djongo - Django
and MongoDB database connector.
ECommerce
- saleor -
GraphQL-based Django E-Commerce Platform.
- django-shop -
Django-based shop system.
- shuup - Django
E-Commerce Platform.
- django-oscar -
Domain-driven e-commerce for Django.
Editors
Files/Images
- django-cleanup
- Zero configuration file/image removal for local and remote files.
- django-imagekit
- Django app for processing images for thumbnail, black-and-white and
sizes.
- django-pictures
- Responsive cross-browser image library using modern codes like AVIF
& WebP.
- sorl-thumbnail -
Thumbnails for Django.
Full-stack frameworks
- Django-Bridge
- The simple way to build React frontends for Django applications.
- ReactPy -
It’s React, but in Python. Insert dynamically rendered Python into
Django templates using the ReactPy-Django
module.
- Reactor -
Phoenix LiveView, but for Django.
- Sockpuppet - Build
reactive applications with the Django tooling you already know and
love.
- Unicorn - A reactive
component framework that progressively enhances a normal Django view,
makes AJAX calls in the background, and dynamically updates the
DOM.
General
- django-data-browser
- Interactive, user-friendly database explorer.
- django-filter
- Powerful filters based on Django QuerySets.
- django-sql-explorer
- Share data via SQL queries.
- django-tables2 -
HTML tables with pagination/sorting.
- django-maintenance-mode
- Shows a 503 error page when maintenance-mode is on.
- django-freeze -
Convert your dynamic django site to a static one with one line of
code.
- django-nh3 -
Django integration with for nh3 and is an alternative for
django-bleach.
- Weblate -
Weblate is a copylefted libre software web-based continuous localization
system, used by over 2500 libre projects and companies in more than 165
countries.
- Django-Classy-Doc
- Document your own code in the style of CCBV and CDRF.
- iommi - Toolkit
for development of CRUD applications without writing HTML or
JavaScript.
Internationalisation (i18n)
- django-localflavor
- A collection of functionality that is useful for particular countries
or cultures. Previously a part of the Django core.
- django-modeltrans
- Translate Django model fields in a JSONField.
- django-modeltranslations
- Translates Django models using a registration approach.
- django-rosetta -
Rosetta provides a UI to read and write your project’s gettext catalogs
within the Django Admin.
Logging
- django-guid -
Inject a GUID (Correlation-ID) into every log message in a Django
request.
- DRF-API-Logger
- An API Logger for your Django Rest Framework project.
Monitoring
- django-prometheus
- Export Django monitoring metrics to Prometheus.
- django-mixin -
Monitoring mixin for Django-prometheus. A set of Grafana dashboards and
Prometheus rules for Django.
Mailing
- django-pony-express
- Class-based emails including a test suite for Django.
- django-anymail -
Django email backends and webhooks for Amazon SES, Brevo (Sendinblue),
MailerSend, Mailgun, Mailjet, Postmark, Postal, Resend, SendGrid,
SparkPost, Unisender Go and more.
Model Fields
Models
- django-perf-rec - Keep
detailed records of the performance of your Django code.
- New Relic - Time
middleware, views, and SQL queries.
- Scout - Time
middleware, template rendering, and SQL queries with automatic N+1
detection.
- django-query-profiler
- Django query profiler to help resolve N+1 queries.
- django-silk -
Live profiling and inspection of HTTP requests and database
queries.
- py-spy - Sampling
profiler for Python programs.
- pyinstrument -
Call stack profiler for Python, Django, Flask, FastAPI.
- django-zeal -
Detect N+1 queries with user-friendly error messages
Permissions
Search
Search Engine Optimisation
Security
Static Assets
Task Queues
- beatserver - A
periodic task scheduler for Django.
- django-q2 - A
multiprocessing distributed task queue for Django.
- django-rq -
Integration for Redis Queue.
- django-redis
- Full-featured Redis cache backend for Django.
- celery - Robust and
broker-agnostic task queues for bigger, performance-focused
projects.
- flower - Flower is a
web-based tool for monitoring and administrating Celery clusters.
- django-celery-beat
- A periodic task scheduler with database configured by Django’s Admin
Panel.
- celery-exporter
- Prometheus & Grafana monitoring of Celery tasks.
- django-dramatiq -
Task processing library with a focus on simplicity, reliability, and
performance.
- django-celery-results
- Celery result backend with Django.
- django-tasks -
A reference implementation and backport of background workers and tasks
in Django, based on DEP
14.
Templates
- django-components
- A way to create simple reusable template components in Django.
- django-template-partials
- Reusable named inline partials for the Django Template Language.
- slippers - Build reusable
components in Django without writing a single line of Python.
- JinjaX - Super components
powers for your Jinja templates.
- django-cotton - Goodbye
{% raw %}{%{% endraw %} extends, block, include {% raw %}%}{% endraw %},
Hello <c-component />. Bringing modern UI composition
to Django.
- htpy - htpy is a library that makes
writing HTML in plain Python fun and efficient, without a template
language.
Testing
URLs
- dj-database-url -
Database URLs.
- urlman - A
nicer way to do URLs for Django models.
- django-robots -
This is a basic Django application to manage robots.txt files following
the robots exclusion protocol, complementing the Django Sitemap contrib
app.
- django-redirects
- Redirects as they should be, with full control.
Users
- django-allauth -
Improved user registration including social auth.
- django-allauth-ui
- Better-looking templates for django-allauth.
- django-improved-user
- A custom Django user that authenticates via email. Follows identity
and authentication best practices.
- django-organizations
- Multi-user accounts for Django projects.
- django-cas-ng
- Django-cas-ng is Django CAS (Central Authentication Service)
1.0/2.0/3.0 client library to support SSO (Single Sign On) and Single
Logout (SLO).
- django-guest-user
- Allow visitors to use your site like a regular user and register
later.
Views
Standalone tools that help in developing Django projects.
Templates
- curlylint - Experimental
HTML templates linting for Jinja, Nunjucks, Django templates, Twig,
Liquid.
- djhtml - Django/Jinja
template indenter.
- djlint - Lint & Format
HTML Templates.
Python Packages
A short list of Python packages that work well with
Django.
Resources
Official Resources
Educational
- Django Girls
Tutorial - Use function-based views to build a blog app.
- LearnDjango - Tutorials and
premium courses on Django and Django REST Framework.
- Adam Johnson - Adam is on the
Technical Board of Django and regularly writes tutorials.
- Photon Designer -
Django tutorials - Django tutorials by Tom Dekan on how to build
Django apps simply - from how to build an instant messenger with Django,
add instant search, to using Google Drive as a database. Updated
regularly.
- TestDriven - Multiple
Django-specific tutorials on topics like Docker, payments, and
more.
- Classy Class-Based Views -
Detailed descriptions of methods/properties/attributes for each generic
class-based view.
- Classy
Django Forms - Detailed descriptions of
methods/properties/attributes for each form class.
- Classy Django REST Framework -
Detailed descriptions with methods/attributes for DRF class-based views
and serializers.
- Simple is Better
than Complex - Regularly updated website with many tutorials and
tips on Django.
- Full Stack
Python’s Django Page - Explanation of Django philosophy and links to
other resources and tutorials.
- RealPython -
Many high-quality tutorials on Django.
- Mozilla
Tutorial - Create a lending library app.
- Matt Layman - Regular
tutorials and deep-dives on Django topics.
- Django
Styleguide - Styleguide for Django with best practices and
examples.
- Django
Template Tags and Filters - Additional docs on Django’s 57 built-in
template filters and 27 template tags.
- Django for Everybody - A
complete course for webdev beginners focused on Django.
- CS50W - Harvard’s
University introductory course to web development, it explains Django as
backend framework.
Conferences
Job Boards
- Django News Jobs - A
Django job board that also aggregates other job boards.
- Django Gigs - This platform
caters specifically to freelance and full-time Django developers.
- Django Jobs - Django jobs
posting for hiring Django Python developers.
- Python.org Job Boards -
While not exclusively for Django, this job board is hosted by the
official Python website and features a range of Python and
Django-related job opportunities.
Newsletters
- Django News - Weekly
newsletter on announcements, articles, projects, and talks.
Podcasts
- Django Chat - A weekly podcast
from William Vincent and Django Fellow Carlton Gibson with discussions
of core Django concepts and regular guests.
- Django Riffs - A new podcast
from Matt Layman.
- Running in
Production - Focused on tech stacks with many episodes specifically
on Django.
- TalkPython - The leading Python
podcast with several episodes on Django.
- Podcast Init - A
popular Python podcast that features Django guests on occasion.
- Django Brew - A fun,
caffeine-powered podcast about the Django web framework by Adam Hill and
Sangeeta Jadoonanan!
Videos
- DjangoTV - Your source for Django
conference videos and tutorials.
- PyVideo - PyVideo is an index of
Python related media.
Books
For a complete listing of in-print books, check out DjangoBook.com.
Django 5 - Django for APIs,
Fifth Edition - Boost Your Django DX -
Django
5 By Example - Django in
Action - Django for
Beginners, Fifth Edition
Hosting
IaaS
(Infrastructure-as-a-Service)
Projects
Boilerplate
- cookiecutter-django
- A full-bodied starter project, highly customizable.
- django-base-site
- A Django site with many common third-party packages
pre-installed.
- djangox -
Batteries included starter project for Pip, Pipenv, or Docker.
- DRFx - A DRF
starter with user auth, Pipenv, and other goodies.
- django-project-template
- A deliberately basic project that has multiple staging environments
and Heroku deployment config.
- django-docker-template
- Dockerized Django with Postgres, Gunicorn, and Traefik (with
auto-renew Let’s Encrypt).
- django-startproject
- Django start project template with batteries.
- wemake-django-template
- Bleeding-edge Django template focused on code quality and
security.
- django-webpack-starter
- Django Webpack starter template for using Webpack 4.
- sos-django-template
- Django starter template with separate dev and production
settings.
- django-docker-heroku-template
- A template with Docker, GitHub Actions, and Heroku set up for
dev/test/prod, plus various other best practices.
- cookiecutter-vue-django
- Django + Vue starter project fusing Vue SFCs & Django
Templates.
- launchr - Launchr is
a specialized Django starter template for SaaS web apps.
- sidewinder - A
Django starter kit that focuses on good defaults, developer experience,
and deployment.
- Falco -
Enhance your Django developer experience: CLI and Guides for the Modern
Django Developer.
- Blaze.horse
- A Django starter kit with reins and saddle included!
Open Source Projects
Django REST Framework
The most popular way to build web APIs with Django.
DRF Resources
DRF Tutorials
Wagtail
Wagtail, the powerful CMS for modern websites.
Wagtail Resources
django.md
Github