1237 lines
53 KiB
HTML
1237 lines
53 KiB
HTML
<h1 id="awesome-django-awesome">Awesome Django <a
|
||
href="https://github.com/sindresorhus/awesome"><img
|
||
src="https://awesome.re/badge-flat.svg" alt="Awesome" /></a></h1>
|
||
<blockquote>
|
||
<p>A curated list of awesome things related to Django. Maintained by <a
|
||
href="https://github.com/wsvincent">Will Vincent</a> and <a
|
||
href="https://github.com/jefftriplett">Jeff Triplett</a>.</p>
|
||
</blockquote>
|
||
<p><br></p>
|
||
<div data-align="center">
|
||
<p><picture>
|
||
<source media="(prefers-color-scheme: dark)" srcset="./assets/django-logo-negative.svg">
|
||
<img alt="Dark and Light mode version of the Django logo" src="./assets/django-logo-positive.svg">
|
||
</picture></p>
|
||
</div>
|
||
<p><br></p>
|
||
<p>Please consider supporting Django by making a donation to the
|
||
<a rel="sponsored" href="https://www.djangoproject.com/fundraising/">Django
|
||
Software Foundation</a>, sponsoring via
|
||
<a rel="sponsored" href="https://github.com/sponsors/django">GitHub
|
||
Sponsors</a>, or buying
|
||
<a rel="sponsored" href="https://django.threadless.com/">official
|
||
merchandise</a>.</p>
|
||
<h2 id="contents">Contents</h2>
|
||
<!--lint disable awesome-toc-->
|
||
<!-- START doctoc generated TOC please keep comment here to allow auto update -->
|
||
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
|
||
<ul>
|
||
<li><a href="#third-party-packages">Third-Party Packages</a>
|
||
<ul>
|
||
<li><a href="#admin">Admin</a></li>
|
||
<li><a href="#admin-themes">Admin Themes</a></li>
|
||
<li><a href="#apis">APIs</a></li>
|
||
<li><a href="#async">Async</a></li>
|
||
<li><a href="#caching">Caching</a></li>
|
||
<li><a href="#commands">Commands</a></li>
|
||
<li><a href="#configuration">Configuration</a></li>
|
||
<li><a href="#content-management-systems">Content Management
|
||
Systems</a></li>
|
||
<li><a href="#database-connectors">Database Connectors</a></li>
|
||
<li><a href="#ecommerce">ECommerce</a></li>
|
||
<li><a href="#editors">Editors</a></li>
|
||
<li><a href="#filesimages">Files/Images</a></li>
|
||
<li><a href="#forms">Forms</a></li>
|
||
<li><a href="#full-stack-frameworks">Full-stack frameworks</a></li>
|
||
<li><a href="#general">General</a></li>
|
||
<li><a href="#internationalisation-i18n">Internationalisation
|
||
(i18n)</a></li>
|
||
<li><a href="#logging">Logging</a></li>
|
||
<li><a href="#monitoring">Monitoring</a></li>
|
||
<li><a href="#mailing">Mailing</a></li>
|
||
<li><a href="#model-fields">Model Fields</a></li>
|
||
<li><a href="#models">Models</a></li>
|
||
<li><a href="#performance">Performance</a></li>
|
||
<li><a href="#permissions">Permissions</a></li>
|
||
<li><a href="#search">Search</a></li>
|
||
<li><a href="#search-engine-optimisation">Search Engine
|
||
Optimisation</a></li>
|
||
<li><a href="#security">Security</a></li>
|
||
<li><a href="#static-assets">Static Assets</a></li>
|
||
<li><a href="#task-queues">Task Queues</a></li>
|
||
<li><a href="#templates">Templates</a></li>
|
||
<li><a href="#testing">Testing</a></li>
|
||
<li><a href="#urls">URLs</a></li>
|
||
<li><a href="#users">Users</a></li>
|
||
<li><a href="#views">Views</a></li>
|
||
</ul></li>
|
||
<li><a href="#python-packages">Python Packages</a></li>
|
||
<li><a href="#resources">Resources</a>
|
||
<ul>
|
||
<li><a href="#official-resources">Official Resources</a></li>
|
||
<li><a href="#educational">Educational</a></li>
|
||
<li><a href="#community">Community</a></li>
|
||
<li><a href="#conferences">Conferences</a></li>
|
||
<li><a href="#job-boards">Job Boards</a></li>
|
||
<li><a href="#newsletters">Newsletters</a></li>
|
||
<li><a href="#podcasts">Podcasts</a></li>
|
||
<li><a href="#videos">Videos</a></li>
|
||
<li><a href="#books">Books</a></li>
|
||
</ul></li>
|
||
<li><a href="#hosting">Hosting</a>
|
||
<ul>
|
||
<li><a href="#paas-platforms-as-a-service">PaaS
|
||
(Platforms-as-a-Service)</a></li>
|
||
<li><a href="#iaas-infrastructure-as-a-service">IaaS
|
||
(Infrastructure-as-a-Service)</a></li>
|
||
</ul></li>
|
||
<li><a href="#projects">Projects</a>
|
||
<ul>
|
||
<li><a href="#boilerplate">Boilerplate</a></li>
|
||
<li><a href="#open-source-projects">Open Source Projects</a></li>
|
||
</ul></li>
|
||
<li><a href="#django-rest-framework">Django REST Framework</a>
|
||
<ul>
|
||
<li><a href="#drf-resources">DRF Resources</a></li>
|
||
<li><a href="#drf-tutorials">DRF Tutorials</a></li>
|
||
</ul></li>
|
||
<li><a href="#wagtail">Wagtail</a>
|
||
<ul>
|
||
<li><a href="#wagtail-resources">Wagtail Resources</a></li>
|
||
</ul></li>
|
||
</ul>
|
||
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
|
||
<!--lint enable awesome-toc-->
|
||
<h2 id="third-party-packages">Third-Party Packages</h2>
|
||
<p><em>For a complete listing of all available packages, see <a
|
||
href="https://djangopackages.org/">Django Packages</a></em></p>
|
||
<h3 id="admin">Admin</h3>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/django-hijack/django-hijack">django-hijack</a>
|
||
- Admins can log in and work on behalf of other users without having to
|
||
know their credentials.</li>
|
||
<li><a
|
||
href="https://github.com/django-import-export/django-import-export">django-import-export</a>
|
||
- Django application and library for importing and exporting data with
|
||
admin integration.</li>
|
||
<li><a
|
||
href="https://github.com/DmytroLitvinov/django-admin-inline-paginator-plus">django-admin-inline-paginator-plus</a>
|
||
- A simple way to paginate your inline in Django admin</li>
|
||
<li><a
|
||
href="https://github.com/skorokithakis/django-loginas">django-loginas</a>
|
||
- “Log in as user” for the Django admin.</li>
|
||
<li><a href="https://github.com/avallbona/Impostor">impostor</a> -
|
||
Impostor is a Django application which allows staff members to log in as
|
||
a different user by using their own username and password.</li>
|
||
<li><a
|
||
href="https://pypi.org/project/django-impersonate/">django-impersonate</a>
|
||
- Allow superusers to “impersonate” other non-superuser accounts.</li>
|
||
<li><a
|
||
href="https://github.com/dizballanze/django-admin-env-notice">django-admin-env-notice</a>
|
||
- Visually distinguish environments in Django Admin, for example:
|
||
<code>development</code>, <code>staging</code>,
|
||
<code>production</code>.</li>
|
||
<li><a
|
||
href="https://github.com/PetrDlouhy/django-related-admin">django-related-admin</a>
|
||
- A helper library that allows you to write list_displays across foreign
|
||
key relationships.</li>
|
||
<li><a
|
||
href="https://github.com/jrief/django-admin-sortable2">django-admin-sortable2</a>
|
||
- Generic drag-and-drop ordering for objects in the Django admin
|
||
interface.</li>
|
||
<li><a
|
||
href="https://github.com/brktrlw/django-admin-collaborator">django-admin-collaborator</a>
|
||
- Add real-time user presence, edit locks, and chat to Django admin with
|
||
Channels and Redis.</li>
|
||
</ul>
|
||
<h3 id="admin-themes">Admin Themes</h3>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/sehmaschine/django-grappelli">django-grappelli</a>
|
||
- A jazzy skin for the admin.</li>
|
||
<li><a
|
||
href="https://github.com/farridav/django-jazzmin">django-jazzmin</a> -
|
||
Drop-in theme for django admin, that utilises AdminLTE 3 & Bootstrap
|
||
4 to make yo’ admin look jazzy.</li>
|
||
<li><a
|
||
href="https://github.com/fabiocaccamo/django-admin-interface">django-admin-interface</a>
|
||
- Customize Admin by the admin itself(color, header. title,logo) and
|
||
popup windows replaced by modals.</li>
|
||
<li><a
|
||
href="https://github.com/MaistrenkoAnton/django-material-admin">django-material-admin</a>
|
||
- Material design for django administration.</li>
|
||
<li><a
|
||
href="https://github.com/globophobe/django-semantic-admin">django-semantic-admin</a>
|
||
- Django Semantic UI admin theme.</li>
|
||
<li><a
|
||
href="https://github.com/assem-ch/django-jet-reboot">django-jet-reboot</a>
|
||
- Django Jet is modern template for Django admin interface with improved
|
||
functionality.</li>
|
||
<li><a
|
||
href="https://github.com/otto-torino/django-baton">django-baton</a> - A
|
||
cool, modern and responsive django admin application based on bootstrap
|
||
5.</li>
|
||
<li><a
|
||
href="https://github.com/unfoldadmin/django-unfold">django-unfold</a> -
|
||
Modern Django admin theme for seamless interface development.</li>
|
||
<li><a href="https://github.com/hypy13/django-daisy">django-daisy</a> -
|
||
A modern django dashboard fully responsive built with daisyui.</li>
|
||
<li><a
|
||
href="https://github.com/sjbitcode/django-admin-dracula">django-admin-dracula</a>
|
||
- 🦇 Dracula themes for the Django admin.</li>
|
||
<li><a
|
||
href="https://github.com/SmartBase-SK/django-smartbase-admin">django-smartbase-admin</a>
|
||
- Django SmartBase Admin 🚀 performance-tuned 👥 end-user ready
|
||
beautiful admin panel</li>
|
||
</ul>
|
||
<h3 id="apis">APIs</h3>
|
||
<!--lint disable double-link-->
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/encode/django-rest-framework">django-rest-framework</a>
|
||
- Web APIs for Django.</li>
|
||
<li><a
|
||
href="https://github.com/adamchainz/django-cors-headers">django-cors-headers</a>
|
||
- If your back-end and front-end are on different servers, you need
|
||
this.</li>
|
||
<li><a href="https://github.com/iMerica/dj-rest-auth">dj-rest-auth</a> -
|
||
Authentication for Django Rest Framework.</li>
|
||
<li><a
|
||
href="https://github.com/jazzband/django-rest-knox">django-rest-knox</a>
|
||
- Authentication Module for django-rest-auth.</li>
|
||
<li><a href="https://github.com/sunscrapers/djoser">djoser</a> - REST
|
||
implementation of Django auth.</li>
|
||
<li><a href="https://github.com/paul-wolf/djaq">djaq</a> - An instant
|
||
remote API to Django models with a powerful query language.</li>
|
||
<li><a
|
||
href="https://github.com/jazzband/djangorestframework-simplejwt">django-rest-framework-simplejwt</a>
|
||
- JSON web tokens for DRF.</li>
|
||
<li><a
|
||
href="https://github.com/django-webpack/django-webpack-loader">django-webpack-loader</a>
|
||
- Transparently use webpack with Django.</li>
|
||
<li><a href="https://github.com/axnsan12/drf-yasg">drf-yasg</a> -
|
||
Automated generation of real Swagger/OpenAPI 2.0 schemas from Django
|
||
REST Framework code.</li>
|
||
<li><a
|
||
href="https://github.com/graphql-python/graphene-django">graphene-django</a>
|
||
- GraphQL for Django.</li>
|
||
<li><a
|
||
href="https://github.com/devind-team/graphene-django-filter">graphene-django-filter</a>
|
||
- Advanced filters implementing and/or/not operators in GraphQL for
|
||
Django.</li>
|
||
<li><a href="https://django-ninja.rest-framework.com/">django-ninja</a>
|
||
- Django Ninja - Fast Django REST framework based on type
|
||
annotations.</li>
|
||
<li><a
|
||
href="https://github.com/django-tastypie/django-tastypie">django-tastypie</a>
|
||
- Creating delicious APIs for Django apps since 2010.</li>
|
||
<li><a
|
||
href="https://github.com/tfranzel/drf-spectacular">drf-spectacular</a> -
|
||
Sane and flexible OpenAPI 3 schema generation for Django REST
|
||
framework.</li>
|
||
<li><a
|
||
href="https://github.com/danihodovic/django-webhook">django-webhook</a>
|
||
- A plug-and-play Django app for sending outgoing webhooks on model
|
||
changes. <!--lint enable double-link--></li>
|
||
</ul>
|
||
<h3 id="async">Async</h3>
|
||
<ul>
|
||
<li><a href="https://github.com/django/channels/">channels</a> - Async
|
||
support for Django.</li>
|
||
<li><a href="https://github.com/encode/starlette">starlette</a> - ASGI
|
||
framework.</li>
|
||
</ul>
|
||
<h3 id="caching">Caching</h3>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/noripyt/django-cachalot">django-cachalot</a> -
|
||
Caches your Django ORM queries and automatically invalidates them.</li>
|
||
<li><a
|
||
href="https://github.com/Suor/django-cacheops">django-cacheops</a> - A
|
||
slick ORM cache with automatic granular event-driven invalidation.</li>
|
||
</ul>
|
||
<h3 id="commands">Commands</h3>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/django-extensions/django-extensions/">django-extensions</a>
|
||
- Custom management extensions, notably <code>runserver_plus</code> and
|
||
<code>shell_plus</code>.</li>
|
||
<li><a
|
||
href="https://github.com/django-commons/django-click">django-click</a> -
|
||
Write Django management commands using the <a
|
||
href="https://click.palletsprojects.com">click CLI library</a>.</li>
|
||
<li><a
|
||
href="https://github.com/jazzband/django-dbbackup">django-dbbackup</a> -
|
||
Management commands to help backup and restore your project database and
|
||
media files.</li>
|
||
<li><a
|
||
href="https://github.com/Gusakovskiy/django-liquidb">django-liquidb</a>
|
||
- Django application to simplify migration management and changes in
|
||
states of db scheme.</li>
|
||
<li><a
|
||
href="https://github.com/ambient-innovation/django-migration-zero/">django-migration-zero</a>
|
||
- Holistic implementation of “migration zero” pattern for Django
|
||
covering local changes and in-production database adjustments.</li>
|
||
<li><a
|
||
href="https://github.com/django-commons/django-typer">django-typer</a> -
|
||
Write Django management commands using the <a
|
||
href="https://typer.tiangolo.com">Typer CLI library</a>.</li>
|
||
</ul>
|
||
<h3 id="configuration">Configuration</h3>
|
||
<!--lint disable double-link-->
|
||
<ul>
|
||
<li><a href="https://github.com/candidco/confidential">confidential</a>
|
||
- Manage configs and secrets (with CLI support).</li>
|
||
<li><a
|
||
href="https://github.com/joke2k/django-environ">django-environ</a> -
|
||
Environment variables.</li>
|
||
<li><a
|
||
href="https://github.com/wemake-services/django-split-settings">django-split-settings</a>
|
||
- Organize multiple settings files.</li>
|
||
<li><a
|
||
href="https://github.com/jazzband/django-constance">django-constance</a>
|
||
- 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.</li>
|
||
<li><a
|
||
href="https://github.com/jazzband/django-configurations">django-configurations</a>
|
||
- eases Django project configuration by relying on the composability of
|
||
Python classes and following principles of <a
|
||
href="https://12factor.net/config">the twelve-factor app</a>.</li>
|
||
<li><a href="https://www.dynaconf.com/django/">dynaconf</a> - 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 <a
|
||
href="https://12factor.net/config">the twelve-factor app</a>.</li>
|
||
<li><a
|
||
href="https://github.com/fabiocaccamo/django-extra-settings">django-extra-settings</a>
|
||
- Config and manage typed extra settings using just the django
|
||
admin.</li>
|
||
<li><a
|
||
href="https://github.com/ambient-innovation/django-removals/">django-removals</a>
|
||
- Detect deprecated settings variables via convenient system checks</li>
|
||
<li><a href="https://github.com/sloria/environs">environs</a> -
|
||
Simplified environment variable parsing that comes with a <a
|
||
href="https://github.com/sloria/environs#usage-with-django">Django
|
||
helper</a> that installs additional packages.
|
||
<!--lint enable double-link--></li>
|
||
<li><a
|
||
href="https://github.com/funkybob/django-classy-settings">django-classy-settings</a>
|
||
- Class-based settings to keep your environments in order, with easy
|
||
access to typed environment variables.</li>
|
||
<li><a
|
||
href="https://django-content-settings.readthedocs.io/en/latest/">django-content-settings</a>
|
||
- Easily create and manage editable typed variables directly from the
|
||
Django admin panel.</li>
|
||
</ul>
|
||
<h3 id="content-management-systems">Content Management Systems</h3>
|
||
<!--lint disable double-link-->
|
||
<ul>
|
||
<li><a href="https://github.com/wagtail/wagtail">wagtail</a> - Popular
|
||
Django content management system (CMS). See <a
|
||
href="https://github.com/springload/awesome-wagtail">awesome-wagtail</a>
|
||
too.</li>
|
||
<li><a href="https://github.com/stephenmcd/mezzanine">mezzanine</a> -
|
||
CMS framework.</li>
|
||
<li><a href="https://github.com/django-cms/django-cms">django-cms</a> -
|
||
CMS for Django.</li>
|
||
<li><a href="https://github.com/feincms/feincms">feincms</a> - An
|
||
extensible Django-based CMS.</li>
|
||
<li><a href="https://github.com/APSL/puput">puput</a> - Blog app
|
||
features with Wagtail. <!--lint enable double-link--></li>
|
||
</ul>
|
||
<h3 id="database-connectors">Database Connectors</h3>
|
||
<ul>
|
||
<li><a href="https://github.com/doableware/djongo">djongo</a> - Django
|
||
and MongoDB database connector.</li>
|
||
</ul>
|
||
<h3 id="ecommerce">ECommerce</h3>
|
||
<ul>
|
||
<li><a href="https://github.com/saleor/saleor">saleor</a> -
|
||
GraphQL-based Django E-Commerce Platform.</li>
|
||
<li><a href="https://github.com/awesto/django-shop">django-shop</a> -
|
||
Django-based shop system.</li>
|
||
<li><a href="https://github.com/shuup/shuup">shuup</a> - Django
|
||
E-Commerce Platform.</li>
|
||
<li><a
|
||
href="https://github.com/django-oscar/django-oscar">django-oscar</a> -
|
||
Domain-driven e-commerce for Django.</li>
|
||
</ul>
|
||
<h3 id="editors">Editors</h3>
|
||
<!--lint ignore awesome-list-item-->
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/neutronX/django-markdownx">django-markdownx</a>
|
||
- Comprehensive Markdown plugin built for Django.</li>
|
||
<li><a
|
||
href="https://github.com/agusmakmun/django-markdown-editor">django-markdown-editor</a>
|
||
- Awesome Django Markdown Editor, supported for Bootstrap &
|
||
Semantic-UI.</li>
|
||
<li><a
|
||
href="https://github.com/dgk/django-business-logic">django-business-logic</a>
|
||
- Visual DSL framework for Django.</li>
|
||
<li><a
|
||
href="https://github.com/lqez/django-summernote">django-summernote</a> -
|
||
Summernote is a simple WYSIWYG editor.</li>
|
||
<li><a
|
||
href="https://github.com/jazzband/django-tinymce">django-tinymce</a> -
|
||
TinyMCE integration for Django.</li>
|
||
<li><a
|
||
href="https://github.com/withlogicco/django-prose">django-prose</a> - A
|
||
lightweight editor for content creation.</li>
|
||
<li><a href="https://github.com/django-ace/django-ace">django-ace</a> -
|
||
ACE integration for Django.</li>
|
||
</ul>
|
||
<h3 id="filesimages">Files/Images</h3>
|
||
<ul>
|
||
<li><a href="https://github.com/un1t/django-cleanup">django-cleanup</a>
|
||
- Zero configuration file/image removal for local and remote files.</li>
|
||
<li><a
|
||
href="https://github.com/matthewwithanm/django-imagekit">django-imagekit</a>
|
||
- Django app for processing images for thumbnail, black-and-white and
|
||
sizes.</li>
|
||
<li><a
|
||
href="https://github.com/codingjoe/django-pictures">django-pictures</a>
|
||
- Responsive cross-browser image library using modern codes like AVIF
|
||
& WebP.</li>
|
||
<li><a
|
||
href="https://github.com/jazzband/sorl-thumbnail">sorl-thumbnail</a> -
|
||
Thumbnails for Django.</li>
|
||
</ul>
|
||
<h3 id="forms">Forms</h3>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/django-crispy-forms/django-crispy-forms/">django-crispy-forms</a>
|
||
- DRY Django forms.</li>
|
||
<li><a
|
||
href="https://github.com/jazzband/django-floppyforms">django-floppyforms</a>
|
||
- Full control of form rendering.</li>
|
||
<li><a
|
||
href="https://github.com/jazzband/django-formtools">django-formtools</a>
|
||
- For form previous and multistep forms, previously part of Django until
|
||
1.8.</li>
|
||
<li><a
|
||
href="https://github.com/jazzband/django-widget-tweaks">django-widget-tweaks</a>
|
||
- Tweak form field rendering in templates.</li>
|
||
<li><a
|
||
href="https://github.com/yourlabs/django-autocomplete-light">django-autocomplete-light</a>
|
||
- Add autocompletion to forms.</li>
|
||
<li><a
|
||
href="https://github.com/kennethlove/django-shapeshifter">django-shapeshifter</a>
|
||
- A class-based view to handle multiple forms in one view.</li>
|
||
</ul>
|
||
<h3 id="full-stack-frameworks">Full-stack frameworks</h3>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/django-bridge/django-bridge">Django-Bridge</a>
|
||
- The simple way to build React frontends for Django applications.</li>
|
||
<li><a href="https://github.com/reactive-python/reactpy">ReactPy</a> -
|
||
It’s React, but in Python. Insert dynamically rendered Python into
|
||
Django templates using the <a
|
||
href="https://github.com/reactive-python/reactpy-django">ReactPy-Django
|
||
module</a>.</li>
|
||
<li><a href="https://github.com/edelvalle/reactor/">Reactor</a> -
|
||
Phoenix LiveView, but for Django.</li>
|
||
<li><a href="https://sockpuppet.argpar.se/">Sockpuppet</a> - Build
|
||
reactive applications with the Django tooling you already know and
|
||
love.</li>
|
||
<li><a href="https://www.django-unicorn.com/">Unicorn</a> - A reactive
|
||
component framework that progressively enhances a normal Django view,
|
||
makes AJAX calls in the background, and dynamically updates the
|
||
DOM.</li>
|
||
</ul>
|
||
<h3 id="general">General</h3>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/tolomea/django-data-browser">django-data-browser</a>
|
||
- Interactive, user-friendly database explorer.</li>
|
||
<li><a
|
||
href="https://github.com/carltongibson/django-filter">django-filter</a>
|
||
- Powerful filters based on Django QuerySets.</li>
|
||
<li><a
|
||
href="https://github.com/explorerhq/sql-explorer">django-sql-explorer</a>
|
||
- Share data via SQL queries.</li>
|
||
<li><a
|
||
href="https://github.com/jieter/django-tables2">django-tables2</a> -
|
||
HTML tables with pagination/sorting.</li>
|
||
<li><a
|
||
href="https://github.com/fabiocaccamo/django-maintenance-mode">django-maintenance-mode</a>
|
||
- Shows a 503 error page when maintenance-mode is on.</li>
|
||
<li><a
|
||
href="https://github.com/fabiocaccamo/django-freeze">django-freeze</a> -
|
||
Convert your dynamic django site to a static one with one line of
|
||
code.</li>
|
||
<li><a href="https://github.com/marksweb/django-nh3">django-nh3</a> -
|
||
Django integration with for nh3 and is an alternative for
|
||
django-bleach.</li>
|
||
<li><a href="https://github.com/WeblateOrg/weblate">Weblate</a> -
|
||
Weblate is a copylefted libre software web-based continuous localization
|
||
system, used by over 2500 libre projects and companies in more than 165
|
||
countries.</li>
|
||
<li><a
|
||
href="https://github.com/nanuxbe/django-classy-doc">Django-Classy-Doc</a>
|
||
- Document your own code in the style of CCBV and CDRF.</li>
|
||
<li><a href="https://github.com/iommirocks/iommi">iommi</a> - Toolkit
|
||
for development of CRUD applications without writing HTML or
|
||
JavaScript.</li>
|
||
</ul>
|
||
<h3 id="internationalisation-i18n">Internationalisation (i18n)</h3>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/django/django-localflavor">django-localflavor</a>
|
||
- A collection of functionality that is useful for particular countries
|
||
or cultures. Previously a part of the Django core.</li>
|
||
<li><a
|
||
href="https://github.com/zostera/django-modeltrans">django-modeltrans</a>
|
||
- Translate Django model fields in a JSONField.</li>
|
||
<li><a
|
||
href="https://github.com/deschler/django-modeltranslation">django-modeltranslations</a>
|
||
- Translates Django models using a registration approach.</li>
|
||
<li><a href="https://github.com/mbi/django-rosetta">django-rosetta</a> -
|
||
Rosetta provides a UI to read and write your project’s gettext catalogs
|
||
within the Django Admin.</li>
|
||
</ul>
|
||
<h3 id="logging">Logging</h3>
|
||
<ul>
|
||
<li><a href="https://github.com/snok/django-guid">django-guid</a> -
|
||
Inject a GUID (Correlation-ID) into every log message in a Django
|
||
request.</li>
|
||
<li><a
|
||
href="https://github.com/vishalanandl177/DRF-API-Logger">DRF-API-Logger</a>
|
||
- An API Logger for your Django Rest Framework project.</li>
|
||
</ul>
|
||
<h3 id="monitoring">Monitoring</h3>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/korfuri/django-prometheus">django-prometheus</a>
|
||
- Export Django monitoring metrics to Prometheus.</li>
|
||
<li><a
|
||
href="https://github.com/adinhodovic/django-mixin">django-mixin</a> -
|
||
Monitoring mixin for Django-prometheus. A set of Grafana dashboards and
|
||
Prometheus rules for Django.</li>
|
||
</ul>
|
||
<h3 id="mailing">Mailing</h3>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/ambient-innovation/django-pony-express">django-pony-express</a>
|
||
- Class-based emails including a test suite for Django.</li>
|
||
<li><a
|
||
href="https://github.com/anymail/django-anymail">django-anymail</a> -
|
||
Django email backends and webhooks for Amazon SES, Brevo (Sendinblue),
|
||
MailerSend, Mailgun, Mailjet, Postmark, Postal, Resend, SendGrid,
|
||
SparkPost, Unisender Go and more.</li>
|
||
</ul>
|
||
<h3 id="model-fields">Model Fields</h3>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/edoburu/django-any-urlfield">django-any-urlfield</a>
|
||
- An improved URL selector to choose between internal models and
|
||
external URLs.</li>
|
||
<li><a
|
||
href="https://github.com/fabiocaccamo/django-colorfield">django-colorfield</a>
|
||
- Color field for django models with a nice color-picker widget.</li>
|
||
<li><a
|
||
href="https://github.com/jazzband/django-model-utils">django-model-utils</a>
|
||
- Django model mixins and utilities.</li>
|
||
<li><a
|
||
href="https://github.com/django-money/django-money">django-money</a> -
|
||
Money fields for forms/models.</li>
|
||
<li><a
|
||
href="https://github.com/stefanfoulis/django-phonenumber-field">django-phonenumber-field</a>
|
||
- Model/form field for normalized phone numbers.</li>
|
||
<li><a
|
||
href="https://github.com/raagin/django-streamfield">django-streamfield</a>
|
||
- Simple StreamField for plain Django admin (based on Wagtail CMS
|
||
StreamField idea).</li>
|
||
</ul>
|
||
<h3 id="models">Models</h3>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/rsinger86/django-lifecycle">django-lifecycle</a>
|
||
- Declarative model lifecycle hooks, an alternative to Signals.</li>
|
||
<li><a href="https://github.com/django-mptt/django-mptt">django-mptt</a>
|
||
- Modified Preorder Tree Traversal; working with trees of Model
|
||
instances.</li>
|
||
<li><a
|
||
href="https://github.com/jazzband/django-taggit/">django-taggit</a> -
|
||
Simple model tags.</li>
|
||
<li><a
|
||
href="https://github.com/etianen/django-reversion">django-reversion</a>
|
||
- Version control for model instances.</li>
|
||
<li><a
|
||
href="https://github.com/jazzband/django-simple-history">django-simple-history</a>
|
||
- Store model history and view/revert changes from the admin.</li>
|
||
<li><a
|
||
href="https://github.com/jazzband/django-polymorphic">django-polymorphic</a>
|
||
- Django-polymorphic simplifies using inherited models in Django
|
||
projects.</li>
|
||
<li><a
|
||
href="https://github.com/jazzband/django-recurrence">django-recurrence</a>
|
||
- Utility for working with recurring dates in Django.</li>
|
||
<li><a
|
||
href="https://github.com/fabiocaccamo/django-treenode">django-treenode</a>
|
||
- Abstract model/admin for tree-based stuff.</li>
|
||
<li><a
|
||
href="https://github.com/tolomea/django-auto-prefetch">django-auto-prefetch</a>
|
||
- Automatically prefetch foreign key values as needed.</li>
|
||
</ul>
|
||
<h3 id="performance">Performance</h3>
|
||
<ul>
|
||
<li><a href="https://cur.at/GHUO6cn?m=web">django-perf-rec</a> - Keep
|
||
detailed records of the performance of your Django code.</li>
|
||
<li><a href="https://newrelic.com/python/django">New Relic</a> - Time
|
||
middleware, views, and SQL queries.</li>
|
||
<li><a href="https://scoutapm.com/docs/python/django">Scout</a> - Time
|
||
middleware, template rendering, and SQL queries with automatic N+1
|
||
detection.</li>
|
||
<li><a
|
||
href="https://github.com/django-query-profiler/django-query-profiler">django-query-profiler</a>
|
||
- Django query profiler to help resolve N+1 queries.</li>
|
||
<li><a href="https://github.com/jazzband/django-silk">django-silk</a> -
|
||
Live profiling and inspection of HTTP requests and database
|
||
queries.</li>
|
||
<li><a href="https://github.com/benfred/py-spy">py-spy</a> - Sampling
|
||
profiler for Python programs.</li>
|
||
<li><a href="https://github.com/joerick/pyinstrument">pyinstrument</a> -
|
||
Call stack profiler for Python, Django, Flask, FastAPI.</li>
|
||
<li><a href="https://github.com/taobojlen/django-zeal">django-zeal</a> -
|
||
Detect N+1 queries with user-friendly error messages</li>
|
||
</ul>
|
||
<h3 id="permissions">Permissions</h3>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/vintasoftware/django-role-permissions">django-role-permissions</a>
|
||
- Django app for role-based permissions management.</li>
|
||
<li><a
|
||
href="https://github.com/django-guardian/django-guardian">django-guardian</a>
|
||
- Per object permissions in Django.</li>
|
||
<li><a href="https://github.com/dfunckt/django-rules">django-rules</a> -
|
||
A tiny but powerful app providing object-level permissions, built from
|
||
the ground up for Django.</li>
|
||
</ul>
|
||
<h3 id="search">Search</h3>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/django-haystack/django-haystack">django-haystack</a>
|
||
- Modular search for Django.</li>
|
||
<li><a href="https://github.com/etianen/django-watson">django-watson</a>
|
||
- Full-text search plugin.</li>
|
||
<li><a
|
||
href="https://github.com/shinneider/django-admin-search">django-admin-search</a>
|
||
- Modal filter for django admin.</li>
|
||
<li><a
|
||
href="https://github.com/django-es/django-elasticsearch-dsl">django-elasticsearch-dsl</a>
|
||
- Elasticsearch DSL integration for Django.</li>
|
||
</ul>
|
||
<h3 id="search-engine-optimisation">Search Engine Optimisation</h3>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/kapt-labs/django-check-seo">django-check-seo</a>
|
||
- Check SEO of pages.</li>
|
||
</ul>
|
||
<h3 id="security">Security</h3>
|
||
<ul>
|
||
<li><a href="https://github.com/mozilla/django-csp">django-csp</a> -
|
||
Adds <a href="http://www.w3.org/TR/CSP/">Content-Security-Policy</a>
|
||
headers to Django.</li>
|
||
<li><a
|
||
href="https://github.com/adamchainz/django-permissions-policy">django-feature-policy</a>
|
||
- Set the draft security HTTP header <code>Feature-Policy</code> on a
|
||
Django app.</li>
|
||
<li><a
|
||
href="https://github.com/cobusc/django-protected-media">django-protected-media</a>
|
||
- Manages media that are considered sensitive in a protected
|
||
fashion.</li>
|
||
<li><a href="https://djcheckup.com">DJ Checkup</a> - Runs several checks
|
||
on your deployed Django site to check for common security mistakes.</li>
|
||
</ul>
|
||
<h3 id="static-assets">Static Assets</h3>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/jschneier/django-storages">django-storages</a>
|
||
- A single library to support multiple custom storage backends for
|
||
Django.</li>
|
||
<li><a
|
||
href="https://github.com/django-compressor/django-compressor/">django-compressor</a>
|
||
- Compress JavaScript/CSS into a single cached file.</li>
|
||
<li><a
|
||
href="https://github.com/SmileyChris/easy-thumbnails">easy-thumbnails</a>
|
||
- Image thumbnails for Django.</li>
|
||
<li><a href="https://github.com/evansd/whitenoise">whitenoise</a> -
|
||
Simplified static file serving for Python websites.</li>
|
||
</ul>
|
||
<h3 id="task-queues">Task Queues</h3>
|
||
<ul>
|
||
<li><a href="https://github.com/rajasimon/beatserver">beatserver</a> - A
|
||
periodic task scheduler for Django.</li>
|
||
<li><a href="https://github.com/django-q2/django-q2">django-q2</a> - A
|
||
multiprocessing distributed task queue for Django.</li>
|
||
<li><a href="https://github.com/rq/django-rq">django-rq</a> -
|
||
Integration for Redis Queue.</li>
|
||
<li><a href="https://github.com/jazzband/django-redis">django-redis</a>
|
||
- Full-featured Redis cache backend for Django.</li>
|
||
<li><a href="https://github.com/celery/celery">celery</a> - Robust and
|
||
broker-agnostic task queues for bigger, performance-focused
|
||
projects.</li>
|
||
<li><a href="https://github.com/mher/flower">flower</a> - Flower is a
|
||
web-based tool for monitoring and administrating Celery clusters.</li>
|
||
<li><a
|
||
href="https://github.com/celery/django-celery-beat">django-celery-beat</a>
|
||
- A periodic task scheduler with database configured by Django’s Admin
|
||
Panel.</li>
|
||
<li><a
|
||
href="https://github.com/danihodovic/celery-exporter">celery-exporter</a>
|
||
- Prometheus & Grafana monitoring of Celery tasks.</li>
|
||
<li><a
|
||
href="https://github.com/Bogdanp/django_dramatiq">django-dramatiq</a> -
|
||
Task processing library with a focus on simplicity, reliability, and
|
||
performance.</li>
|
||
<li><a
|
||
href="https://github.com/celery/django-celery-results">django-celery-results</a>
|
||
- Celery result backend with Django.</li>
|
||
<li><a
|
||
href="https://github.com/realOrangeOne/django-tasks">django-tasks</a> -
|
||
A reference implementation and backport of background workers and tasks
|
||
in Django, based on <a
|
||
href="https://www.djangoproject.com/weblog/2024/may/29/django-enhancement-proposal-14-background-workers/">DEP
|
||
14</a>.</li>
|
||
</ul>
|
||
<h3 id="templates">Templates</h3>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/django-components/django-components/">django-components</a>
|
||
- A way to create simple reusable template components in Django.</li>
|
||
<li><a
|
||
href="https://github.com/carltongibson/django-template-partials/">django-template-partials</a>
|
||
- Reusable named inline partials for the Django Template Language.</li>
|
||
<li><a href="https://mitchel.me/slippers/">slippers</a> - Build reusable
|
||
components in Django without writing a single line of Python.</li>
|
||
<li><a href="https://jinjax.scaletti.dev/">JinjaX</a> - Super components
|
||
powers for your Jinja templates.</li>
|
||
<li><a href="https://django-cotton.com/">django-cotton</a> - Goodbye
|
||
<code>{% raw %}{%{% endraw %} extends, block, include {% raw %}%}{% endraw %}</code>,
|
||
Hello <code><c-component /></code>. Bringing modern UI composition
|
||
to Django.</li>
|
||
<li><a href="https://htpy.dev/">htpy</a> - htpy is a library that makes
|
||
writing HTML in plain Python fun and efficient, without a template
|
||
language.</li>
|
||
</ul>
|
||
<h3 id="testing">Testing</h3>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/django-commons/django-debug-toolbar/">django-debug-toolbar</a>
|
||
- Configurable panels to debug requests/responses.</li>
|
||
<li><a
|
||
href="https://github.com/pytest-dev/pytest-django">pytest-django</a> -
|
||
Use pytest features in Django.</li>
|
||
<li><a
|
||
href="https://github.com/wemake-services/django-test-migrations">django-test-migrations</a>
|
||
- Test django schema and data migrations, including migrations’
|
||
order.</li>
|
||
<li><a
|
||
href="https://github.com/revsys/django-test-plus/">django-test-plus</a>
|
||
- Useful additions to Django’s default TestCase.</li>
|
||
<li><a href="https://github.com/FactoryBoy/factory_boy">factory-boy</a>
|
||
- Test fixtures replacement.</li>
|
||
<li><a
|
||
href="https://github.com/jazzband/django-waffle">django-waffle</a> - A
|
||
feature flipper for Django.</li>
|
||
<li><a
|
||
href="https://github.com/model-bakers/model_bakery">model-bakery</a> -
|
||
Object factory for Django (rename of legacy Model Mommy project).</li>
|
||
<li><a
|
||
href="https://github.com/fcurella/django-fakery">django-fakery</a> - An
|
||
easy-to-use implementation of Creation Methods for Django, backed by
|
||
Faker.</li>
|
||
<li><a
|
||
href="https://github.com/snok/drf-openapi-tester">drf-openapi-tester</a>
|
||
- Django test utility for validating Swagger 2.0 and OpenAPI 3.0
|
||
documentation.</li>
|
||
<li><a
|
||
href="https://github.com/adinhodovic/django-google-optimize">django-google-optimize</a>
|
||
- Django application designed to make running server side Google
|
||
Optimize A/B tests easy.</li>
|
||
<li><a
|
||
href="https://github.com/torchbox/django-pattern-library">django-pattern-library</a>
|
||
- Pattern library generator for Django templates, to help testing of UI
|
||
components.</li>
|
||
<li><a
|
||
href="https://github.com/torchbox/storybook-django">storybook-django</a>
|
||
- Develop Django UI components in isolation, with Storybook.</li>
|
||
</ul>
|
||
<h3 id="urls">URLs</h3>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/jazzband/dj-database-url">dj-database-url</a> -
|
||
Database URLs.</li>
|
||
<li><a href="https://github.com/andrewgodwin/urlman">urlman</a> - A
|
||
nicer way to do URLs for Django models.</li>
|
||
<li><a
|
||
href="https://github.com/jazzband/django-robots">django-robots</a> -
|
||
This is a basic Django application to manage robots.txt files following
|
||
the robots exclusion protocol, complementing the Django Sitemap contrib
|
||
app.</li>
|
||
<li><a
|
||
href="https://github.com/fabiocaccamo/django-redirects">django-redirects</a>
|
||
- Redirects as they should be, with full control.</li>
|
||
</ul>
|
||
<h3 id="users">Users</h3>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/pennersr/django-allauth/">django-allauth</a> -
|
||
Improved user registration including social auth.</li>
|
||
<li><a
|
||
href="https://github.com/danihodovic/django-allauth-ui/">django-allauth-ui</a>
|
||
- Better-looking templates for django-allauth.</li>
|
||
<li><a
|
||
href="https://github.com/jambonrose/django-improved-user">django-improved-user</a>
|
||
- A custom Django user that authenticates via email. Follows identity
|
||
and authentication best practices.</li>
|
||
<li><a
|
||
href="https://github.com/bennylope/django-organizations/">django-organizations</a>
|
||
- Multi-user accounts for Django projects.</li>
|
||
<li><a
|
||
href="https://github.com/django-cas-ng/django-cas-ng">django-cas-ng</a>
|
||
- 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).</li>
|
||
<li><a
|
||
href="https://github.com/julianwachholz/django-guest-user">django-guest-user</a>
|
||
- Allow visitors to use your site like a regular user and register
|
||
later.</li>
|
||
</ul>
|
||
<h3 id="views">Views</h3>
|
||
<ul>
|
||
<li><a href="https://github.com/brack3t/django-braces">django-braces</a>
|
||
- Reusable, generic mixins.</li>
|
||
<li><a
|
||
href="https://github.com/soynatan/django-easy-audit">django-easy-audit</a>
|
||
- Keep track of user actions.</li>
|
||
<li><a
|
||
href="https://github.com/AndrewIngram/django-extra-views">django-extra-views</a>
|
||
- Extra class-based generic views.</li>
|
||
<li><a
|
||
href="https://github.com/encode/django-vanilla-views">django-vanilla-views</a>
|
||
- Simpler class-based views in Django.</li>
|
||
<li><a
|
||
href="https://github.com/mgrouchy/django-stronghold">django-stronghold</a>
|
||
- Makes all your Django views default login_required.</li>
|
||
<li><a href="https://github.com/carltongibson/neapolitan">neapolitan</a>
|
||
- Quick CRUD views for Django.</li>
|
||
</ul>
|
||
<h2 id="developer-tools">Developer Tools</h2>
|
||
<p>Standalone tools that help in developing Django projects.</p>
|
||
<h3 id="templates-1">Templates</h3>
|
||
<ul>
|
||
<li><a href="https://www.curlylint.org/">curlylint</a> - Experimental
|
||
HTML templates linting for Jinja, Nunjucks, Django templates, Twig,
|
||
Liquid.</li>
|
||
<li><a href="https://github.com/rtts/djhtml">djhtml</a> - Django/Jinja
|
||
template indenter.</li>
|
||
<li><a href="https://www.djlint.com/">djlint</a> - Lint & Format
|
||
HTML Templates.</li>
|
||
</ul>
|
||
<h2 id="python-packages">Python Packages</h2>
|
||
<p><em>A short list of Python packages that work well with
|
||
Django.</em></p>
|
||
<ul>
|
||
<li><a href="https://github.com/mozilla/bleach">bleach</a> - Sanitize
|
||
your inputs/forms.</li>
|
||
<li><a href="https://github.com/psf/black">black</a> - Uncompromising
|
||
Python code formatter.</li>
|
||
<li><a href="https://github.com/nedbat/coveragepy">coveragepy</a> - Code
|
||
coverage measurement.</li>
|
||
<li><a href="https://github.com/joke2k/faker">faker</a> - Faker is a
|
||
Python package that generates fake data for you.</li>
|
||
<li><a href="https://github.com/coleifer/huey">huey</a> - A little task
|
||
queue for Python.</li>
|
||
<li><a href="https://github.com/jmcarp/nplusone">nplusone</a> -
|
||
Auto-detect n+1 queries.</li>
|
||
<li><a href="https://github.com/python-pillow/Pillow">pillow</a> -
|
||
Python Imaging Library.</li>
|
||
<li><a href="https://github.com/pytest-dev/pytest/">pytest</a> - Testing
|
||
framework.</li>
|
||
<li><a
|
||
href="https://github.com/HBNetwork/python-decouple">python-decouple</a>
|
||
- Strict separation of settings from code.</li>
|
||
<li><a href="https://github.com/un33k/python-slugify">python-slugify</a>
|
||
- Returns unicode slugs.</li>
|
||
<li><a
|
||
href="https://github.com/getsentry/sentry-python">sentry-python</a> -
|
||
Error reporting SDK.</li>
|
||
<li><a
|
||
href="https://github.com/miguelgrinberg/python-socketio">python-socketio</a>
|
||
- Python implementation of the Socket.IO_ realtime client and server. <a
|
||
href="https://python-socketio.readthedocs.io/en/latest/server.html?highlight=django#creating-a-server-instance">(create
|
||
Socket.io Django server instance)</a></li>
|
||
<li><a href="https://github.com/astral-sh/ruff">Ruff</a> - An extremely
|
||
fast Python linter and code formatter, written in Rust.</li>
|
||
</ul>
|
||
<h2 id="resources">Resources</h2>
|
||
<h3 id="official-resources">Official Resources</h3>
|
||
<!--lint ignore double-link-->
|
||
<ul>
|
||
<li><a href="https://www.djangoproject.com/">Project Website</a> -
|
||
Official Django website.</li>
|
||
<li><a href="https://docs.djangoproject.com/en/dev/">Documentation</a> -
|
||
Comprehensive documentation for all Django versions.</li>
|
||
<li><a
|
||
href="https://docs.djangoproject.com/en/dev/intro/tutorial01/">Polls
|
||
Tutorial</a> - Build a polls tutorial while learning Django
|
||
internals.</li>
|
||
<li><a href="https://github.com/django/django/">Source Code</a> - Hosted
|
||
on GitHub.</li>
|
||
</ul>
|
||
<h3 id="educational">Educational</h3>
|
||
<ul>
|
||
<li><a href="https://tutorial.djangogirls.org/en/">Django Girls
|
||
Tutorial</a> - Use function-based views to build a blog app.</li>
|
||
<li><a href="https://learndjango.com/">LearnDjango</a> - Tutorials and
|
||
premium courses on Django and Django REST Framework.</li>
|
||
<li><a href="https://adamj.eu/tech/">Adam Johnson</a> - Adam is on the
|
||
Technical Board of Django and regularly writes tutorials.</li>
|
||
<li><a href="https://photondesigner.com/articles">Photon Designer -
|
||
Django tutorials</a> - 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.<br />
|
||
</li>
|
||
<li><a href="https://testdriven.io/blog/">TestDriven</a> - Multiple
|
||
Django-specific tutorials on topics like Docker, payments, and
|
||
more.</li>
|
||
<li><a href="https://ccbv.co.uk/">Classy Class-Based Views</a> -
|
||
Detailed descriptions of methods/properties/attributes for each generic
|
||
class-based view.</li>
|
||
<li><a href="https://github.com/ana-balica/classy-django-forms">Classy
|
||
Django Forms</a> - Detailed descriptions of
|
||
methods/properties/attributes for each form class.</li>
|
||
<li><a href="http://www.cdrf.co">Classy Django REST Framework</a> -
|
||
Detailed descriptions with methods/attributes for DRF class-based views
|
||
and serializers.</li>
|
||
<li><a href="https://simpleisbetterthancomplex.com/">Simple is Better
|
||
than Complex</a> - Regularly updated website with many tutorials and
|
||
tips on Django.</li>
|
||
<li><a href="https://www.fullstackpython.com/django.html">Full Stack
|
||
Python’s Django Page</a> - Explanation of Django philosophy and links to
|
||
other resources and tutorials.</li>
|
||
<li><a href="https://realpython.com/tutorials/django/">RealPython</a> -
|
||
Many high-quality tutorials on Django.</li>
|
||
<li><a
|
||
href="https://developer.mozilla.org/en-US/docs/Learn/Server-side/Django">Mozilla
|
||
Tutorial</a> - Create a lending library app.</li>
|
||
<li><a href="https://www.mattlayman.com">Matt Layman</a> - Regular
|
||
tutorials and deep-dives on Django topics.</li>
|
||
<li><a href="https://github.com/HackSoftware/Django-Styleguide">Django
|
||
Styleguide</a> - Styleguide for Django with best practices and
|
||
examples.</li>
|
||
<li><a href="https://www.djangotemplatetagsandfilters.com/">Django
|
||
Template Tags and Filters</a> - Additional docs on Django’s 57 built-in
|
||
template filters and 27 template tags.</li>
|
||
<li><a href="https://www.dj4e.com/">Django for Everybody</a> - A
|
||
complete course for webdev beginners focused on Django.</li>
|
||
<li><a href="https://cs50.harvard.edu/web/2020/">CS50W</a> - Harvard’s
|
||
University introductory course to web development, it explains Django as
|
||
backend framework.</li>
|
||
</ul>
|
||
<h3 id="community">Community</h3>
|
||
<!--lint disable double-link-->
|
||
<ul>
|
||
<li><a href="https://forum.djangoproject.com/">Django Forum</a> -
|
||
Official Discourse board.</li>
|
||
<li><a href="https://www.djangoproject.com/community/">Community
|
||
Page</a> - Featuring feeds of Community Blog Posts, Jobs, and more.</li>
|
||
<li><a href="https://www.djangoproject.com/community/local/">Local
|
||
Django Communities Page</a> - Featuring local events all around the
|
||
world.</li>
|
||
<li><a
|
||
href="https://groups.google.com/forum/#!forum/django-users/">Django
|
||
Users Google Group</a> - Very active discussion board for
|
||
questions/answers.</li>
|
||
<li><a
|
||
href="https://groups.google.com/forum/#!forum/django-developers/">Developers
|
||
Google Group</a> - For contributions to Django itself only.</li>
|
||
<li><a href="https://fosstodon.org/@django">Mastodon</a> - For official
|
||
announcements on updates, security fixes, etc.</li>
|
||
<li><a href="https://x.com/djangoproject/">X (formerly Twitter)</a> -
|
||
For official announcements on updates, security fixes, etc.</li>
|
||
<li><a href="https://discord.com/invite/xcRH6mN4fa">Discord Server</a> -
|
||
Django Discord Community.</li>
|
||
<li>IRC Channel - Chat with other Django users at
|
||
irc://irc.freenode.net/django.</li>
|
||
<li><a href="https://djangonaut.space">Djangonaut Space</a> - Free
|
||
peer-mentoring program for the Django community to launch people into
|
||
the universe of open source contributions.
|
||
<!--lint enable double-link--></li>
|
||
</ul>
|
||
<h3 id="conferences">Conferences</h3>
|
||
<ul>
|
||
<li><a href="https://djangocon.us/">DjangoCon US</a> (<a
|
||
href="https://www.youtube.com/channel/UC0yY6a79pPY9J0ShIHRf6yw">YouTube
|
||
Channel</a>)</li>
|
||
<li><a href="https://djangocon.eu/">DjangoCon Europe</a> (<a
|
||
href="https://www.youtube.com/user/djangoconeurope">YouTube
|
||
Channel</a>)</li>
|
||
<li><a href="https://djangocon.com.au/">DjangoCon AU</a></li>
|
||
<li><a href="https://djangocon.africa/">DjangoCon Africa</a></li>
|
||
<li><a href="https://djangoday.dk/">Django Day Copenhagen</a> (<a
|
||
href="https://www.youtube.com/@djangodanmark">YouTube Channel</a>)</li>
|
||
<li><a href="https://us.pycon.org/">PyCon US</a> (<a
|
||
href="https://www.youtube.com/channel/UCsX05-2sVSH7Nx3zuk3NYuQ">YouTube
|
||
Channel</a>)</li>
|
||
<li><a href="https://pycon-au.org/">PyCon Australia</a> (<a
|
||
href="https://www.youtube.com/user/PyConAU">YouTube Channel</a>)</li>
|
||
<li><a href="https://europython.eu/">Euro Python</a> (<a
|
||
href="https://www.youtube.com/user/PythonItalia">YouTube
|
||
Channel</a>)</li>
|
||
<li><a
|
||
href="https://www.youtube.com/channel/UC9T1dhIlL_8Va9DxvKRowBw/videos">Django
|
||
Under the Hood</a></li>
|
||
<li><a href="https://djangocongress.jp/">DjangoCongress JP</a> (<a
|
||
href="https://www.youtube.com/@djangocongressjp3623">YouTube
|
||
Channel</a>)</li>
|
||
<li><a href="https://pycon.org">Complete listing of all PyCons
|
||
globally</a></li>
|
||
</ul>
|
||
<h3 id="job-boards">Job Boards</h3>
|
||
<ul>
|
||
<li><a href="https://jobs.django-news.com/">Django News Jobs</a> - A
|
||
Django job board that also aggregates other job boards.</li>
|
||
<li><a href="https://djangogigs.com">Django Gigs</a> - This platform
|
||
caters specifically to freelance and full-time Django developers.</li>
|
||
<li><a href="https://djangojobs.net">Django Jobs</a> - Django jobs
|
||
posting for hiring Django Python developers.</li>
|
||
<li><a href="https://www.python.org/jobs/">Python.org Job Boards</a> -
|
||
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.</li>
|
||
</ul>
|
||
<h3 id="newsletters">Newsletters</h3>
|
||
<ul>
|
||
<li><a href="https://django-news.com">Django News</a> - Weekly
|
||
newsletter on announcements, articles, projects, and talks.</li>
|
||
</ul>
|
||
<h3 id="podcasts">Podcasts</h3>
|
||
<ul>
|
||
<li><a href="https://djangochat.com/">Django Chat</a> - A weekly podcast
|
||
from William Vincent and Django Fellow Carlton Gibson with discussions
|
||
of core Django concepts and regular guests.</li>
|
||
<li><a href="https://djangoriffs.com">Django Riffs</a> - A new podcast
|
||
from Matt Layman.</li>
|
||
<li><a href="https://runninginproduction.com/tags/django">Running in
|
||
Production</a> - Focused on tech stacks with many episodes specifically
|
||
on Django.</li>
|
||
<li><a href="https://talkpython.fm/">TalkPython</a> - The leading Python
|
||
podcast with several episodes on Django.</li>
|
||
<li><a href="https://www.pythonpodcast.com/">Podcast Init</a> - A
|
||
popular Python podcast that features Django guests on occasion.</li>
|
||
<li><a href="https://djangobrew.com/">Django Brew</a> - A fun,
|
||
caffeine-powered podcast about the Django web framework by Adam Hill and
|
||
Sangeeta Jadoonanan!</li>
|
||
</ul>
|
||
<h3 id="videos">Videos</h3>
|
||
<ul>
|
||
<li><a href="https://djangotv.com">DjangoTV</a> - Your source for Django
|
||
conference videos and tutorials.</li>
|
||
<li><a href="https://pyvideo.org">PyVideo</a> - PyVideo is an index of
|
||
Python related media.</li>
|
||
</ul>
|
||
<h3 id="books">Books</h3>
|
||
<p>For a complete listing of in-print books, check out <a
|
||
href="https://djangobook.com/">DjangoBook.com</a>.</p>
|
||
<p><em>Django 5</em> - <a
|
||
href="https://learndjango.com/courses/django-for-apis/">Django for APIs,
|
||
Fifth Edition</a> - <a
|
||
href="https://adamchainz.gumroad.com/l/byddx">Boost Your Django DX</a> -
|
||
<a
|
||
href="https://www.packtpub.com/en-us/product/django-5-by-example-9781805125457">Django
|
||
5 By Example</a> - <a
|
||
href="https://www.manning.com/books/django-in-action">Django in
|
||
Action</a> - <a
|
||
href="https://learndjango.com/courses/django-for-beginners/">Django for
|
||
Beginners, Fifth Edition</a></p>
|
||
<h2 id="hosting">Hosting</h2>
|
||
<h3 id="paas-platforms-as-a-service">PaaS (Platforms-as-a-Service)</h3>
|
||
<ul>
|
||
<li><a href="https://appliku.com">Appliku</a></li>
|
||
<li><a href="https://dokku.com">Dokku</a></li>
|
||
<li><a href="https://www.divio.com">Divio</a></li>
|
||
<li><a href="https://fly.io">Fly</a></li>
|
||
<li><a href="https://cloud.google.com/python/django/">Google
|
||
Cloud</a></li>
|
||
<li><a href="https://www.heroku.com">Heroku</a></li>
|
||
<li><a
|
||
href="https://azure.microsoft.com/en-us/develop/python/">Microsoft
|
||
Azure</a></li>
|
||
<li><a href="https://github.com/piku/piku">Piku</a></li>
|
||
<li><a href="https://platform.sh">Platform.sh</a></li>
|
||
<li><a href="https://www.pythonanywhere.com">PythonAnywhere</a></li>
|
||
<li><a href="https://railway.app">Railway</a></li>
|
||
<li><a href="https://render.com">Render</a></li>
|
||
<li><a href="https://vercel.com/home">Vercel</a></li>
|
||
</ul>
|
||
<h3 id="iaas-infrastructure-as-a-service">IaaS
|
||
(Infrastructure-as-a-Service)</h3>
|
||
<ul>
|
||
<li><a href="https://www.digitalocean.com">Digital Ocean</a></li>
|
||
<li><a href="https://www.linode.com">Linode</a></li>
|
||
<li><a href="https://aws.amazon.com/lightsail/">Amazon
|
||
Lightsail</a></li>
|
||
<li><a href="https://www.hetzner.com">Hetzner</a></li>
|
||
</ul>
|
||
<h2 id="projects">Projects</h2>
|
||
<h3 id="boilerplate">Boilerplate</h3>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/cookiecutter/cookiecutter-django/">cookiecutter-django</a>
|
||
- A full-bodied starter project, highly customizable.</li>
|
||
<li><a
|
||
href="https://github.com/epicserve/django-base-site/">django-base-site</a>
|
||
- A Django site with many common third-party packages
|
||
pre-installed.</li>
|
||
<li><a href="https://github.com/wsvincent/lithium/">djangox</a> -
|
||
Batteries included starter project for Pip, Pipenv, or Docker.</li>
|
||
<li><a href="https://github.com/wsvincent/drfx/">DRFx</a> - A DRF
|
||
starter with user auth, Pipenv, and other goodies.</li>
|
||
<li><a
|
||
href="https://github.com/jpadilla/django-project-template">django-project-template</a>
|
||
- A deliberately basic project that has multiple staging environments
|
||
and Heroku deployment config.</li>
|
||
<li><a
|
||
href="https://github.com/amerkurev/django-docker-template">django-docker-template</a>
|
||
- Dockerized Django with Postgres, Gunicorn, and Traefik (with
|
||
auto-renew Let’s Encrypt).</li>
|
||
<li><a
|
||
href="https://github.com/jefftriplett/django-startproject">django-startproject</a>
|
||
- Django start project template with batteries.</li>
|
||
<li><a
|
||
href="https://github.com/wemake-services/wemake-django-template/">wemake-django-template</a>
|
||
- Bleeding-edge Django template focused on code quality and
|
||
security.</li>
|
||
<li><a
|
||
href="https://github.com/khadegd/django-webpack-starter">django-webpack-starter</a>
|
||
- Django Webpack starter template for using Webpack 4.</li>
|
||
<li><a
|
||
href="https://github.com/erayerdin/sos-django-template">sos-django-template</a>
|
||
- Django starter template with separate dev and production
|
||
settings.</li>
|
||
<li><a
|
||
href="https://github.com/bfirsh/django-docker-heroku-template">django-docker-heroku-template</a>
|
||
- A template with Docker, GitHub Actions, and Heroku set up for
|
||
dev/test/prod, plus various other best practices.</li>
|
||
<li><a
|
||
href="https://github.com/ilikerobots/cookiecutter-vue-django">cookiecutter-vue-django</a>
|
||
- Django + Vue starter project fusing Vue SFCs & Django
|
||
Templates.</li>
|
||
<li><a href="https://github.com/jayfk/launchr">launchr</a> - Launchr is
|
||
a specialized Django starter template for SaaS web apps.</li>
|
||
<li><a href="https://github.com/stribny/sidewinder/">sidewinder</a> - A
|
||
Django starter kit that focuses on good defaults, developer experience,
|
||
and deployment.</li>
|
||
<li><a href="https://github.com/falcopackages/falco-cli">Falco</a> -
|
||
Enhance your Django developer experience: CLI and Guides for the Modern
|
||
Django Developer.</li>
|
||
<li><a href="https://github.com/piepworks/blaze-starter">Blaze.horse</a>
|
||
- A Django starter kit with reins and saddle included!</li>
|
||
</ul>
|
||
<h3 id="open-source-projects">Open Source Projects</h3>
|
||
<ul>
|
||
<li><a
|
||
href="https://github.com/wsvincent/djangoforbeginners/tree/master/ch7-blog-app-with-users/">Blog
|
||
app with users and forms</a></li>
|
||
<li><a
|
||
href="https://github.com/wsvincent/djangoforbeginners/tree/master/ch15-comments">Newspaper
|
||
app with custom user model, full user auth</a></li>
|
||
<li><a href="https://github.com/sebst/pythonic-news">pythonic-news</a> -
|
||
Hacker News clone.</li>
|
||
<li><a
|
||
href="https://github.com/testdrivenio/django-aloe-bdd/">Behavior-Driven
|
||
Development with Aloe</a></li>
|
||
<li><a href="https://github.com/MeNsaaH/soMedia">Image Sharing
|
||
Blog</a></li>
|
||
<li><a href="https://github.com/vitorfs/bootcamp">Bootcamp: An
|
||
enterprise social network</a></li>
|
||
<li><a href="https://github.com/zulip/zulip/">Zulip</a> - Open-source
|
||
team chat.</li>
|
||
<li><a href="https://github.com/MicroPyramid/Django-CRM/">Django-CRM</a>
|
||
- Open Source Python CRM based on Django.</li>
|
||
<li><a
|
||
href="https://github.com/manjurulhoque/django-job-portal">django-job-portal</a>
|
||
- Job portal application using Django.</li>
|
||
<li><a href="https://builtwithdjango.com">Built with Django</a> -
|
||
Curated list of awesome Django projects.</li>
|
||
<li><a href="https://github.com/PostHog/posthog">PostHog</a> -
|
||
Open-source product analytics.</li>
|
||
<li><a href="https://gitlab.com/mailman/hyperkitty">HyperKitty</a> - A
|
||
web interface to access GNU Mailman v3 archives.</li>
|
||
<li><a
|
||
href="https://github.com/healthchecks/healthchecks">Healthchecks</a> - A
|
||
Cron Monitoring Tool written in Python & Django.</li>
|
||
<li><a href="https://github.com/Flagsmith/flagsmith">Flagsmith</a> -
|
||
Open-source Feature Flagging, Remote Config, and AB testing.</li>
|
||
<li><a href="https://github.com/JSv4/OpenContracts">OpenContracts</a> -
|
||
Enterprise-grade document analytics platform that combines automated PDF
|
||
parsing, vector embeddings, and LLM integration.</li>
|
||
<li><a href="https://gitlab.com/baserow/baserow">Baserow</a> - Open
|
||
source no-code database and Airtable alternative built with Django and
|
||
Vue.js.</li>
|
||
<li><a href="https://github.com/DjangoCRM/django-crm">Django CRM
|
||
Admin</a> - Open source Python CRM built entirely on Django Admin
|
||
Site.</li>
|
||
<li><a href="https://github.com/sissbruecker/linkding">linkding</a> -
|
||
Self-hosted bookmark manager that is designed to be minimal, fast, and
|
||
easy to set up using Docker.</li>
|
||
</ul>
|
||
<h2 id="django-rest-framework">Django REST Framework</h2>
|
||
<p><em>The most popular way to build web APIs with Django.</em></p>
|
||
<h3 id="drf-resources">DRF Resources</h3>
|
||
<!--lint disable double-link-->
|
||
<ul>
|
||
<li><a href="https://www.django-rest-framework.org/">Official
|
||
Documentation</a></li>
|
||
<li><a href="https://github.com/encode/django-rest-framework">DRF Source
|
||
Code</a></li>
|
||
<li><a
|
||
href="https://github.com/nioperas06/awesome-django-rest-framework">awesome-django-rest-framework</a>
|
||
<!--lint enable double-link--></li>
|
||
</ul>
|
||
<h3 id="drf-tutorials">DRF Tutorials</h3>
|
||
<!--lint ignore double-link-->
|
||
<ul>
|
||
<li><a
|
||
href="https://learndjango.com/tutorials/official-django-rest-framework-tutorial-beginners">Official
|
||
REST Framework - A Beginner’s Guide</a></li>
|
||
<li><a
|
||
href="https://books.agiliq.com/projects/django-api-polls-tutorial/en/latest/">Building
|
||
APIs with Django and DRF</a></li>
|
||
<li><a href="https://www.valentinog.com/blog/drf/">DRF with
|
||
React</a></li>
|
||
<li><a
|
||
href="https://fractalideas.com/blog/making-react-and-django-play-well-together/">Making
|
||
React and Django play well together</a></li>
|
||
</ul>
|
||
<h2 id="wagtail">Wagtail</h2>
|
||
<p><em>Wagtail, the powerful CMS for modern websites.</em></p>
|
||
<h3 id="wagtail-resources">Wagtail Resources</h3>
|
||
<!--lint disable double-link-->
|
||
<ul>
|
||
<li><a href="https://wagtail.org/">Official website</a></li>
|
||
<li><a href="https://docs.wagtail.org/en/stable/">Developer
|
||
documentation</a></li>
|
||
<li><a href="https://guide.wagtail.org/en-latest/">User
|
||
documentation</a></li>
|
||
<li><a href="https://github.com/wagtail/wagtail/">Wagtail Source
|
||
Code</a></li>
|
||
<li><a
|
||
href="https://github.com/springload/awesome-wagtail">awesome-wagtail</a></li>
|
||
<li><a href="https://wagtail.org/this-week-in-wagtail/">This week in
|
||
Wagtail</a> - A (most) weekly email with updates from the Wagtail core
|
||
team.</li>
|
||
<li><a href="https://www.wagtail.space/">Wagtail Space</a> - Wagtail
|
||
conferences around the world.</li>
|
||
<li><a href="https://wagtail.org/events/">Wagtail events</a> - Online
|
||
and in-person Wagtail events. <!--lint enable double-link--></li>
|
||
</ul>
|
||
<p><a href="https://github.com/wsvincent/awesome-django">django.md
|
||
Github</a></p>
|