2018-04-11 13:01:07 +00:00
# Awesome Django
> A curated list of awesome things related to Django
## Table of Contents
2018-04-26 13:39:51 +00:00
* [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 )
2018-05-31 00:36:34 +00:00
* [Django REST Framework ](#django-rest-framework )
2018-04-26 13:39:51 +00:00
* [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 )
2018-05-02 17:50:15 +00:00
* [Third-Party Packages ](#third-party-packages )
2018-04-26 13:39:51 +00:00
* [Books ](#books )
* [Videos ](#videos )
2018-04-11 13:04:07 +00:00
2018-04-11 13:01:07 +00:00
## Resources
### Official Resources
2018-04-26 13:39:51 +00:00
* [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
2018-04-11 13:01:07 +00:00
2018-05-11 12:17:03 +00:00
* [Django for Beginners ](https://djangoforbeginners.com/ ) - Build 3 apps from scratch: Hello World, Pages, and Message Board
2018-04-27 13:16:29 +00:00
* [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
2018-04-11 13:01:07 +00:00
### External Resources
2018-04-26 13:39:51 +00:00
* [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.
2018-05-31 00:35:06 +00:00
* [William Vincent's Website ](https://wsvincent.com ) - Up-to-date tutorials on Django and Django REST Framework.
2018-04-26 13:39:51 +00:00
* [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.
2018-04-11 13:01:07 +00:00
### Starter Projects
2018-04-26 13:39:51 +00:00
2018-04-27 13:16:29 +00:00
* [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
2018-04-26 13:39:51 +00:00
### 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
2018-04-16 13:40:53 +00:00
2018-05-31 00:35:43 +00:00
## Django REST Framework
2018-04-26 13:39:51 +00:00
2018-05-02 11:59:24 +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 )
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
2018-05-30 18:14:15 +00:00
* [Official REST Framework - A Beginner's Guide ](https://wsvincent.com/official-django-rest-framework-tutorial-beginners-guide/ )
2018-04-26 13:39:51 +00:00
* [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/ )
2018-04-12 12:24:55 +00:00
### DRF and React Tutorials
2018-04-26 13:39:51 +00:00
* [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 Starter Projects
2018-04-26 13:39:51 +00:00
* [DRFx ](https://github.com/wsvincent/drfx )
2018-04-11 17:31:07 +00:00
2018-04-19 17:57:29 +00:00
### DRF Example Apps
2018-04-27 13:23:09 +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
2018-05-02 17:50:15 +00:00
## 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
* [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`
* [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
2018-05-11 12:13:36 +00:00
* [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
2018-05-17 14:17:04 +00:00
* [django-tables2 ](https://github.com/jieter/django-tables2 ) - HTML tables with pagination/sorting
2018-05-02 17:50:15 +00:00
* [django-test-plus ](https://github.com/revsys/django-test-plus/ ) - Useful additions to Django's default TestCase
* [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
> Django Rest Framework specific packages
* [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-jwt ](https://github.com/GetBlimp/django-rest-framework-jwt ) - JSON web tokens for DRF
* [django-rest-swagger ](https://github.com/marcgibbons/django-rest-swagger ) - API document generator for Swagger UI
2018-04-11 13:01:07 +00:00
## Books
2018-04-26 13:39:51 +00:00
2018-05-28 19:54:53 +00:00
* [Django for Beginners: Learn web development with Django 2.0 ](https://djangoforbeginners.com/ )
2018-05-02 12:01:26 +00:00
* [Hello Web App 2.0 ](https://hellowebbooks.com/learn-django/ )
2018-05-28 19:54:53 +00:00
* [Django Design Patterns and Best Practices ](https://www.amazon.com/dp/1788831349/?tag=wsvincent-20 )
2018-05-31 13:48:29 +00:00
* [Building Django 2.0 Web Applications ](https://www.amazon.com/dp/B079DW6TRJ/?tag=wsvincent-20 )
2018-04-26 13:39:51 +00:00
* [Two Scoops of Django: Best Practices for Django 1.11 ](https://www.twoscoopspress.com/products/two-scoops-of-django-1-11/ )
2018-05-28 19:54:53 +00:00
* [Build Your First Website with Python and Django 1.11 ](https://www.amazon.com/Build-First-Website-Python-Django/dp/0994616856/?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 )
2018-04-11 13:01:07 +00:00
2018-05-29 19:58:27 +00:00
2018-04-11 13:01:07 +00:00
## Videos
2018-04-26 13:39:51 +00:00
* [Treehouse ](https://teamtreehouse.com/tracks/learn-django )
* [Coding for Entrepreneurs ](https://www.codingforentrepreneurs.com/ )
* [GoDjango ](https://godjango.com/ )
2018-04-11 13:01:07 +00:00
---
2018-04-26 13:39:51 +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/)