Federation-Compatible Subgraph Implementations
Reference for compatible GraphQL server libraries
The following open-source GraphQL server libraries and hosted solutions support acting as a subgraph in a federated supergraph. Their support is tracked in Apollo's subgraph compatibility repository. Check out the repository for details on the compatibility tests listed in the table below.
tip
To add a subgraph to this list, open a GitHub issue or check out the Apollo Federation Subgraph Maintainers Implementation Guide to learn how to submit a PR for your implementation.
The following open-source GraphQL server libraries and other solutions support acting as a subgraph in a federated supergraph.
Table Legend
Icon | Description |
---|---|
Maintained by Apollo | |
🟢 | Functionality is supported |
❌ | Critical functionality is NOT supported |
🔲 | Additional federation functionality is NOT supported |
Ballerina
Library | Federation 1 Support | Federation 2 Support | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Ballerina GraphQL Module | ||||||||||||||||||||||||||||||||
A spec-compliant, production-ready, Standard Library module for building and interacting with GraphQL APIs using Ballerina. GitHub: ballerina-platform/module-ballerina-graphql Type: Code first Stars: 140 ⭐ Last Release: 2024-11-03 |
|
|
C# / .NET
Library | Federation 1 Support | Federation 2 Support | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
GraphQL for .NET | ||||||||||||||||||||||||||||||||
GraphQL for .NET GitHub: graphql-dotnet/graphql-dotnet Type: Code first | SDL first Stars: 5.9k ⭐ Last Release: 2024-10-24 |
|
| ||||||||||||||||||||||||||||||
Hot Chocolate | ||||||||||||||||||||||||||||||||
Open-source GraphQL server for the Microsoft .NET platform that takes the complexity away and lets you focus on delivering the next big thing. GitHub: ChilliCream/graphql-platform Type: Code first | SDL first Stars: 5.3k ⭐ Last Release: 2024-12-03 Federation Library: apollographql/federation-hotchocolate |
|
|
Elixir
Library | Federation 1 Support | Federation 2 Support | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Absinthe | ||||||||||||||||||||||||||||||||
The GraphQL toolkit for Elixir GitHub: absinthe-graphql/absinthe Type: Code first Stars: 4.3k ⭐ Last Release: 2024-07-11 Federation Library: DivvyPayHQ/absinthe_federation |
|
|
Go
Library | Federation 1 Support | Federation 2 Support | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
gqlgen | ||||||||||||||||||||||||||||||||
go generate based graphql server library GitHub: 99designs/gqlgen Type: SDL first Stars: 10.0k ⭐ Last Release: 2024-12-10 |
|
| ||||||||||||||||||||||||||||||
GraphQL Go (fork) | ||||||||||||||||||||||||||||||||
This is a fork of graphql-go/graphql that adds Federation support GitHub: dariuszkuc/graphql Type: Code first Stars: 2 ⭐ Last Release: 2022-11-11 |
|
|
Java / Kotlin
Library | Federation 1 Support | Federation 2 Support | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
dgs-framework | ||||||||||||||||||||||||||||||||
GraphQL for Java with Spring Boot made easy. GitHub: netflix/dgs-framework Type: SDL first Stars: 3.1k ⭐ Last Release: 2024-12-12 Core Library: GraphQL Java Federation Library: apollographql/federation-jvm |
|
| ||||||||||||||||||||||||||||||
GraphQL Java Kickstart (Spring Boot) | ||||||||||||||||||||||||||||||||
GraphQL and GraphiQL Spring Framework Boot Starters - Forked from oembedler/graphql-spring-boot due to inactivity. GitHub: graphql-java-kickstart/graphql-spring-boot Type: SDL first Stars: 1.5k ⭐ Last Release: 2023-12-07 Core Library: GraphQL Java Federation Library: apollographql/federation-jvm |
|
| ||||||||||||||||||||||||||||||
GraphQL Kotlin | ||||||||||||||||||||||||||||||||
Libraries for running GraphQL in Kotlin GitHub: ExpediaGroup/graphql-kotlin Type: Code first Stars: 1.7k ⭐ Last Release: 2024-10-28 Core Library: GraphQL Java |
|
| ||||||||||||||||||||||||||||||
Spring GraphQL | ||||||||||||||||||||||||||||||||
Spring Integration for GraphQL GitHub: spring-projects/spring-graphql Type: SDL first Stars: 1.5k ⭐ Last Release: 2024-10-23 Core Library: GraphQL Java Federation Library: apollographql/federation-jvm |
|
|
JavaScript / TypeScript
Library | Federation 1 Support | Federation 2 Support | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Apollo Server | ||||||||||||||||||||||||||||||||
🌍 Spec-compliant and production ready JavaScript GraphQL server that lets you develop in a schema-first way. Built for Express, Connect, Hapi, Koa, and more. GitHub: apollographql/apollo-server Type: SDL first Stars: 13.8k ⭐ Last Release: 2024-10-29 Core Library: GraphQL.js Federation Library: Apollo Subgraph |
|
| ||||||||||||||||||||||||||||||
express-graphql | ||||||||||||||||||||||||||||||||
Create a GraphQL HTTP server with Express. GitHub: graphql/express-graphql Type: SDL first Stars: 6.3k ⭐ Last Release: 2020-11-19 Core Library: GraphQL.js Federation Library: Apollo Subgraph |
|
| ||||||||||||||||||||||||||||||
GraphQL Yoga | ||||||||||||||||||||||||||||||||
The fully-featured GraphQL server with focus on easy setup, performance and great developer experience. GitHub: dotansimha/graphql-yoga Type: SDL first Stars: 8.3k ⭐ Last Release: 2024-12-14 Core Library: GraphQL.js Federation Library: Apollo Subgraph |
|
| ||||||||||||||||||||||||||||||
GraphQL Helix | ||||||||||||||||||||||||||||||||
A highly evolved and framework-agnostic GraphQL HTTP server. GitHub: contra/graphql-helix Type: SDL first Stars: 830 ⭐ Last Release: 2022-07-09 Core Library: GraphQL.js Federation Library: Apollo Subgraph |
|
| ||||||||||||||||||||||||||||||
Mercurius | ||||||||||||||||||||||||||||||||
Implement GraphQL servers and gateways with Fastify GitHub: mercurius-js/mercurius Type: SDL first Stars: 2.4k ⭐ Last Release: 2024-10-14 Core Library: GraphQL.js Federation Library: Apollo Subgraph |
|
| ||||||||||||||||||||||||||||||
NestJS (code first) | ||||||||||||||||||||||||||||||||
A progressive Node.js framework for building efficient, reliable and scalable server-side applications. GitHub: nestjs/graphql Type: Code first Stars: 1.5k ⭐ Last Release: 2024-12-04 Core Library: GraphQL.js Federation Library: Apollo Subgraph |
|
| ||||||||||||||||||||||||||||||
NestJS (SDL First) | ||||||||||||||||||||||||||||||||
A progressive Node.js framework for building efficient, reliable and scalable server-side applications. GitHub: nestjs/graphql Type: SDL first Stars: 1.5k ⭐ Last Release: 2024-12-04 Core Library: GraphQL.js Federation Library: Apollo Subgraph |
|
| ||||||||||||||||||||||||||||||
Pothos GraphQL | ||||||||||||||||||||||||||||||||
Plugin based GraphQL schema builder that makes building graphql schemas with TypeScript easy, fast and enjoyable. GitHub: hayes/pothos Type: Code first Stars: 2.4k ⭐ Last Release: 2024-11-30 Core Library: GraphQL.js |
|
|
PHP
Library | Federation 1 Support | Federation 2 Support | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Lighthouse (Laravel) | ||||||||||||||||||||||||||||||||
A framework for serving GraphQL from Laravel GitHub: nuwave/lighthouse Type: SDL first Stars: 3.4k ⭐ Last Release: 2024-12-11 Core Library: webonyx/graphql-php |
|
| ||||||||||||||||||||||||||||||
GraphQL PHP | ||||||||||||||||||||||||||||||||
PHP implementation of the GraphQL specification based on the reference implementation in JavaScript GitHub: webonyx/graphql-php Type: Code first Stars: 4.6k ⭐ Last Release: 2024-12-04 Federation Library: Skillshare/apollo-federation-php |
|
|
Python
Library | Federation 1 Support | Federation 2 Support | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Ariadne | ||||||||||||||||||||||||||||||||
Python library for implementing GraphQL servers using schema-first approach. GitHub: mirumee/ariadne Type: SDL first Stars: 2.2k ⭐ Last Release: 2024-03-18 Core Library: GraphQL-core 3 |
|
| ||||||||||||||||||||||||||||||
Graphene | ||||||||||||||||||||||||||||||||
GraphQL framework for Python GitHub: graphql-python/graphene Type: Code first Stars: 8.1k ⭐ Last Release: 2024-11-09 Core Library: GraphQL-core 3 Federation Library: graphql-python/graphene-federation |
|
| ||||||||||||||||||||||||||||||
Strawberry | ||||||||||||||||||||||||||||||||
A GraphQL library for Python that leverages type annotations 🍓 GitHub: strawberry-graphql/strawberry Type: Code first Stars: 4.1k ⭐ Last Release: 2024-12-13 Core Library: GraphQL-core 3 |
|
|
Ruby
Library | Federation 1 Support | Federation 2 Support | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
GraphQL Ruby | ||||||||||||||||||||||||||||||||
Ruby implementation of GraphQL GitHub: rmosolgo/graphql-ruby Type: Code first Stars: 5.4k ⭐ Last Release: 2021-02-12 Federation Library: Gusto/apollo-federation-ruby |
|
|
Rust
Library | Federation 1 Support | Federation 2 Support | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
async-graphql | ||||||||||||||||||||||||||||||||
A GraphQL server library implemented in Rust GitHub: async-graphql/async-graphql Type: Code first Stars: 3.4k ⭐ Last Release: undefined |
|
|
Scala
Library | Federation 1 Support | Federation 2 Support | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Caliban | ||||||||||||||||||||||||||||||||
Functional GraphQL library for Scala GitHub: ghostdogpr/caliban Type: Code first Stars: 947 ⭐ Last Release: 2024-09-24 |
|
| ||||||||||||||||||||||||||||||
Sangria | ||||||||||||||||||||||||||||||||
Scala GraphQL implementation GitHub: sangria-graphql/sangria Type: Code first Stars: 2.0k ⭐ Last Release: 2024-11-07 Federation Library: sangria-graphql/sangria-federated |
|
|
Swift
Library | Federation 1 Support | Federation 2 Support | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Graphiti | ||||||||||||||||||||||||||||||||
The Swift GraphQL Schema framework for macOS and Linux GitHub: GraphQLSwift/Graphiti Type: SDL first Stars: 534 ⭐ Last Release: 2024-12-14 |
|
|
Other Solutions
Library | Federation 1 Support | Federation 2 Support | ||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
AWS AppSync | ||||||||||||||||||||||||||||||||
Serverless GraphQL and Pub/Sub APIs |
|
| ||||||||||||||||||||||||||||||
Dgraph | ||||||||||||||||||||||||||||||||
Dgraph is the native GraphQL database with a graph backend. It is open-source, scalable, distributed, highly available and lightning fast. |
|
| ||||||||||||||||||||||||||||||
GraphQL Mesh | ||||||||||||||||||||||||||||||||
Executable GraphQL schema from multiple data sources, query anything, run anywhere. GitHub: Urigo/graphql-mesh Type: undefined Stars: 3.3k ⭐ Last Release: 2024-12-14 |
|
| ||||||||||||||||||||||||||||||
Neo4J Graph Database | ||||||||||||||||||||||||||||||||
A GraphQL to Cypher query execution layer for Neo4j and JavaScript GraphQL implementations. GitHub: neo4j/graphql Type: Code first | SDL first Stars: 513 ⭐ Last Release: 2024-12-04 Core Library: GraphQL.js Federation Library: Apollo Subgraph |
|
| ||||||||||||||||||||||||||||||
IBM API Connect for GraphQL | ||||||||||||||||||||||||||||||||
Build GraphQL APIs for all your data in a declarative way. Federate across any data source, including GraphQL. |
|
|