Git Product home page Git Product logo

awesome-django's Introduction

Awesome Django Awesome

Fork me on GitHub

A curated list of awesome things related to Django. Maintained by William Vincent and Jeff Triplett.


Dark and Light mode version of the Django logo

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-grappelli - A jazzy skin for the admin.
  • django-jazzmin - Drop-in theme for django admin, that utilises AdminLTE 3 & Bootstrap 4 to make yo' admin look jazzy.
  • 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-honeypot - Configure a honeypot to see who's trying to hack your site.
  • django-loginas - "Log in as user" for the Django admin.
  • impostor - Impostor is a Django application which allows staff members to login 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-admin-interface - Customize Admin by the admin itself(color, header. title,logo) and popup windows replaced by modals.
  • django-material-admin - Material design for django administration.
  • django-related-admin - A helper library that allows you to write list_displays accross foreign key relationships.
  • django-semantic-admin - Django Semantic UI admin theme.
  • django-jet-reboot - Django Jet is modern template for Django admin interface with improved functionality.
  • django-baton - A cool, modern and responsive django admin application based on bootstrap 5.
  • django-admin-sortable2 - Generic drag-and-drop ordering for objects in the Django admin interface.
  • django-unfold - Modern Django admin theme for seamless interface development

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.
  • 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.

Forms

Full-stack frameworks

  • 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.
  • iommi - Toolkit for development of CRUD applications without writing HTML or JavaScript.

General

  • django-data-browser - Interactive, user-friendly database explorer.
  • django-filter - Powerful filters based on Django QuerySets.
  • django-guardian - Per object permissions in Django.
  • 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.

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

Model Fields

Models

Performance

  • 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.

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.

Templates

  • curlylint - Experimental HTML templates linting for Jinja, Nunjucks, Django templates, Twig, Liquid.
  • django-components - A way to create simple reusable template components in Django.
  • django-template-partials - Reusable named inline partials for the Django Template Language.
  • djhtml - Django/Jinja template indenter.
  • djlint - Lint & Format HTML Templates.
  • slippers - Build reusable components in Django without writing a single line of Python.
  • JinjaX - Super components powers for your Jinja templates.

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

Python Packages

A short list of Python packages that work well with Django.

Resources

Official Resources

Educational

Community

  • Django Forum - Official Discourse board.
  • Community Page - Featuring feeds of Community Blog Posts, Jobs, and more.
  • Django Users Google Group - Very active discussion board for questions/answers.
  • Developers Google Group - For contributions to Django itself only.
  • Mastodon - For official announcements on updates, security fixes, etc.
  • Twitter - For official announcements on updates, security fixes, etc.
  • Discord Server - Django Discord Community.
  • IRC Channel - Chat with other Django users at irc://irc.freenode.net/django.
  • Djangonaut Space - Free peer-mentoring program for the Django community to launch people into the universe of open source contributions.

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.

Books

Django 5.0

Django 4.2

Django 4.0

Django 3.2

Hosting

PaaS (Platforms-as-a-Service)

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.
  • docker-django - A quick starter guide for Django and Docker together.
  • 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.

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

awesome-django's People

Contributors

adamchainz avatar adinhodovic avatar avallbona avatar cmoney667 avatar corentinbettiol avatar danihodovic avatar ebertti avatar fabiocaccamo avatar gitron avatar ilikerobots avatar ish-u avatar jayfk avatar jefftriplett avatar jonathan-s avatar julianwachholz avatar lnxpy avatar marjinal1st avatar matin-b avatar mensaah avatar morenoh149 avatar plapa avatar saeedblanchette avatar snejus avatar sondrelg avatar thearjun avatar thibaudcolas avatar tim-schilling avatar vitalik avatar wsvincent avatar yashikakhurana avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

awesome-django's Issues

docker

Thoughts on adding a Docker section with some basic resources?

:art: Update our template

We should find a nicer-looking template for the domain since the existing one was a 30 minutes quick project.

Tango with Django

I may be biased, but is there any chance that Tango with Django can be added to the list of books? It works with 2.0, 2.1 and 2.2, and is aimed at beginners.

Request to add graphene-django-filter

Project Information

  1. Project Name: graphene-django-filter
  2. Project URL: https://github.com/devind-team/graphene-django-filter
  3. Description: This package contains advanced filters for graphene-django. The standard filtering feature in graphene-django relies on the django-filter library and therefore provides the flat API without the ability to use logical operators such as and, or and not

Criteria

  1. Is the project new?

    • Yes
    • No
  2. How long has the project been maintained?
    Approximately 1.5 years

  3. How many releases has it had if it's a library or package?
    https://github.com/devind-team/graphene-django-filter/releases

  4. Are you the author or are you submitting the project on behalf of a company?

    • I am the author
    • I am submitting on behalf of a company
    • Other - I am a contributor
  5. What makes it awesome?
    This library helps in adding advanced filtering capabilities on top of existing graphene-django package in a very minimally invasive way. The standard filtering feature in graphene-django relies on the django-filter library and therefore provides the flat API without the ability to use logical operators such as and, or and not. This library makes the API nested and adds logical expressions by extension of the DjangoFilterConnectionField field and the FilterSet class. Also, the library provides some other convenient filtering features.

Additional Information

This project is successfully being used in production by many teams, and is a life saver for existing graphene-django based projects which need advanced filtering capability. Automated build actions including test suite runner, coverage and coveralls are set up for this project ensuring new versions are bug free.

Coverage from latest build (as of June 2023): https://coveralls.io/jobs/123065040

Thank you for considering adding graphene-django-filter to the Awesome Django list!

Xadmin needs to be removed

The last commit on xadmin was a year ago and there are 355 issues currently open. The demo is also not working. The devs are unfortunately not responding to queries or pull requests.

Suggestion: Add async/ASGI support symbol or similar to packages that support these technologies

With Django3.1 out and 3.2 just around the corner it would be beneficial to me to know which packages is fully async/ASGI compatible and which are not.

As an example, django-guid version 2.2.0 does not support ASGI due to using of threading, which obviously will break in an ASGI environment. Most requests will have the same thread, so the entire logic falls apart. With the new release coming up(not pushed yet, will most likely be this week), it will have full ASGI support. I assume there is plenty more packages like this, or which has huge performance impact of being async. I'd love if I could see an ASGI or async mark behind the package name if it's updated to support these technologies.

Request to Add django-modeltranslation to Awesome Django List

Project Information

  1. Project Name: django-modeltranslation
  2. Project URL: https://github.com/deschler/django-modeltranslation
  3. Description: Django-modeltranslation is a Django app that provides an easy way to translate Django model fields.

Criteria

Please answer the following questions about the project you are submitting. This will help us evaluate if the project should be included in the Awesome Django list.

  1. Is the project new?

    • Yes
    • No
  2. How long has the project been maintained?
    Approximately 4 years.

  3. How many releases has it had if it's a library or package?
    The project has had multiple releases. The release history can be found at: https://github.com/deschler/django-modeltranslation/releases

  4. Are you the author or are you submitting the project on behalf of a company?

    • I am the author
    • I am submitting on behalf of a company
    • Other (please specify)
  5. What makes it awesome?
    Django-modeltranslation is a valuable addition to the Awesome Django list because it provides a seamless way to translate Django model fields, allowing developers to easily build multilingual websites or applications. It offers a simple and intuitive API to define translated fields and handles the database schema and form serialization automatically. This greatly simplifies the process of managing translations within Django projects and contributes to making Django a powerful and versatile framework for building internationalized applications.

Additional Information

The project has comprehensive documentation available at: https://django-modeltranslation.readthedocs.io/

It has a strong community support with a considerable number of stars, forks, and active contributors on GitHub.

Django-modeltranslation has been widely adopted and successfully used in various production applications. It has proven to be reliable and efficient in handling multilingual content, and it continues to receive maintenance and updates from the community.

Thank you for considering adding django-modeltranslation to the Awesome Django list!

Sequence request

Hello Vincent!
Can you please order books by 'level' as beginner, intermediate, expert/for professionals?

It will help people to choose right book for themselves.

🤔 Issue template ideas

We need an issue template to help with some expectations. Here is my quick riff on what we might want:


Our goal with Awesome Django is to highlight packages that we think are awesome and stand out above the rest.

Our goal isn't to be a comprehensive directory of 1000+ projects like Django Packages.

We are looking for projects that are:

  • relevant to Django
  • maintained
  • release and support history
  • stand out because they are useful and solve a unique problem
  • we can't ignore your star count, but we don't have a high number in mind.

What we are NOT looking out for:

  • unmaintained projects
  • promote your project, service, or employer

  • What makes this product awesome?
  • Are you the author or a maintainer? (no points off for self-promotion)
  • If your project is brand new, we don't have a minimum number of GH stars, but your project needs "enough" stars.
  • Is this project maintained?
  • If your project is published on PyPI, is there a history/pattern of keeping it updated?
  • If your project/service is a paid product, do you work for the same company? (emphasis on disclosure vs. promoting your product/service/company)
  • Django and Python are trademarked by their respective foundations, if your product, paid service, and/or domain name use these trademarks, do you have their permission to do so?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.