Plataforma open source de cobrança por uso que contabiliza eventos, aplica preços e créditos e gera faturas e pagamentos.
99designs/gqlgen
Biblioteca Go que gera código tipado para servidores GraphQL a partir de uma definição GraphQL orientada por schema.
- Estrelas
- 10,767
- Forks
- 1,262
- Issues abertas
- 396
- Último commit
- há 13 horas
O que é?
gqlgen é uma biblioteca Go para criar servidores GraphQL. Você define a API usando a GraphQL Schema Definition Language, e o gqlgen gera os tipos Go e as interfaces de resolver necessárias. Assim, você escreve a lógica de negócio enquanto o código boilerplate é gerado para você. Todo o código gerado é tipado, sem depender de map[string]interface{}.
O projeto funciona com o fluxo de trabalho go generate e se integra à toolchain do Go por meio de dependências de ferramentas. A configuração é feita em um arquivo gqlgen.yml, no qual você pode mapear tipos GraphQL para structs Go existentes, exigir resolvers para campos específicos e alterar a representação de IDs, por exemplo, para int ou string. Os resolvers de campos podem ser executados em paralelo, com o nível de concorrência controlado pela configuração worker_limit.
O repositório também inclui uma página que compara recursos com outras implementações GraphQL em Go, além de um tutorial para começar, documentação de referência no pkg.go.dev e aplicações de exemplo.
Recursos principais
- 01Desenvolvimento orientado por schema: defina a API em GraphQL SDL e gere código a partir dela.
- 02Gera modelos Go tipados e interfaces de resolver, evitando maps sem tipo.
- 03Mapeia tipos GraphQL para structs Go existentes usando gqlgen.yml ou diretivas.
- 04Permite exigir resolvers para campos específicos e evitar buscar dados de campos filhos que não serão usados.
- 05Mapeamento configurável do tipo de ID entre int, uint e string.
- 06Execução concorrente de resolvers de campos com limite de workers configurável.
Casos de uso
- Criar um backend de API GraphQL em Go quando a segurança de tipos é prioritária.
- Adicionar uma camada GraphQL sobre structs e modelos de dados Go existentes.
- Atender equipes que preferem definir primeiro o schema da API e gerar o código do servidor a partir dele.
Início rápido
- 1
Crie e acesse um novo diretório de módulo Go
mkdir example cd example go mod init example - 2
Adicione gqlgen como dependência de ferramenta
go get -tool github.com/99designs/gqlgen - 3
Inicialize a configuração do gqlgen e gere os modelos
go tool gqlgen init - 4
Inicie o servidor GraphQL
go run server.go
Antes de usar
- Requer que Go esteja instalado e é uma biblioteca exclusiva para servidores Go.
- O design schema-first significa que você precisa escrever o schema GraphQL e os resolvers por conta própria.
Tópicos
Perguntas frequentes
- O que é gqlgen?
- Biblioteca Go que gera código tipado para servidores GraphQL a partir de uma definição GraphQL orientada por schema. gqlgen é uma biblioteca Go para criar servidores GraphQL. Você define a API usando a GraphQL Schema Definition Language, e o gqlgen gera os tipos Go e as interfaces de resolver necessárias. Assim, você escreve a lógica de negócio enquanto o código boilerplate é gerado para você. Todo o código gerado é tipado, sem depender de map[string]interface{}.
- gqlgen é gratuito? Qual é a licença?
- gqlgen é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- gqlgen ainda é mantido?
- Manutenção ativa. O último commit de gqlgen foi em 21 de out. de 2026.
- Para que posso usar gqlgen?
- Criar um backend de API GraphQL em Go quando a segurança de tipos é prioritária. Adicionar uma camada GraphQL sobre structs e modelos de dados Go existentes. Atender equipes que preferem definir primeiro o schema da API e gerar o código do servidor a partir dele.
- Como instalar gqlgen?
- Crie e acesse um novo diretório de módulo Go: mkdir example cd example go mod init example Adicione gqlgen como dependência de ferramenta: go get -tool github.com/99designs/gqlgen Inicialize a configuração do gqlgen e gere os modelos: go tool gqlgen init Inicie o servidor GraphQL: go run server.go
- Onde consigo gqlgen?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/99designs/gqlgen
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Backend open source em Node.js que oferece APIs REST e GraphQL, autenticação de usuários, armazenamento de arquivos e notificações push com MongoDB ou PostgreSQL.
Alternativa open source ao Firebase baseada em PostgreSQL, com API GraphQL instantânea, autenticação, armazenamento e funções serverless.
Serviço de API em Go para poesia clássica chinesa, com endpoints REST e GraphQL e um acervo de quase 400 mil poemas em chinês simplificado e tradicional.
Um servidor independente que transforma qualquer banco de dados PostgreSQL existente em uma API RESTful, sem exigir código de backend.
Um runtime em Rust que permite compor, descobrir e rastrear serviços, workers, filas, tarefas agendadas e agentes em um catálogo único e dinâmico de funções.