Repolode
vitalik

vitalik/django-ninja

Framework web Python para criar APIs REST tipadas sobre o Django, com documentação OpenAPI automática e validação com Pydantic.

Alternativa open source a:Django REST Framework

Estrelas
9,237
Forks
627
Issues abertas
158
Último commit
há 19 horas

O que é?

Django Ninja é um framework web para criar APIs com Django e type hints do Python. Os endpoints são funções Python comuns decoradas com rotas como @api.get, e os parâmetros das requisições são validados e convertidos para os tipos anotados usando Pydantic.

Com base nesses type hints, o framework gera um schema OpenAPI e documentação interativa com Swagger UI ou Redoc em /api/docs. Ele oferece suporte a views assíncronas e se integra ao núcleo e ao ORM do Django.

O projeto é voltado a desenvolvedores que já usam Django e querem uma alternativa mais concisa ao Django REST Framework, com a API definida por meio de anotações de tipo.

Recursos principais

  • 01Defina endpoints como funções Python com type hints
  • 02Os parâmetros das requisições são validados e convertidos para os tipos corretos com Pydantic
  • 03Geração automática de schema OpenAPI com documentação em Swagger UI e Redoc
  • 04Suporte a views assíncronas
  • 05Integração com o núcleo e o ORM do Django

Casos de uso

  • Adicionar uma API JSON a um projeto Django existente
  • Criar um serviço de backend tipado que precisa de documentação de API gerada automaticamente
  • Expor modelos do Django ORM por meio de endpoints REST

Início rápido

  1. 1

    Instale django-ninja com pip

    pip install django-ninja
  2. 2

    Crie um arquivo api.py ao lado de urls.py com uma instância de NinjaAPI e um endpoint

  3. 3

    Adicione api.urls a urlpatterns em urls.py

  4. 4

    Abra a documentação interativa em http://127.0.0.1:8000/api/docs

Em coleções

Tópicos

Perguntas frequentes

O que é django-ninja?
Framework web Python para criar APIs REST tipadas sobre o Django, com documentação OpenAPI automática e validação com Pydantic. Django Ninja é um framework web para criar APIs com Django e type hints do Python. Os endpoints são funções Python comuns decoradas com rotas como @api.get, e os parâmetros das requisições são validados e convertidos para os tipos anotados usando Pydantic.
django-ninja é gratuito? Qual é a licença?
django-ninja é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
django-ninja ainda é mantido?
Manutenção ativa. O último commit de django-ninja foi em 6 de nov. de 2026.
Para que posso usar django-ninja?
Adicionar uma API JSON a um projeto Django existente Criar um serviço de backend tipado que precisa de documentação de API gerada automaticamente Expor modelos do Django ORM por meio de endpoints REST
Como instalar django-ninja?
Instale django-ninja com pip: pip install django-ninja Crie um arquivo api.py ao lado de urls.py com uma instância de NinjaAPI e um endpoint Adicione api.urls a urlpatterns em urls.py Abra a documentação interativa em http://127.0.0.1:8000/api/docs
Onde consigo django-ninja?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/vitalik/django-ninja

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados