Gera especificações Swagger/OpenAPI 2.0 reais e documentação interativa a partir de APIs do Django REST Framework.
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
Instale django-ninja com pip
pip install django-ninja - 2
Crie um arquivo api.py ao lado de urls.py com uma instância de NinjaAPI e um endpoint
- 3
Adicione api.urls a urlpatterns em urls.py
- 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
Gera documentação OpenAPI 3 e páginas do Swagger UI ou Scalar para apps Spring Boot, inspecionando os controllers em tempo de execução.
Framework web Python para criar APIs com type hints padrão, validação automática, documentação OpenAPI e alto desempenho.
Plugin do protoc que gera um servidor proxy reverso para traduzir chamadas HTTP RESTful com JSON em requisições gRPC para serviços Go.
Biblioteca Java que gera especificações OpenAPI a partir de anotações no código e APIs REST com JAX-RS, com suporte a OpenAPI 3.x.
Um framework web ASGI flexível para Python, voltado à criação de APIs, com validação de dados, injeção de dependências, geração de OpenAPI e integração com ORM.