{"id":25431085,"url":"https://github.com/kobylynskyi/graphql-java-codegen","last_synced_at":"2025-04-04T07:09:58.679Z","repository":{"id":39648786,"uuid":"204753751","full_name":"kobylynskyi/graphql-java-codegen","owner":"kobylynskyi","description":"Make your GraphQL Java application schema-driven.","archived":false,"fork":false,"pushed_at":"2024-09-01T16:54:52.000Z","size":3286,"stargazers_count":283,"open_issues_count":80,"forks_count":110,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-03-28T06:10:16.261Z","etag":null,"topics":["codegen","graphql","graphql-codegen","graphql-gradle","graphql-java","graphql-kotlin","graphql-maven","graphql-scala"],"latest_commit_sha":null,"homepage":"https://kobylynskyi.github.io/graphql-java-codegen/","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kobylynskyi.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":".github/FUNDING.yml","license":"LICENSE.md","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"custom":["https://send.monobank.ua/jar/2bpWyBqBp3"]}},"created_at":"2019-08-27T17:21:52.000Z","updated_at":"2025-03-26T17:21:01.000Z","dependencies_parsed_at":"2023-02-19T01:46:14.782Z","dependency_job_id":"a31097c8-2c9f-4cfc-af42-46dcd2142e45","html_url":"https://github.com/kobylynskyi/graphql-java-codegen","commit_stats":null,"previous_names":[],"tags_count":52,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kobylynskyi%2Fgraphql-java-codegen","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kobylynskyi%2Fgraphql-java-codegen/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kobylynskyi%2Fgraphql-java-codegen/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kobylynskyi%2Fgraphql-java-codegen/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kobylynskyi","download_url":"https://codeload.github.com/kobylynskyi/graphql-java-codegen/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247135147,"owners_count":20889421,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["codegen","graphql","graphql-codegen","graphql-gradle","graphql-java","graphql-kotlin","graphql-maven","graphql-scala"],"created_at":"2025-02-17T03:49:02.261Z","updated_at":"2025-04-04T07:09:58.661Z","avatar_url":"https://github.com/kobylynskyi.png","language":"Java","funding_links":["https://send.monobank.ua/jar/2bpWyBqBp3"],"categories":[],"sub_categories":[],"readme":"# GraphQL Codegen #\n\n[![Donate](https://img.shields.io/badge/Donate-green.svg)](https://send.monobank.ua/jar/2bpWyBqBp3)\n\n![Build](https://github.com/kobylynskyi/graphql-java-codegen/workflows/Build/badge.svg)\n[![Discussions](https://img.shields.io/badge/github-discussions-green)](https://github.com/kobylynskyi/graphql-java-codegen/discussions)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)\n\n[![Sonarcloud Status](https://sonarcloud.io/api/project_badges/measure?project=kobylynskyi_graphql-java-codegen\u0026metric=alert_status)](https://sonarcloud.io/dashboard?id=kobylynskyi_graphql-java-codegen) \n[![SonarCloud Coverage](https://sonarcloud.io/api/project_badges/measure?project=kobylynskyi_graphql-java-codegen\u0026metric=coverage)](https://sonarcloud.io/component_measures/metric/coverage/list?id=kobylynskyi_graphql-java-codegen)\n[![SonarCloud Bugs](https://sonarcloud.io/api/project_badges/measure?project=kobylynskyi_graphql-java-codegen\u0026metric=bugs)](https://sonarcloud.io/component_measures/metric/reliability_rating/list?id=kobylynskyi_graphql-java-codegen)\n[![SonarCloud Vulnerabilities](https://sonarcloud.io/api/project_badges/measure?project=kobylynskyi_graphql-java-codegen\u0026metric=vulnerabilities)](https://sonarcloud.io/component_measures/metric/security_rating/list?id=kobylynskyi_graphql-java-codegen)\n\n\nGraphQL Java Codegen makes it easy to make your Java application to follow a schema-first approach whether it is a server or client application.\n\nFollowing classes can be generated based on your GraphQL schema:\n* Interfaces for GraphQL queries, mutations and subscriptions.\n* Interfaces for GraphQL unions.\n* POJO classes for GraphQL types and inputs.\n* Enum classes for GraphQL enums.\n* Interfaces for GraphQL type fields (e.g. for parametrized fields) aka \"Resolvers\".\n* Client Request classes for GraphQL queries, mutations and subscriptions.\n\n\n## Features\n* Generate classes in Java, Kotlin or Scala.\n* Recursive schemas lookup by file name pattern.\n* Generate code based on GraphQL schema or GraphQL Query Introspection Result.\n* Generate POJOs with or without: Builder pattern, immutable fields, `toString()`, `equals()` and `hashCode()`, etc.\n* Flexible API interfaces naming conventions (based on schema file name, folder name, etc.)\n* Custom java package names for model and API classes.\n* Custom prefix/suffix for model, API, type resolver, request, response classes.\n* Custom annotations for generated classes (e.g.: validation annotations for generated model classes or specific type fields, annotations for GraphQL directives, etc.)\n* Relay support.\n* Ability to define codegen configuration via external json file.\n\n\n**For the full list of codegen configs please refer to: [Codegen Options](docs/codegen-options.md)**\n\n\n## Supported plugins\n\n* Gradle plugin: [graphql-java-codegen-gradle-plugin](plugins/gradle)\n* Maven plugin: [grapqhl-java-codegen-maven-plugin](plugins/maven) \n* SBT plugin: [grapqhl-java-codegen-sbt-plugin](plugins/sbt) \n\n\n## Contributing\n\nPlease see [CONTRIBUTING.md](CONTRIBUTING.md).\n\n\n## Inspired by\n\n[swagger-codegen](https://github.com/swagger-api/swagger-codegen)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkobylynskyi%2Fgraphql-java-codegen","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkobylynskyi%2Fgraphql-java-codegen","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkobylynskyi%2Fgraphql-java-codegen/lists"}