- Home
- GraphQL Tools
- Netflix DGS
Netflix DGS
What it is
Netflix DGS is a free, open-source GraphQL server framework for Spring Boot, intended to help developers create GraphQL services. Its annotation-based programming model supports Java and Kotlin, and projects can use Gradle or Maven. DGS is designed for schema-first work: schema files belong in the project’s `src/main/resources/schema` folder, and a Gradle plugin can generate Java types from a schema. The framework includes lightweight query unit testing and data loaders that batch requests to help address the N+1 problem. It supports GraphQL Federation, subscriptions over WebSockets and SSE, file uploads, error handling, and extension points. Spring Security integration allows `@Secured` on data fetchers after security is configured. DGS also integrates with Spring for GraphQL, though that route lacks SSE subscriptions and some DGS data-loader features do not work with Spring for GraphQL data loaders. A browser GraphiQL editor and an IntelliJ plugin are also available. Current documentation requires Spring Boot 3 and JDK 17; DGS 5.x for Spring Boot 2 and JDK 8 is no longer maintained.
For and against
For
- Free under the Apache-2.0 license
- Supports Java and Kotlin with Gradle or Maven
- Includes query testing and data loaders
- Supports GraphQL Federation
- Provides browser GraphiQL and an IntelliJ plugin
Against
- Current documentation requires Spring Boot 3 and JDK 17
- DGS 5.x is no longer maintained
- Spring GraphQL integration lacks SSE subscriptions
- Some DGS data-loader features do not work with Spring GraphQL loaders
The verdict
DGS offers a broad set of GraphQL development tools for Java and Kotlin Spring Boot projects. Check the current requirements and Spring for GraphQL integration limitations when choosing an implementation path.
Who it suits
DGS suits Java or Kotlin developers building GraphQL services with Spring Boot. It may be useful for teams using schema-first development, federation, or lightweight query tests.
Plans and prices
Netflix DGS Framework
Open source GraphQL framework for Java and Spring Boot
Read 9 Oct 2026 · netflix.github.io
On the record
- Additional features
- The framework includes GraphQL subscriptions over WebSockets and SSE, file uploads, error handling, and extension points.github.com · read 9 Oct 2026
- Build tools
- Projects can use Gradle or Maven, with Java or Kotlin.netflix.github.io · read 9 Oct 2026
- Code generation
- The DGS code generation plugin can generate data types from a GraphQL schema.netflix.github.io · read 9 Oct 2026
- Compatibility status
- The repository says DGS 11+ with Spring Boot 4 is actively maintained, while DGS 10.x with Spring Boot 3 receives most feature backports until the second half of 2026.github.com · read 9 Oct 2026
- Data loaders
- Data loaders batch data requests to help solve the GraphQL N+1 problem.netflix.github.io · read 9 Oct 2026
- Federation
- DGS supports GraphQL Federation and can reference and extend federated types.netflix.github.io · read 9 Oct 2026
- GraphiQL
- The framework provides a GraphiQL query editor that can be opened in a browser while the service is running.netflix.github.io · read 9 Oct 2026
- IDE plugin
- An IntelliJ plugin provides navigation between schema files and code, hints, and quick fixes.netflix.github.io · read 9 Oct 2026
- Language and build tools
- The getting-started guide supports Java or Kotlin and Gradle or Maven.netflix.github.io · read 9 Oct 2026
- License
- The repository lists the Apache-2.0 license.github.com · read 9 Oct 2026
- Maintainer
- Netflix primarily maintains the framework, with an active community around it.netflix.github.io · read 9 Oct 2026
- Programming model
- DGS provides an annotation-based programming model for Java and Kotlin.netflix.github.io · read 9 Oct 2026
- Purpose
- DGS is a GraphQL server framework for Spring Boot that makes it easier to create GraphQL services.netflix.github.io · read 9 Oct 2026
- Requirements
- The current documentation requires Spring Boot 3 and JDK 17; DGS 5.x, which supported Spring Boot 2 and JDK 8, is no longer maintained.netflix.github.io · read 9 Oct 2026
- Schema development
- DGS is designed for schema-first development and loads schema files from the project's src/main/resources/schema folder.netflix.github.io · read 9 Oct 2026
- Security integration
- DGS integrates with Spring Security, allowing @Secured to be applied to data fetchers after Spring Security is configured.netflix.github.io · read 9 Oct 2026
- Spring GraphQL integration limitation
- The integration currently lacks support for SSE-based subscriptions and some DGS data-loader features do not work with Spring for GraphQL data loaders.netflix.github.io · read 9 Oct 2026
- Spring integration
- DGS integrates with Spring for GraphQL, allowing users to use Spring for GraphQL features and web transports with DGS.netflix.github.io · read 9 Oct 2026