Closed dariuszkuc closed 9 months ago
The following open-source GraphQL server libraries and other solutions support acting as a subgraph in a federated supergraph.
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Apollo Federation Subgraph Compatibility Results
The following open-source GraphQL server libraries and other solutions support acting as a subgraph in a federated supergraph.
Table Legend
Ballerina
Github: ballerina-platform/module-ballerina-graphql
Type: Code first
Stars: 143 ⭐
Last Release: 2023-09-18
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
C# / .NET
Github: graphql-dotnet/graphql-dotnet
Type: Code first | SDL first
Stars: 5.7k ⭐
Last Release: 2023-12-16
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Github: ChilliCream/graphql-platform
Type: Code first | SDL first
Stars: 4.8k ⭐
Last Release: 2024-01-26
Federation Library: apollographql/federation-hotchocolate
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Elixir
Github: absinthe-graphql/absinthe
Type: Code first
Stars: 4.2k ⭐
Last Release: 2021-09-28
Federation Library: DivvyPayHQ/absinthe_federation
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Go
Github: 99designs/gqlgen
Type: SDL first
Stars: 9.4k ⭐
Last Release: 2024-01-18
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Github: dariuszkuc/graphql
Type: Code first
Stars: 2 ⭐
Last Release: 2022-11-11
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Java / Kotlin
Github: netflix/dgs-framework
Type: SDL first
Stars: 2.9k ⭐
Last Release: 2024-02-01
Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
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
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Github: ExpediaGroup/graphql-kotlin
Type: Code first
Stars: 1.7k ⭐
Last Release: 2024-01-25
Core Library: GraphQL Java
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Github: spring-projects/spring-graphql
Type: SDL first
Stars: 1.5k ⭐
Last Release: 2023-11-21
Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
JavaScript / TypeScript
Github: apollographql/apollo-server
Type: SDL first
Stars: 13.6k ⭐
Last Release: 2024-01-02
Core Library: GraphQL.js
Federation Library: Apollo Subgraph
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Github: graphql/express-graphql
Type: SDL first
Stars: 6.3k ⭐
Last Release: 2020-11-19
Core Library: GraphQL.js
Federation Library: Apollo Subgraph
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Github: dotansimha/graphql-yoga
Type: SDL first
Stars: 7.9k ⭐
Last Release: 2024-01-18
Core Library: GraphQL.js
Federation Library: Apollo Subgraph
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Github: contra/graphql-helix
Type: SDL first
Stars: 835 ⭐
Last Release: 2022-07-09
Core Library: GraphQL.js
Federation Library: Apollo Subgraph
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Github: mercurius-js/mercurius
Type: SDL first
Stars: 2.3k ⭐
Last Release: 2023-12-26
Core Library: GraphQL.js
Federation Library: Apollo Subgraph
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Github: nestjs/graphql
Type: Code first
Stars: 1.4k ⭐
Last Release: 2023-06-16
Core Library: GraphQL.js
Federation Library: Apollo Subgraph
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Github: nestjs/graphql
Type: SDL first
Stars: 1.4k ⭐
Last Release: 2023-06-16
Core Library: GraphQL.js
Federation Library: Apollo Subgraph
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Github: hayes/pothos
Type: Code first
Stars: 2.2k ⭐
Last Release: 2024-01-28
Core Library: GraphQL.js
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
PHP
Github: nuwave/lighthouse
Type: SDL first
Stars: 3.3k ⭐
Last Release: 2024-02-01
Core Library: webonyx/graphql-php
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Github: webonyx/graphql-php
Type: Code first
Stars: 4.6k ⭐
Last Release: 2024-01-25
Federation Library: Skillshare/apollo-federation-php
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Python
Github: mirumee/ariadne
Type: SDL first
Stars: 2.1k ⭐
Last Release: 2024-01-31
Core Library: GraphQL-core 3
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Github: graphql-python/graphene
Type: Code first
Stars: 7.9k ⭐
Last Release: 2023-07-26
Core Library: GraphQL-core 3
Federation Library: graphql-python/graphene-federation
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Github: strawberry-graphql/strawberry
Type: Code first
Stars: 3.6k ⭐
Last Release: 2024-01-28
Core Library: GraphQL-core 3
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Ruby
Github: rmosolgo/graphql-ruby
Type: Code first
Stars: 5.3k ⭐
Last Release: 2021-02-12
Federation Library: Gusto/apollo-federation-ruby
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Rust
Github: async-graphql/async-graphql
Type: Code first
Stars: 3.1k ⭐
Last Release: 2022-11-28
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Scala
Github: ghostdogpr/caliban
Type: Code first
Stars: 921 ⭐
Last Release: 2024-01-16
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Github: sangria-graphql/sangria
Type: Code first
Stars: 2.0k ⭐
Last Release: 2024-02-01
Federation Library: sangria-graphql/sangria-federated
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Swift
Github: GraphQLSwift/Graphiti
Type: SDL first
Stars: 517 ⭐
Last Release: 2023-11-15
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Other Solutions
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Github: grafbase/grafbase
Type: Code first | SDL first
Stars: 899 ⭐
Last Release: 2024-02-01
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Github: Urigo/graphql-mesh
Stars: 3.1k ⭐
Last Release: 2024-01-18
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
Github: neo4j/graphql
Type: Code first | SDL first
Stars: 468 ⭐
Last Release: 2024-01-16
Core Library: GraphQL.js
Federation Library: Apollo Subgraph
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject
_service
@key (single)
@key (multi)
@key (composite)
repeatable @key
@requires
@provides
federated tracing
@link
@shareable
@tag
@override
@inaccessible
@composeDirective
@interfaceObject