awesome-django/README.md

285 lines
17 KiB
Markdown
Raw Normal View History

<div align="center">
<a href="https://awesome.re"><img src="https://awesome.re/badge-flat.svg" /></a>
2019-01-10 16:15:24 +00:00
<br /><br />
<img width="400" src="django-logo.svg" alt="Django logo">
</div>
2019-01-10 16:02:38 +00:00
# Awesome Django
2018-04-11 13:01:07 +00:00
2018-11-08 18:05:21 +00:00
> A curated list of awesome things related to Django.
2018-04-11 13:01:07 +00:00
## Contents
2018-04-11 13:01:07 +00:00
2019-01-16 14:23:47 +00:00
- [Resources](#resources)
2019-02-26 16:48:37 +00:00
- [Official](#official-resources)
- [External](#external-resources)
2019-01-16 17:27:12 +00:00
- [Community](#community)
- [Conferences](#conferences)
- [YouTube Channels](#conference-youtube-channels)
- [Meetups](#meetups)
- [Podcasts](#podcasts)
2019-01-16 14:23:47 +00:00
- [Third-Party Packages](#third-party-packages)
- [Tutorials](#tutorials)
- [Beginner](#beginner-tutorials)
- [Intermediate/Advanced](#intermediate-advanced)
- [Docker](#docker)
- [Boilerplate](#boilerplate)
- [Open Source Apps](#open-source-apps)
- [Open Source Projects](#open-source-projects)
- [Django REST Framework](#django-rest-framework)
- [Resources](#drf-resources)
- [Tutorials](#drf-tutorials)
- [DRF Boilerplate](#drf-boilerplate)
- [Open Source Apps](#drf-open-source-apps)
- [Books](#books)
- [Courses](#courses)
2019-01-16 14:31:55 +00:00
- [Videos](#videos)
2019-01-16 17:25:28 +00:00
- [Free Videos](#free-videos)
- [Paid Videos](#paid-videos)
2018-04-11 13:04:07 +00:00
2018-04-11 13:01:07 +00:00
## Resources
### Official Resources
2019-01-28 20:03:40 +00:00
- [Project Website](https://www.djangoproject.com/)
- [Documentation](https://docs.djangoproject.com/en/dev/)
- [Polls Tutorial](https://docs.djangoproject.com/en/dev/intro/tutorial01/)
- [Source Code](https://github.com/django/django)
2018-04-26 13:39:51 +00:00
2019-01-10 14:49:00 +00:00
### External Resources
- [Django Packages](https://djangopackages.org/) - Comprehensive directory of reusable Django apps and tools.
2019-01-28 20:03:40 +00:00
- [Classy Class-Based Views](http://ccbv.co.uk/) - Detailed descriptions of methods/properties/attributes for each generic class-based view.
- [Classy Django Forms](https://cdf.9vo.lt/) - Detailed descriptions of methods/properties/attributes for each form class.
- [Classy Django REST Framework](http://www.cdrf.co/) - Detailed descriptions with methods/attributes for DRF class-based views and serializers.
- [Django Sites](https://www.djangosites.org/) - Comprehensive listing of sites built with Django.
- [Pony Checkup](https://www.ponycheckup.com/) - Security checkups for Django sites.
- [Django Hunter](https://github.com/6IX7ine/djangohunter) - Tool to help identify incorrectly configured Django applications that are exposing sensitive information.
2019-03-27 01:12:49 +00:00
- [Will Vincent's Website](https://wsvincent.com) - Up-to-date tutorials on Django and Django REST Framework.
- [Simple is Better than Complex](https://simpleisbetterthancomplex.com/) - Regularly updated website with many tutorials and tips on Django.
- [Full Stack Python's Django Page](https://www.fullstackpython.com/django.html) - Explanation of Django philosophy and links to other resources and tutorials.
2019-01-28 20:03:40 +00:00
- [RealPython](https://realpython.com/tutorials/django/) - Many high-quality tutorials on Django.
- [TestDriven](https://testdriven.io/blog/) - Multiple Django-specific tutorials on topics like Docker, payments, and more.
2019-01-10 14:49:00 +00:00
### Community
2019-01-28 20:03:40 +00:00
- [Users Google Group](https://groups.google.com/forum/#!forum/django-users) - Very active discussion board for questions/answers.
- [Developers Google Group](https://groups.google.com/forum/#!forum/django-developers) - For contributions to Django itself only.
- [Twitter](https://twitter.com/djangoproject) - For official announcements on updates, security fixes, etc.
2019-01-28 20:03:40 +00:00
- IRC Channel - Chat with other Django users at irc://irc.freenode.net/django
2019-01-10 14:49:00 +00:00
2019-01-10 14:58:19 +00:00
### Conferences
- [DjangoCon US](https://2019.djangocon.us/)
- [DjangoCon Europe](https://2019.djangocon.eu/)
- [DjangoCon Australia](https://2018.djangocon.com.au/)
- [PyCon US](https://us.pycon.org/2019/)
- [Euro Python](https://ep2019.europython.eu/)
- [Complete listing of all PyCons globally](https://www.pycon.org/)
2019-01-10 14:58:19 +00:00
2019-01-16 14:23:47 +00:00
### Conference YouTube Channels
- [DjangoCon US](https://www.youtube.com/channel/UC0yY6a79pPY9J0ShIHRf6yw)
- [DjangoCon Europe](https://www.youtube.com/user/djangoconeurope)
- [PyCon US](https://www.youtube.com/channel/UCsX05-2sVSH7Nx3zuk3NYuQ)
- [EuroPython](https://www.youtube.com/user/PythonItalia)
- [PyCon Australia](https://www.youtube.com/user/PyConAU)
- [Django Under the Hood](https://www.youtube.com/channel/UC9T1dhIlL_8Va9DxvKRowBw/videos)
2019-01-16 14:23:47 +00:00
2019-01-10 14:58:19 +00:00
### Meetups
- [Meetups](https://www.meetup.com/topics/django/all/) - 400+ Meetup groups in 65 countries.
2019-01-10 14:58:19 +00:00
2019-01-10 15:03:33 +00:00
### Podcasts
- [Django Chat](https://djangochat.com) - A weekly podcast featuring discussions of core Django concepts and regular guests.
- [TalkPython](https://talkpython.fm/) - The most popular Python podcast with select episodes on Django.
- [Podcast Init](https://www.podcastinit.com/) - The 2nd most popular Python podcast that features Django guests on occasion.
2019-01-10 15:12:14 +00:00
## Third-Party Packages
_For a complete listing of all available packages, see [Django Packages](https://djangopackages.org/)_
2018-04-11 13:01:07 +00:00
2019-03-06 14:17:41 +00:00
- [channels](https://github.com/django/channels/) - Async support for Django
2019-04-03 18:44:57 +00:00
- [django-allauth](https://github.com/pennersr/django-allauth/) - Improved user registration including social auth
- [django-autocomplete-light](https://github.com/yourlabs/django-autocomplete-light) - Add autocompletion to forms
- [django-compressor](https://github.com/django-compressor/django-compressor/) - Compress JavaScript/CSS into a single cached file
- [django-crispy-forms](https://github.com/django-crispy-forms/django-crispy-forms/) - DRY Django forms
2019-03-26 13:39:40 +00:00
- [dj-database-url](https://github.com/kennethreitz/dj-database-url) - Database URLs
- [django-debug-toolbar](https://github.com/jazzband/django-debug-toolbar/) - Configurable panels to debug requests/responses
- [django-environ](https://github.com/joke2k/django-environ) - Environment variables
- [django-extensions](https://github.com/django-extensions/django-extensions/) - Custom management extensions, notably `runserver_plus` and `shell_plus`
2019-04-03 18:47:04 +00:00
- [django-extra-views](https://github.com/AndrewIngram/django-extra-views) - Extra class-based generic views
- [django-filter](https://github.com/carltongibson/django-filter) - Powerful filters based on Django QuerySets
- [django-guardian](https://github.com/django-guardian/django-guardian) - Per object permissions in Django
- [django-hijack](https://github.com/arteria/django-hijack) - Admins can log in and work on behalf of other users without having to know their credentials
- [django-model-utils](https://github.com/jazzband/django-model-utils) - Django model mixins and utilities
2019-03-26 13:39:40 +00:00
- [django-organizations](https://github.com/bennylope/django-organizations/) - Multi-user accounts for Django projects
2019-03-06 14:17:41 +00:00
- [django-reversion](https://github.com/etianen/django-reversion) - Version control for model instances
2019-04-03 18:44:57 +00:00
- [django-shapeshifter](https://github.com/kennethlove/django-shapeshifter) - A CBV to handle multiple forms in one view
- [django-silk](https://github.com/jazzband/django-silk) - Live profiling and inspection of HTTP requests and database queries
2019-04-03 18:48:25 +00:00
- [django-sql-explorer](https://github.com/groveco/django-sql-explorer) - Share data via SQL queries
- [django-storages](https://github.com/jschneier/django-storages) - A single library to support multiple custom storage backends for Django
- [django-tables2](https://github.com/jieter/django-tables2) - HTML tables with pagination/sorting
2019-04-03 18:47:04 +00:00
- [django-taggit](https://github.com/jazzband/django-taggit/) - Simple model tags
- [django-test-plus](https://github.com/revsys/django-test-plus/) - Useful additions to Django's default TestCase
- [easy-thumbnails](https://github.com/SmileyChris/easy-thumbnails) - Image thumbnails for Django
2019-03-06 14:17:41 +00:00
- [django-vanilla-views](https://github.com/tomchristie/django-vanilla-views) - Simpler class-based views in Django
- [django-watson](https://github.com/etianen/django-watson) - Full-text search plugin
- [pytest-django](https://github.com/pytest-dev/pytest-django) - Use pytest features in Django
- [wagtail](https://github.com/wagtail/wagtail) - Popular Django content management system (CMS)
- [whitenoise](https://github.com/evansd/whitenoise) - Simplified static file serving for Python websites
2019-03-26 13:39:40 +00:00
*Django REST Framework*
2019-03-13 12:56:19 +00:00
- [django-cors-headers](https://github.com/OttoYiu/django-cors-headers)
- [django-rest-auth](https://github.com/Tivix/django-rest-auth) - REST API endpoints for authentication and registration
- [django-rest-framework](https://github.com/encode/django-rest-framework) - Web APIs for Django
- [django-rest-framework-simplejwt](https://github.com/davesque/django-rest-framework-simplejwt) - JSON web tokens for DRF
- [django-rest-swagger](https://github.com/marcgibbons/django-rest-swagger) - API document generator for Swagger UI
## Tutorials
### Beginner Tutorials
- [Django Girls Tutorial](https://tutorial.djangogirls.org/en/) - Use function-based views to build a blog app.
- [Django for Beginners](https://djangoforbeginners.com/) - Use class-based views to build three apps of increasing complexity (part of a full-length book).
- [Mozilla Tutorial](https://developer.mozilla.org/en-US/docs/Learn/Server-side/Django) - Create a lending library app.
- [A Complete Beginner's Guide to Django](https://simpleisbetterthancomplex.com/series/beginners-guide/1.11/) - In-depth and excellent walkthrough of a new Django app
- [Build a HackerNews clone](https://medium.com/@danieldng/a-little-hacker-news-in-django-part-1-f12aa81dc25d) - Very well-done tutorial for Django 2.0.
2018-04-11 13:01:07 +00:00
### Intermediate/Advanced Tutorials
- [Django Stripe Tutorial](https://testdriven.io/blog/django-stripe-tutorial/)
- [Setting up Stripe Connect with Django](https://testdriven.io/blog/setting-up-stripe-connect-with-django/)
- [Storing Django Static and Media Files on Amazon S3](https://testdriven.io/blog/storing-django-static-and-media-files-on-amazon-s3)
2019-02-26 22:20:18 +00:00
- [Python and Django Logging in Plain English](https://djangodeconstructed.com/2018/12/18/django-and-python-logging-in-plain-english/)
2018-11-16 15:14:39 +00:00
### Docker Tutorials
2019-01-16 14:23:47 +00:00
_Docker is commonly used to work with production-level databases locally like PostgreSQL or MySQL._
2018-04-26 13:39:51 +00:00
- [A Beginner's Guide to Docker](https://wsvincent.com/beginners-guide-to-docker/)
- [A Brief Intro to Docker for Djangonauts](https://www.revsys.com/tidbits/brief-intro-docker-djangonauts/)
- [How to use Django, Docker, and PostgreSQL](https://wsvincent.com/django-docker-postgresql/)
- [Docker for Django Developers (slides)](https://mherman.org/presentations/dockercon-2018/#1)
- [Dockerizing Django with Postgres, Gunicorn, and Nginx](https://testdriven.io/blog/dockerizing-django-with-postgres-gunicorn-and-nginx)
2018-04-11 13:01:07 +00:00
## Boilerplate
2018-04-26 13:39:51 +00:00
- [cookiecutter-django](https://github.com/pydanny/cookiecutter-django) - A full-bodied starter project, highly customizable.
- [djangox](https://github.com/wsvincent/djangox) - A simpler approach with complete user authentication flow, Pipenv, and more.
- [django-starter-project](https://github.com/jpadilla/django-project-template) - A deliberately basic project that has multiple staging environments and Heroku deployment config.
- [docker-django](https://github.com/erroneousboat/docker-django) - A quick starter guide for Django and Docker together.
2019-02-05 21:05:30 +00:00
- [wemake-django-template](https://github.com/wemake-services/wemake-django-template) - Bleeding edge django template focused on code quality and security.
2018-04-26 13:39:51 +00:00
## Open Source Apps
2018-04-26 13:39:51 +00:00
- [Hello, World app](https://github.com/wsvincent/djangoforbeginners/tree/master/ch2-hello-world-app)
- [Message Board app](https://github.com/wsvincent/djangoforbeginners/tree/master/ch4-message-board-app)
- [Blog app with users and forms](https://github.com/wsvincent/djangoforbeginners/tree/master/ch7-blog-app-with-users)
- [Newspaper app with custom user model, full user auth](https://github.com/wsvincent/djangoforbeginners/tree/master/ch15-comments)
- [Behavior-Driven Development with Aloe](https://github.com/testdrivenio/django-aloe-bdd)
- [Image Sharing Blog](https://github.com/MeNsaaH/soMedia)
2018-04-26 13:39:51 +00:00
## Open Source Projects
2018-04-26 13:39:51 +00:00
- [wagtail](https://github.com/wagtail/wagtail) - Very popular Django-based content management system
- [Zulip](https://github.com/zulip/zulip) - Open-source team chat
- [django-oscar](https://github.com/django-oscar/django-oscar) - E-commerce for Django
- [django-cms](https://github.com/divio/django-cms) - CMS for Django
- [saleor](https://github.com/mirumee/saleor) - E-commerce storefront
2019-02-06 14:46:29 +00:00
- [Django-CRM](https://github.com/MicroPyramid/Django-CRM) - Open Source Python CRM based on Django
2018-11-08 18:11:23 +00:00
2018-05-31 00:35:43 +00:00
## Django REST Framework
2018-04-26 13:39:51 +00:00
_The most popular way to build web APIs with Django._
2018-04-11 17:31:07 +00:00
2018-04-11 17:32:31 +00:00
### DRF Resources
2018-04-26 13:39:51 +00:00
- [Official Documentation](http://www.django-rest-framework.org/)
- [DRF Source Code](https://github.com/encode/django-rest-framework)
- [DRF](https://github.com/nioperas06/awesome-django-rest-framework)
2018-04-11 17:31:07 +00:00
2018-04-11 17:32:31 +00:00
### DRF Tutorials
2018-04-26 13:39:51 +00:00
- [Official REST Framework - A Beginner's Guide](https://wsvincent.com/official-django-rest-framework-tutorial-beginners-guide/)
- [DRF Blog API](https://wsvincent.com/django-rest-framework-tutorial/)
- [Building APIs with Django and DRF](https://books.agiliq.com/projects/django-api-polls-tutorial/en/latest/)
- [DRF Serializers, Viewsets, and Routers](https://wsvincent.com/django-rest-framework-serializers-viewsets-routers/)
- [DRF Todo API with User Auth](https://wsvincent.com/django-rest-framework-authentication-tutorial/)
- [DRF User Authentication](https://wsvincent.com/django-rest-framework-user-authentication-tutorial/)
- [DRF with React: Todo API](https://wsvincent.com/django-rest-framework-react-tutorial/)
- [DRF with React](https://www.valentinog.com/blog/tutorial-api-django-rest-react/)
- [Making React and Django play well together](https://fractalideas.com/blog/making-react-and-django-play-well-together/)
2018-04-11 17:31:07 +00:00
### DRF Boilerplate
2018-04-26 13:39:51 +00:00
- [DRFx](https://github.com/wsvincent/drfx)
2018-04-11 17:31:07 +00:00
### DRF Open Source Apps
2018-04-19 17:57:29 +00:00
- [DRF Polls](https://github.com/wsvincent/drf-polls) - API of the official Django polls tutorial
- [DRF Blog](https://github.com/wsvincent/drf-blog-api) - Basic Blog API
- [ECGC](https://github.com/flowerncsu/ecgc-2017) - Example from DjangoCon 2017 talk [Write an API for Almost Anything](https://www.youtube.com/watch?v=-6tR5TffP0w)
2018-04-11 17:31:07 +00:00
2019-01-16 14:23:47 +00:00
## Books
2018-04-26 13:39:51 +00:00
_Django 2.1_
- [Django for Beginners: Build websites with Python and Django](https://djangoforbeginners.com/)
- [REST APIs with Django: Build web APIs with Python and Django](https://restapiswithdjango.com/)
2019-02-26 16:48:37 +00:00
- [Build Your First Website with Django 2.1](https://transactions.sendowl.com/stores/9897/130290)
- [Practical Django 2 and Channels 2](https://www.amazon.com/dp/1484240987/?tag=wsvincent-20)
- [Django 2 Web Development Cookbook](https://www.amazon.com/dp/1788837681/?tag=wsvincent-20)
_Django 2.0_
- [Hello Web App 2.0](https://hellowebbooks.com/learn-django/)
2019-02-26 16:48:37 +00:00
- [Django Design Patterns and Best Practices](https://www.amazon.com/dp/1788831349/?tag=wsvincent-20)
- [Django 2 by Example](https://www.amazon.com/dp/1788472489/?tag=wsvincent-20)
_Django 1.11_
2019-02-26 16:48:37 +00:00
- [Two Scoops of Django: Best Practices for Django 1.11](https://www.amazon.com/dp/0692915729/?tag=wsvincent-20)
- [Test-Driven Development with Python](https://www.amazon.com/dp/1491958707/?tag=wsvincent-20)
- [Django RESTful Web Services](https://www.amazon.com/dp/1788833929/?tag=wsvincent-20)
- [Beginning Django](https://www.amazon.com/dp/1484227867/?tag=wsvincent-20)
2019-01-16 14:23:47 +00:00
## Courses
2019-02-26 16:48:37 +00:00
- [Develop a Real-Time Taxi App with Django Channels and Angular](https://testdriven.io/affiliates/e4245ba649f3/)
2018-04-11 13:01:07 +00:00
2019-01-16 14:31:55 +00:00
## Videos
2019-01-14 15:01:37 +00:00
2019-01-16 17:25:28 +00:00
### Free Videos
_Django 2.1_
2019-01-16 14:23:47 +00:00
- [Django Authentication Tutorial by Vitor Freitas](https://youtu.be/60GTvKCuam8?list=PLLxk3TkuAYnryu1lEcFaBr358IynT7l7H)
- [Build a Startup with Django by CSDojo](https://youtu.be/UyQn0BhVqNU)
- [Just Django](https://www.youtube.com/channel/UCRM1gWNTDx0SHIqUJygD-kQ)
2019-01-14 15:01:37 +00:00
_Django 2.0_
2019-01-16 14:23:47 +00:00
- [Build a Guestbook (30-part series) by Pretty Printed](https://www.youtube.com/watch?v=QVX-etwgvJ8&list=PLXmMXHVSvS-DQfOsQdXkzEZyD0Vei7PKf)
- [Blog Tutorial by Corey Schafer](https://youtu.be/UmljXZIypDc?list=PL-osiE80TeTtoQCKZ03TU5fNfx2UY6U4p)
- [CS50's Web Programming with Python and JavaScript](https://www.youtube.com/playlist?list=PLhQjrBD2T382hIW-IsOVuXP1uMzEvmcE5)
2019-01-14 15:27:37 +00:00
_Django 1.11_
2019-01-16 14:23:47 +00:00
- [Todo App by Traversy Media](https://youtu.be/2yXfUPwlZTw)
- [Django Crash Course by Traversy Media](https://youtu.be/D6esTdOLXh4)
2019-01-14 15:01:37 +00:00
2019-01-16 17:25:28 +00:00
### Paid Videos
2019-02-26 16:48:37 +00:00
- [Build Backend Web Apps and APIs with Django](https://www.oreilly.com/library/view/web-development-in/9780134659824/) - 9 hour course from Andrew Pinkham, author of [Django Unleashed](https://www.amazon.com/dp/0321985079/?tag=wsvincent-20), covering APIs, data manipulation, and deployment to Heroku.
- [Build a Real Estate App](https://click.linksynergy.com/link?id=1*FmkJFU6n4&offerid=507388.1952540&type=2&murl=https%3A%2F%2Fwww.udemy.com%2Fpython-django-dev-to-deployment%2F) - 11 hour course by Brad Traversy on building a real estate app with PostgreSQL and deploying to Digital Ocean.
- [Ultimate Web Development Bootcamp](https://click.linksynergy.com/link?id=1*FmkJFU6n4&offerid=507388.1562632&type=2&murl=https%3A%2F%2Fwww.udemy.com%2Fthe-ultimate-beginners-guide-to-django-django-2-python-web-dev-website%2F) - 10 hour course building three apps--word counter, personal portfolio, product hunt clone--and deploying to Digital Ocean.
2019-01-16 17:25:28 +00:00
2018-04-11 13:01:07 +00:00
### License
2018-04-26 13:39:51 +00:00
2018-04-11 13:01:07 +00:00
[![CC0](http://i.creativecommons.org/p/zero/1.0/88x31.png)](http://creativecommons.org/publicdomain/zero/1.0/)
2019-02-26 16:48:37 +00:00
> Some links contain affiliate codes which help me justify the time to keep this list up-to-date.