Ferramenta open source que gera um site responsivo de referência de API, com três painéis, a partir de definições OpenAPI, Swagger, AsyncAPI ou GraphQL.
axnsan12/drf-yasg
Gera especificações Swagger/OpenAPI 2.0 reais e documentação interativa a partir de APIs do Django REST Framework.
- Estrelas
- 3,547
- Forks
- 439
- Issues abertas
- 218
- Último commit
- há 28 dias
O que é?
O drf-yasg inspeciona views e serializers do Django REST Framework e gera um schema OpenAPI 2.0 (Swagger) com base neles, para que a documentação da API reflita o código, em vez de ser mantida manualmente. O schema pode ser servido em JSON ou YAML, e a biblioteca inclui swagger-ui e ReDoc para que a documentação gerada possa ser consultada diretamente pelo projeto.
A configuração consiste em adicionar o app a INSTALLED_APPS e incluir uma schema view em urls.py. Há suporte a serializers aninhados, e hooks estão disponíveis em cada etapa da geração da especificação para permitir personalizações. O cache já vem integrado, e é possível validar o schema com swagger-spec-validator.
O projeto tem como alvo apenas o OpenAPI 2.0. Os mantenedores indicam o drf-spectacular para novos projetos que precisem de OpenAPI 3.0, e o README observa que é improvável que o drf-yasg passe a oferecer suporte à versão 3.0.
Recursos principais
- 01Gera especificações Swagger/OpenAPI 2.0 a partir de views e serializers do DRF, incluindo serializers aninhados.
- 02Serve a especificação em JSON ou YAML.
- 03Inclui swagger-ui e ReDoc para consultar a documentação.
- 04Oferece hooks de personalização em toda a geração da especificação.
- 05Oferece validação opcional com swagger-spec-validator e cache integrado de respostas.
- 06Funciona com URLPathVersioning e NamespaceVersioning.
Casos de uso
- Documentar uma API existente do Django REST Framework sem escrever a especificação manualmente.
- Gerar um arquivo OpenAPI 2.0 para gerar código de cliente com swagger-codegen.
- Disponibilizar documentação interativa da API para desenvolvedores internos ou públicos em um projeto Django.
Tópicos
Perguntas frequentes
- O que é drf-yasg?
- Gera especificações Swagger/OpenAPI 2.0 reais e documentação interativa a partir de APIs do Django REST Framework. O drf-yasg inspeciona views e serializers do Django REST Framework e gera um schema OpenAPI 2.0 (Swagger) com base neles, para que a documentação da API reflita o código, em vez de ser mantida manualmente. O schema pode ser servido em JSON ou YAML, e a biblioteca inclui swagger-ui e ReDoc para que a documentação gerada possa ser consultada diretamente pelo projeto.
- drf-yasg é gratuito? Qual é a licença?
- drf-yasg é open source sob a licença Other. Confira os termos da licença antes de usá-lo em produtos comerciais.
- drf-yasg ainda é mantido?
- Manutenção ativa. O último commit de drf-yasg foi em 9 de out. de 2026.
- Para que posso usar drf-yasg?
- Documentar uma API existente do Django REST Framework sem escrever a especificação manualmente. Gerar um arquivo OpenAPI 2.0 para gerar código de cliente com swagger-codegen. Disponibilizar documentação interativa da API para desenvolvedores internos ou públicos em um projeto Django.
- Onde consigo drf-yasg?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/axnsan12/drf-yasg
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
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.
Swagger UI exibe documentação interativa de APIs no navegador a partir de um arquivo de especificação OpenAPI/Swagger.
Kit de ferramentas open source para OpenAPI/Swagger, com referência interativa de API, cliente de API com foco no uso offline e integrações com vários frameworks web.
Ferramenta Go que gera documentação de API Swagger 2.0 a partir de anotações nos comentários do código-fonte Go.
Framework web Python para criar APIs REST tipadas sobre o Django, com documentação OpenAPI automática e validação com Pydantic.