# Awesome Django > A curated list of awesome things related to Django ## Table of Contents * [Table of Contents](#table-of-contents) * [Resources](#resources) * [Official Resources](#official-resources) * [General Tutorials](#general-tutorials) * [External Resources](#external-resources) * [Starter Projects](#starter-projects) * [Example Apps: Beginner](#example-apps-beginner) * [Example Apps: Advanced](#example-app-advanced) * [Third-Party Packages](#third-party-packages) * [Django Rest Framework](#django-rest-framework) * [Resources](#drf-resources) * [General Tutorials](#drf-tutorials) * [DRF and React Tutorials](#drf-and-react-tutorials) * [Starter Projects](#drf-starter-projects) * [Example Apps](#drf-example-apps) * [Books](#books) * [Videos](#videos) ## Resources ### Official Resources * [Django Official Website](https://www.djangoproject.com/) * [Django Documentation](https://docs.djangoproject.com/en/dev/) * [Django Polls Tutorial](https://docs.djangoproject.com/en/dev/intro/tutorial01/) * [Django Source Code](https://github.com/django/django) ### General Tutorials * [Django for Beginners](https://djangoforbeginners.com/) - Build 4 apps from scratch: Hello World, Pages, Message Board, and Blog with user auth * [Django Girls Tutorial](https://tutorial.djangogirls.org/en/) - Use FBVs to build a blog app * [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 ### External Resources * [Classy Class-Based Views](http://ccbv.co.uk/) - Detailed descriptions for each generic class-based view. * [Django Packages](https://djangopackages.org/) - Comprehensive directory of reusable Django apps and tools. * [William 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. ### Starter Projects * [cookiecutter-django](https://github.com/pydanny/cookiecutter-django) - very complete and deployment-ready * [djangox](https://github.com/wsvincent/djangox) - complete user auth with email/password, pipenv, and more * [edge](https://github.com/arocks/edge) - user auth and 12-factor recommended security * [demo-allauth-bootstrap](https://github.com/aellerton/demo-allauth-bootstrap) - example of new project with django-allauth ### Example Apps: Beginner * [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) ### Example Apps: Advanced * [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 ## Third-Party Packages > For a complete listing of all available packages, see [Django Packages](https://djangopackages.org/) * [django-allauth](https://github.com/pennersr/django-allauth/) - User registration, social authentication, account management, and more. * [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 * [dj-database-url](https://github.com/kennethreitz/dj-database-url/) - Use database URLs in a Django application * [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 for Django * [django-guardian](https://github.com/django-guardian/django-guardian) - Per object permissions in Django * [django-haystack](https://github.com/django-haystack/django-haystack) - Modular search for Django * [django-registration](https://github.com/macropin/django-registration/) - User registration * [django-rest-framework](https://github.com/encode/django-rest-framework) - Web APIs for Django * [whitenoise](https://github.com/evansd/whitenoise) - Simplified static file serving for Python websites ## Django Rest Framework > DRF is how we build APIs with Django. It's amazing. ### DRF Resources * [Official Documentation](http://www.django-rest-framework.org/) * [DRF Source Code](https://github.com/encode/django-rest-framework) ### DRF Tutorials * [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/) * [Django Polls API Tutorial](https://wsvincent.com/django-polls-tutorial-api/) * [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 and React Tutorials * [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/) ### DRF Starter Projects * [DRFx](https://github.com/wsvincent/drfx) ### DRF Example Apps * [ECGC](https://github.com/flowerncsu/ecgc-2017) ## Books * [Django for Beginners: Learn web development with Django 2.0](https://leanpub.com/djangoforbeginners) * [Two Scoops of Django: Best Practices for Django 1.11](https://www.twoscoopspress.com/products/two-scoops-of-django-1-11/) * [Build Your First Website with Python and Django 1.11](https://www.amazon.com/Build-First-Website-Python-Django/dp/0994616856) * [Test-Driven Development with Python](https://www.amazon.com/dp/1491958707) * [Django RESTful Web Services](https://www.amazon.com/dp/1788833929) ## Videos * [Treehouse](https://teamtreehouse.com/tracks/learn-django) * [Coding for Entrepreneurs](https://www.codingforentrepreneurs.com/) * [GoDjango](https://godjango.com/) --- ### License [![CC0](http://i.creativecommons.org/p/zero/1.0/88x31.png)](http://creativecommons.org/publicdomain/zero/1.0/)