# vitalik/django-ninja

💨  Fast, Async-ready, Openapi, type hints based framework for building APIs

Repository: https://github.com/vitalik/django-ninja
Canonical: https://ross.abutalabs.com/products/django-ninja
Homepage: https://django-ninja.dev
Language: Python
License: MIT
License Family: permissive
Topics: python, django, rest-api, openapi, pydantic, swagger, swagger-ui, django-ninja
Last push: 2026-08-24T14:12:22+00:00

## Health v2 (maintenance only)
Score: 99/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 99, release rhythm 99, longevity 100
- inputs: {"age_days": 2297, "days_push": 9, "days_rel": 9, "gap_med": 16.0, "n_releases_24m": 15}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 9175, forks 610 (observed 2026-08-28T04:10:28.723557+00:00)

## What it is
Django Ninja is a web framework for building REST APIs with Django using Python type hints, powered by Pydantic for validation and serialization. It automatically generates OpenAPI/Swagger documentation and supports async handlers with high performance.

## Use cases
- build a REST API on top of an existing Django project
- auto-generate OpenAPI/Swagger docs for Django endpoints
- validate and type-cast request parameters with Python type hints
- add async API endpoints to Django
- replace Django REST Framework with a faster, simpler alternative
- expose Django ORM models through a JSON API

## When to choose
- you already use Django and want fast, type-hint-based API development
- you want automatic interactive API documentation with minimal setup
- you need high-performance JSON APIs with Pydantic validation
- you want tight integration with Django's ORM and auth

## When to avoid
- you are building a non-Django Python API (consider FastAPI)
- you need Django REST Framework's serializer/browsable-API ecosystem
- your project has no Django dependency and you want a standalone framework

## Facets
- artifact type: framework
- maturity: stable
- function: web-framework, api-framework, api-documentation, serialization, routing
- domain: web-development, backend, apis
- platform: python, cross-platform
- tags: django, rest-api, openapi, pydantic, type-hints, async, swagger-ui, python, web-server

## Member repositories
- vitalik/django-ninja (main) score 99

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:10:28.723557+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-29T17:23:22.367291+00:00, confidence not recorded.
  - readme: https://github.com/vitalik/django-ninja (fetched 2026-08-28T04:10:28.723557+00:00, sha 7a3575c4470c)
  - homepage: https://django-ninja.dev (fetched 2026-08-29T08:23:28.766319+00:00, sha c7c8ceeafb56)
  - site_page: https://django-ninja.dev/guides/api-docs (fetched 2026-08-29T08:23:28.775633+00:00, sha 0d287eee2f68)
  - registry_pypi: https://pypi.org/pypi/django-ninja/json (fetched 2026-08-29T08:23:28.779849+00:00, sha f29822d5dde4)
  - site_page: https://django-ninja.dev/releases (fetched 2026-08-29T08:23:28.778136+00:00, sha 9354112c3e32)
- Data as of 2026-08-30T08:39:29.467469+00:00.
