Awesome

Awesome Django REST Framework Awesome

Curated list of tools, processes and resources you need to create an awesome API with Django REST Framework!

Let's make it the biggest resource repository for our community.

Please read the contribution guidelines before contributing.

Check out my medium blog or say hi on Twitter.

Table of Contents

Packages

Authentication

  • django-rest-passwordreset: Password reset endpoints that hook into Django Authentication system
  • djoser: REST implementation of Django authentication system
  • dj-rest-auth: A set of REST API endpoints to handle User Registration and Authentication tasks
  • django-rest-registration: User registration and authentication REST API, based on Django REST Framework.
  • django-rest-framework-simplejwt: A JSON Web Token authentication plugin for the Django REST Framework
  • django-rest-framework-social-oauth2: python-social-auth and oauth2 support for django-rest-framework
  • django-oauth-toolkit: Django OAuth Toolkit can help you providing out of the box all the endpoints, data and logic needed to add OAuth2 capabilities to your Django projects. Django OAuth Toolkit makes extensive use of the excellent OAuthLib, so that everything is rfc-compliant.
  • django-rest-durin provides token auth for multiple Web/CLI/Mobile API clients via one interface but allows different token configuration for each client (For example, permissions and token expiration time can be different per API client).
  • djangorest-routes: Djangorest Routes is an authentication library strongly built in Python that serves the purpose of quick bootstrapping a project's authentication infrastructure.

Authorization

Documentation

  • drf-yasg: Alternative OpenAPI Generator for Django REST Framework with response schema support
  • drf-spectacular: Sane and flexible OpenAPI 3.0 schema generation for Django REST framework
  • drf-openapi-tester: Test drf test responses against OpenAPI/Swagger documentation.

Routing

Serialization

Visualization

  • django-rest-pandas: Serves up Pandas dataframes via the Django REST Framework for use in client-side (i.e. d3.js) visualizations and offline analysis (e.g. Excel)
  • django-rest-framework-gis: Geographic add-ons for Django REST Framework
  • drf-renderer-xlsx: Allows you to create XLSX for Django REST Framework

Logging

  • drf-api-tracking: Provides a Django model and DRF view mixin that work together to log Django Rest Framework requests to the database.
  • django-requestlogs: Package providing middleware and other helpers for audit logging.

Filtering

Pagination

Renderers and Parsers

Other

  • django-rest-localflavor: Country-specific Django helpers, to use in Django Rest Framework
  • django-rest-framework-json-api: Implements most of the JSON API 1.0 spec.
  • drf-extensions: DRF-extensions is a collection of custom extensions for Django REST Framework
  • drf-generators: Generate Views, Serializers, and Urls for your Django Rest Framework application.
  • django-restql: Turn your API made with Django REST Framework(DRF) into a GraphQL like API.
  • django-rest-tsg: A TypeScript code generator for DRF serializers, enums and dataclasses.
  • django-rest-cli: A CRUD endpoints generator and flexible cookiecutter for rapid REST APIs dev.

Tutorials

Books

Courses

Talks

Common issues