Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fix(deps): update dependency commander to v12 #597

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Feb 3, 2024

This PR contains the following updates:

Package Change Age Adoption Passing Confidence
commander ^11.0.0 -> ^12.0.0 age adoption passing confidence

Release Notes

tj/commander.js (commander)

v12.1.0

Compare Source

Added

v12.0.0

Compare Source

Added
  • .addHelpOption() as another way of configuring built-in help option ([#​2006])
  • .helpCommand() for configuring built-in help command ([#​2087])
Fixed
  • Breaking: use non-zero exit code when spawned executable subcommand terminates due to a signal ([#​2023])
  • Breaking: check passThroughOptions constraints when using .addCommand and throw if parent command does not have .enablePositionalOptions() enabled ([#​1937])
Changed
  • Breaking: Commander 12 requires Node.js v18 or higher ([#​2027])
  • Breaking: throw an error if add an option with a flag which is already in use ([#​2055])
  • Breaking: throw an error if add a command with name or alias which is already in use ([#​2059])
  • Breaking: throw error when calling .storeOptionsAsProperties() after setting an option value ([#​1928])
  • replace non-standard JSDoc of @api private with documented @private ([#​1949])
  • .addHelpCommand() now takes a Command (passing string or boolean still works as before but deprecated) ([#​2087])
  • refactor internal implementation of built-in help option ([#​2006])
  • refactor internal implementation of built-in help command ([#​2087])
Deprecated
  • .addHelpCommand() passing string or boolean (use .helpCommand() or pass a Command) ([#​2087])
Removed
  • Breaking: removed default export of a global Command instance from CommonJS (use the named program export instead) ([#​2017])
Migration Tips

global program

If you are using the deprecated default import of the global Command object, you need to switch to using a named import (or create a new Command).

// const program = require('commander');
const { program } = require('commander');

option and command clashes

A couple of configuration problems now throw an error, which will pick up issues in existing programs:

  • adding an option which uses the same flag as a previous option
  • adding a command which uses the same name or alias as a previous command

v11.1.0

Compare Source

Fixed
  • TypeScript: update OptionValueSource to allow any string, to match supported use of custom sources ([#​1983])
  • TypeScript: add that Command.version() can also be used as getter ([#​1982])
  • TypeScript: add null return type to Commands.executableDir(), for when not configured ([#​1965])
  • subcommands with an executable handler and only a short help flag are now handled correctly by the parent's help command ([#​1930])
Added
  • registeredArguments property on Command with the array of defined Argument (like Command.options for Option) ([#​2010])
  • TypeScript declarations for Option properties: envVar, presetArg ([#​2019])
  • TypeScript declarations for Argument properties: argChoices, defaultValue, defaultValueDescription ([#​2019])
  • example file which shows how to configure help to display any custom usage in the list of subcommands ([#​1896])
Changed
  • (developer) refactor TypeScript configs for multiple use-cases, and enable checks in JavaScript files in supporting editors ([#​1969])
Deprecated
  • Command._args was private anyway, but now available as registeredArguments ([#​2010])

Configuration

📅 Schedule: Branch creation - "every weekend" in timezone America/Los_Angeles, Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot requested a review from a team as a code owner February 3, 2024 13:24
Copy link
Contributor

github-actions bot commented Feb 3, 2024

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

Icon Description
Maintained by Apollo 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: 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

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.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🔲
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: 4.8k ⭐
Last Release: 2024-01-26

Federation Library: apollographql/federation-hotchocolate  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Elixir

Library Federation 1 Support Federation 2 Support
Absinthe
The GraphQL toolkit for 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

Library Federation 1 Support Federation 2 Support
gqlgen
go generate based graphql server library

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🔲
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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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: 2.9k ⭐
Last Release: 2024-01-26

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
GraphQL Kotlin
Libraries for running GraphQL in Kotlin

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🟢
Spring GraphQL
Spring Integration for GraphQL

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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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  Maintained by Apollo

Type: SDL first
Stars: 13.6k ⭐
Last Release: 2024-01-02

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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: 7.9k ⭐
Last Release: 2024-01-18

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
GraphQL Helix
A highly evolved and framework-agnostic GraphQL HTTP server.

Github: contra/graphql-helix

Type: SDL first
Stars: 836 ⭐
Last Release: 2022-07-09

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Mercurius
Implement GraphQL servers and gateways with Fastify

Github: mercurius-js/mercurius

Type: SDL first
Stars: 2.3k ⭐
Last Release: 2023-12-26

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.4k ⭐
Last Release: 2023-06-16

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🔲
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
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.4k ⭐
Last Release: 2023-06-16

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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.2k ⭐
Last Release: 2024-01-04

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

Library Federation 1 Support Federation 2 Support
Lighthouse (Laravel)
A framework for serving GraphQL from Laravel

Github: nuwave/lighthouse

Type: SDL first
Stars: 3.3k ⭐
Last Release: 2024-01-17

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🟢
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-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

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.1k ⭐
Last Release: 2024-01-08

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🟢
Graphene
GraphQL framework for Python

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🔲
Strawberry
A GraphQL library for Python that leverages type annotations 🍓

Github: strawberry-graphql/strawberry

Type: Code first
Stars: 3.6k ⭐
Last Release: 2024-01-24

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

Library Federation 1 Support Federation 2 Support
GraphQL Ruby
Ruby implementation of GraphQL

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

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.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

Library Federation 1 Support Federation 2 Support
Caliban
Functional GraphQL library for Scala

Github: ghostdogpr/caliban

Type: Code first
Stars: 890 ⭐
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🟢
Sangria
Scala GraphQL implementation

Github: sangria-graphql/sangria

Type: Code first
Stars: 2.0k ⭐
Last Release: 2023-10-16

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

Library Federation 1 Support Federation 2 Support
Graphiti
The Swift GraphQL Schema framework for macOS and Linux

Github: GraphQLSwift/Graphiti

Type: SDL first
Stars: 514 ⭐
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




















Library Federation 1 Support Federation 2 Support
AWS AppSync
Serverless GraphQL and Pub/Sub APIs


_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
Dgraph
Dgraph is the native GraphQL database with a graph backend. It is open-source, scalable, distributed, highly available and lightning fast.


_service
@key (single)🟢
@key (multi)🔲
@key (composite)🔲
repeatable @key🔲
@requires🔲
@provides🔲
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
Grafbase
The GraphQL platform

Github: grafbase/grafbase

Type: Code first | SDL first
Stars: 895 ⭐
Last Release: 2024-01-24

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
GraphQL Mesh
Executable GraphQL schema from multiple data sources, query anything, run anywhere.

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🔲

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: 466 ⭐

Last Release: 2024-01-16



Core Library: GraphQL.js

Federation Library: Apollo Subgraph  Maintained by Apollo










_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

StepZen, an IBM Company
Build GraphQL APIs for all your data in a declarative way. Federate across any data source, including GraphQL.















_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🔲
repeatable @key🔲
@requires🟢
@provides🔲
federated tracing🔲










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

@renovate renovate bot force-pushed the renovate/commander-12.x branch 2 times, most recently from f8b9c1f to 4bc5aa6 Compare February 10, 2024 09:37
Copy link
Contributor

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

Icon Description
Maintained by Apollo 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: 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

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.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🔲
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: 4.8k ⭐
Last Release: 2024-01-26

Federation Library: apollographql/federation-hotchocolate  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Elixir

Library Federation 1 Support Federation 2 Support
Absinthe
The GraphQL toolkit for 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

Library Federation 1 Support Federation 2 Support
gqlgen
go generate based graphql server library

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🔲
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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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: 2.9k ⭐
Last Release: 2024-02-01

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
GraphQL Kotlin
Libraries for running GraphQL in Kotlin

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🟢
Spring GraphQL
Spring Integration for GraphQL

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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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  Maintained by Apollo

Type: SDL first
Stars: 13.6k ⭐
Last Release: 2024-01-02

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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: 7.9k ⭐
Last Release: 2024-01-18

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
GraphQL Helix
A highly evolved and framework-agnostic GraphQL HTTP server.

Github: contra/graphql-helix

Type: SDL first
Stars: 835 ⭐
Last Release: 2022-07-09

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Mercurius
Implement GraphQL servers and gateways with Fastify

Github: mercurius-js/mercurius

Type: SDL first
Stars: 2.3k ⭐
Last Release: 2023-12-26

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.4k ⭐
Last Release: 2023-06-16

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🔲
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
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.4k ⭐
Last Release: 2023-06-16

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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.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

Library Federation 1 Support Federation 2 Support
Lighthouse (Laravel)
A framework for serving GraphQL from Laravel

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🟢
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-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

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.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🟢
Graphene
GraphQL framework for Python

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🔲
Strawberry
A GraphQL library for Python that leverages type annotations 🍓

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

Library Federation 1 Support Federation 2 Support
GraphQL Ruby
Ruby implementation of GraphQL

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

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.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

Library Federation 1 Support Federation 2 Support
Caliban
Functional GraphQL library for 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🟢
Sangria
Scala GraphQL implementation

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

Library Federation 1 Support Federation 2 Support
Graphiti
The Swift GraphQL Schema framework for macOS and Linux

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




















Library Federation 1 Support Federation 2 Support
AWS AppSync
Serverless GraphQL and Pub/Sub APIs


_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
Dgraph
Dgraph is the native GraphQL database with a graph backend. It is open-source, scalable, distributed, highly available and lightning fast.


_service
@key (single)🟢
@key (multi)🔲
@key (composite)🔲
repeatable @key🔲
@requires🔲
@provides🔲
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
Grafbase
The GraphQL platform

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🔲
GraphQL Mesh
Executable GraphQL schema from multiple data sources, query anything, run anywhere.

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🔲

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: 468 ⭐

Last Release: 2024-01-16



Core Library: GraphQL.js

Federation Library: Apollo Subgraph  Maintained by Apollo










_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

StepZen, an IBM Company
Build GraphQL APIs for all your data in a declarative way. Federate across any data source, including GraphQL.















_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🔲
repeatable @key🔲
@requires🟢
@provides🔲
federated tracing🔲










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

@renovate renovate bot force-pushed the renovate/commander-12.x branch from 4bc5aa6 to 3b9ffb6 Compare February 17, 2024 09:20
Copy link
Contributor

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

Icon Description
Maintained by Apollo 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: 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

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.7k ⭐
Last Release: 2024-02-06

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🔲
@requires🟢
@provides🟢
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
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: 4.8k ⭐
Last Release: 2024-02-09

Federation Library: apollographql/federation-hotchocolate  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Elixir

Library Federation 1 Support Federation 2 Support
Absinthe
The GraphQL toolkit for 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

Library Federation 1 Support Federation 2 Support
gqlgen
go generate based graphql server library

Github: 99designs/gqlgen

Type: SDL first
Stars: 9.5k ⭐
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🔲
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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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: 2.9k ⭐
Last Release: 2024-02-09

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
GraphQL Kotlin
Libraries for running GraphQL in Kotlin

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🟢
Spring GraphQL
Spring Integration for GraphQL

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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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  Maintained by Apollo

Type: SDL first
Stars: 13.6k ⭐
Last Release: 2024-01-02

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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: 7.9k ⭐
Last Release: 2024-02-04

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
GraphQL Helix
A highly evolved and framework-agnostic GraphQL HTTP server.

Github: contra/graphql-helix

Type: SDL first
Stars: 835 ⭐
Last Release: 2022-07-09

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Mercurius
Implement GraphQL servers and gateways with Fastify

Github: mercurius-js/mercurius

Type: SDL first
Stars: 2.3k ⭐
Last Release: 2023-12-26

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.4k ⭐
Last Release: 2024-02-07

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🔲
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
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.4k ⭐
Last Release: 2024-02-07

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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.2k ⭐
Last Release: 2024-02-08

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

Library Federation 1 Support Federation 2 Support
Lighthouse (Laravel)
A framework for serving GraphQL from Laravel

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🟢
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-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

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.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🟢
Graphene
GraphQL framework for Python

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🔲
Strawberry
A GraphQL library for Python that leverages type annotations 🍓

Github: strawberry-graphql/strawberry

Type: Code first
Stars: 3.7k ⭐
Last Release: 2024-02-06

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

Library Federation 1 Support Federation 2 Support
GraphQL Ruby
Ruby implementation of GraphQL

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

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.2k ⭐
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

Library Federation 1 Support Federation 2 Support
Caliban
Functional GraphQL library for Scala

Github: ghostdogpr/caliban

Type: Code first
Stars: 922 ⭐
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🟢
Sangria
Scala GraphQL implementation

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

Library Federation 1 Support Federation 2 Support
Graphiti
The Swift GraphQL Schema framework for macOS and Linux

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




















Library Federation 1 Support Federation 2 Support
AWS AppSync
Serverless GraphQL and Pub/Sub APIs


_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
Dgraph
Dgraph is the native GraphQL database with a graph backend. It is open-source, scalable, distributed, highly available and lightning fast.


_service
@key (single)🟢
@key (multi)🔲
@key (composite)🔲
repeatable @key🔲
@requires🔲
@provides🔲
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
Grafbase
The GraphQL platform

Github: grafbase/grafbase

Type: Code first | SDL first
Stars: 902 ⭐
Last Release: 2024-02-08

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
GraphQL Mesh
Executable GraphQL schema from multiple data sources, query anything, run anywhere.

Github: Urigo/graphql-mesh

Stars: 3.1k ⭐

Last Release: 2024-02-07













_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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: 467 ⭐

Last Release: 2024-01-16



Core Library: GraphQL.js

Federation Library: Apollo Subgraph  Maintained by Apollo










_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

StepZen, an IBM Company
Build GraphQL APIs for all your data in a declarative way. Federate across any data source, including GraphQL.















_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🔲
repeatable @key🔲
@requires🟢
@provides🔲
federated tracing🔲










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

@renovate renovate bot force-pushed the renovate/commander-12.x branch from 3b9ffb6 to 90f4e0e Compare February 18, 2024 00:14
Copy link
Contributor

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

Icon Description
Maintained by Apollo 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: 143 ⭐
Last Release: 2024-02-15

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🔲
@provides🔲
federated tracing🔲
@link🟢
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲

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.7k ⭐
Last Release: 2024-02-06

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🔲
@requires🟢
@provides🟢
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
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: 4.8k ⭐
Last Release: 2024-02-17

Federation Library: apollographql/federation-hotchocolate  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Elixir

Library Federation 1 Support Federation 2 Support
Absinthe
The GraphQL toolkit for 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

Library Federation 1 Support Federation 2 Support
gqlgen
go generate based graphql server library

Github: 99designs/gqlgen

Type: SDL first
Stars: 9.5k ⭐
Last Release: 2024-02-15

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🔲
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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: 2.9k ⭐
Last Release: 2024-02-09

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
GraphQL Kotlin
Libraries for running GraphQL in Kotlin

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🟢
Spring GraphQL
Spring Integration for GraphQL

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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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  Maintained by Apollo

Type: SDL first
Stars: 13.6k ⭐
Last Release: 2024-01-02

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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: 7.9k ⭐
Last Release: 2024-02-04

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
GraphQL Helix
A highly evolved and framework-agnostic GraphQL HTTP server.

Github: contra/graphql-helix

Type: SDL first
Stars: 834 ⭐
Last Release: 2022-07-09

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Mercurius
Implement GraphQL servers and gateways with Fastify

Github: mercurius-js/mercurius

Type: SDL first
Stars: 2.3k ⭐
Last Release: 2023-12-26

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.4k ⭐
Last Release: 2024-02-07

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🔲
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
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.4k ⭐
Last Release: 2024-02-07

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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.2k ⭐
Last Release: 2024-02-14

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

Library Federation 1 Support Federation 2 Support
Lighthouse (Laravel)
A framework for serving GraphQL from Laravel

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🟢
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-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

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.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🟢
Graphene
GraphQL framework for Python

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🔲
Strawberry
A GraphQL library for Python that leverages type annotations 🍓

Github: strawberry-graphql/strawberry

Type: Code first
Stars: 3.7k ⭐
Last Release: 2024-02-06

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

Library Federation 1 Support Federation 2 Support
GraphQL Ruby
Ruby implementation of GraphQL

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

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.2k ⭐
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

Library Federation 1 Support Federation 2 Support
Caliban
Functional GraphQL library for Scala

Github: ghostdogpr/caliban

Type: Code first
Stars: 922 ⭐
Last Release: 2024-02-17

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Sangria
Scala GraphQL implementation

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

Library Federation 1 Support Federation 2 Support
Graphiti
The Swift GraphQL Schema framework for macOS and Linux

Github: GraphQLSwift/Graphiti

Type: SDL first
Stars: 519 ⭐
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




















Library Federation 1 Support Federation 2 Support
AWS AppSync
Serverless GraphQL and Pub/Sub APIs


_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
Dgraph
Dgraph is the native GraphQL database with a graph backend. It is open-source, scalable, distributed, highly available and lightning fast.


_service
@key (single)🟢
@key (multi)🔲
@key (composite)🔲
repeatable @key🔲
@requires🔲
@provides🔲
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
Grafbase
The GraphQL platform

Github: grafbase/grafbase

Type: Code first | SDL first
Stars: 905 ⭐
Last Release: 2024-02-16

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
GraphQL Mesh
Executable GraphQL schema from multiple data sources, query anything, run anywhere.

Github: Urigo/graphql-mesh

Stars: 3.1k ⭐

Last Release: 2024-02-13













_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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: 466 ⭐

Last Release: 2024-01-16



Core Library: GraphQL.js

Federation Library: Apollo Subgraph  Maintained by Apollo










_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

StepZen, an IBM Company
Build GraphQL APIs for all your data in a declarative way. Federate across any data source, including GraphQL.















_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🔲
repeatable @key🔲
@requires🟢
@provides🔲
federated tracing🔲










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

@renovate renovate bot force-pushed the renovate/commander-12.x branch from 90f4e0e to 6e67879 Compare February 24, 2024 09:16
Copy link
Contributor

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

Icon Description
Maintained by Apollo 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: 143 ⭐
Last Release: 2024-02-15

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🔲
@provides🔲
federated tracing🔲
@link🟢
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲

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.7k ⭐
Last Release: 2024-02-06

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🔲
@requires🟢
@provides🟢
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
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: 4.8k ⭐
Last Release: 2024-02-17

Federation Library: apollographql/federation-hotchocolate  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Elixir

Library Federation 1 Support Federation 2 Support
Absinthe
The GraphQL toolkit for 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

Library Federation 1 Support Federation 2 Support
gqlgen
go generate based graphql server library

Github: 99designs/gqlgen

Type: SDL first
Stars: 9.5k ⭐
Last Release: 2024-02-15

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🔲
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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: 2.9k ⭐
Last Release: 2024-02-09

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
GraphQL Kotlin
Libraries for running GraphQL in Kotlin

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🟢
Spring GraphQL
Spring Integration for GraphQL

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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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  Maintained by Apollo

Type: SDL first
Stars: 13.6k ⭐
Last Release: 2024-01-02

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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: 7.9k ⭐
Last Release: 2024-02-04

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
GraphQL Helix
A highly evolved and framework-agnostic GraphQL HTTP server.

Github: contra/graphql-helix

Type: SDL first
Stars: 834 ⭐
Last Release: 2022-07-09

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Mercurius
Implement GraphQL servers and gateways with Fastify

Github: mercurius-js/mercurius

Type: SDL first
Stars: 2.3k ⭐
Last Release: 2023-12-26

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.4k ⭐
Last Release: 2024-02-07

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🔲
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
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.4k ⭐
Last Release: 2024-02-07

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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.2k ⭐
Last Release: 2024-02-14

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

Library Federation 1 Support Federation 2 Support
Lighthouse (Laravel)
A framework for serving GraphQL from Laravel

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🟢
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-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

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.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🟢
Graphene
GraphQL framework for Python

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🔲
Strawberry
A GraphQL library for Python that leverages type annotations 🍓

Github: strawberry-graphql/strawberry

Type: Code first
Stars: 3.7k ⭐
Last Release: 2024-02-06

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

Library Federation 1 Support Federation 2 Support
GraphQL Ruby
Ruby implementation of GraphQL

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

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.2k ⭐
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

Library Federation 1 Support Federation 2 Support
Caliban
Functional GraphQL library for Scala

Github: ghostdogpr/caliban

Type: Code first
Stars: 922 ⭐
Last Release: 2024-02-17

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Sangria
Scala GraphQL implementation

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

Library Federation 1 Support Federation 2 Support
Graphiti
The Swift GraphQL Schema framework for macOS and Linux

Github: GraphQLSwift/Graphiti

Type: SDL first
Stars: 519 ⭐
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




















Library Federation 1 Support Federation 2 Support
AWS AppSync
Serverless GraphQL and Pub/Sub APIs


_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
Dgraph
Dgraph is the native GraphQL database with a graph backend. It is open-source, scalable, distributed, highly available and lightning fast.


_service
@key (single)🟢
@key (multi)🔲
@key (composite)🔲
repeatable @key🔲
@requires🔲
@provides🔲
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
Grafbase
The GraphQL platform

Github: grafbase/grafbase

Type: Code first | SDL first
Stars: 905 ⭐
Last Release: 2024-02-16

_service🟢
@key (single)
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link
@shareable🟢
@tag🟢
@override🔲
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
GraphQL Mesh
Executable GraphQL schema from multiple data sources, query anything, run anywhere.

Github: Urigo/graphql-mesh

Stars: 3.1k ⭐

Last Release: 2024-02-13













_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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: 466 ⭐

Last Release: 2024-01-16



Core Library: GraphQL.js

Federation Library: Apollo Subgraph  Maintained by Apollo










_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

StepZen, an IBM Company
Build GraphQL APIs for all your data in a declarative way. Federate across any data source, including GraphQL.















_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🔲
repeatable @key🔲
@requires🟢
@provides🔲
federated tracing🔲










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

@renovate renovate bot force-pushed the renovate/commander-12.x branch from 6e67879 to ab71848 Compare February 26, 2024 05:09
@renovate renovate bot force-pushed the renovate/commander-12.x branch from ab71848 to 39f6db5 Compare March 16, 2024 08:22
Copy link
Contributor

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

Icon Description
Maintained by Apollo 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: 144 ⭐
Last Release: 2024-02-21

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🔲
@provides🔲
federated tracing🔲
@link🟢
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲

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.7k ⭐
Last Release: 2024-02-06

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🔲
@requires🟢
@provides🟢
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
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: 4.8k ⭐
Last Release: 2024-03-02

Federation Library: apollographql/federation-hotchocolate  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Elixir

Library Federation 1 Support Federation 2 Support
Absinthe
The GraphQL toolkit for 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

Library Federation 1 Support Federation 2 Support
gqlgen
go generate based graphql server library

Github: 99designs/gqlgen

Type: SDL first
Stars: 9.5k ⭐
Last Release: 2024-02-15

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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: 2.9k ⭐
Last Release: 2024-02-28

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
GraphQL Kotlin
Libraries for running GraphQL in Kotlin

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🟢
Spring GraphQL
Spring Integration for GraphQL

Github: spring-projects/spring-graphql

Type: SDL first
Stars: 1.5k ⭐
Last Release: 2024-02-21

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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  Maintained by Apollo

Type: SDL first
Stars: 13.6k ⭐
Last Release: 2024-01-02

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.0k ⭐
Last Release: 2024-02-04

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
GraphQL Helix
A highly evolved and framework-agnostic GraphQL HTTP server.

Github: contra/graphql-helix

Type: SDL first
Stars: 832 ⭐
Last Release: 2022-07-09

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Mercurius
Implement GraphQL servers and gateways with Fastify

Github: mercurius-js/mercurius

Type: SDL first
Stars: 2.3k ⭐
Last Release: 2023-12-26

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.4k ⭐
Last Release: 2024-02-07

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🔲
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
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.4k ⭐
Last Release: 2024-02-07

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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.2k ⭐
Last Release: 2024-03-02

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

Library Federation 1 Support Federation 2 Support
Lighthouse (Laravel)
A framework for serving GraphQL from Laravel

Github: nuwave/lighthouse

Type: SDL first
Stars: 3.3k ⭐
Last Release: 2024-03-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🟢
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-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

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.1k ⭐
Last Release: 2024-02-29

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🟢
Graphene
GraphQL framework for Python

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🔲
Strawberry
A GraphQL library for Python that leverages type annotations 🍓

Github: strawberry-graphql/strawberry

Type: Code first
Stars: 3.7k ⭐
Last Release: 2024-02-06

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

Library Federation 1 Support Federation 2 Support
GraphQL Ruby
Ruby implementation of GraphQL

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

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.2k ⭐
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

Library Federation 1 Support Federation 2 Support
Caliban
Functional GraphQL library for Scala

Github: ghostdogpr/caliban

Type: Code first
Stars: 925 ⭐
Last Release: 2024-02-17

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Sangria
Scala GraphQL implementation

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

Library Federation 1 Support Federation 2 Support
Graphiti
The Swift GraphQL Schema framework for macOS and Linux

Github: GraphQLSwift/Graphiti

Type: SDL first
Stars: 521 ⭐
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




















Library Federation 1 Support Federation 2 Support
AWS AppSync
Serverless GraphQL and Pub/Sub APIs


_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
Dgraph
Dgraph is the native GraphQL database with a graph backend. It is open-source, scalable, distributed, highly available and lightning fast.


_service
@key (single)🟢
@key (multi)🔲
@key (composite)🔲
repeatable @key🔲
@requires🔲
@provides🔲
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
Grafbase
The GraphQL platform

Github: grafbase/grafbase

Type: Code first | SDL first
Stars: 934 ⭐
Last Release: 2024-02-23

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
GraphQL Mesh
Executable GraphQL schema from multiple data sources, query anything, run anywhere.

Github: Urigo/graphql-mesh

Stars: 3.1k ⭐

Last Release: 2024-02-28













_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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: 467 ⭐

Last Release: 2024-02-27



Core Library: GraphQL.js

Federation Library: Apollo Subgraph  Maintained by Apollo










_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

StepZen, an IBM Company
Build GraphQL APIs for all your data in a declarative way. Federate across any data source, including GraphQL.















_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🔲
repeatable @key🔲
@requires🟢
@provides🔲
federated tracing🔲










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

@renovate renovate bot force-pushed the renovate/commander-12.x branch 2 times, most recently from 70000d6 to 872b621 Compare April 7, 2024 22:10
@renovate renovate bot force-pushed the renovate/commander-12.x branch 2 times, most recently from 9a42891 to ffc90ce Compare April 28, 2024 03:57
@renovate renovate bot force-pushed the renovate/commander-12.x branch from ffc90ce to da8ae4b Compare May 18, 2024 08:26
Copy link
Contributor

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

Icon Description
Maintained by Apollo 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: 144 ⭐
Last Release: 2024-05-03

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🔲
@provides🔲
federated tracing🔲
@link🟢
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲

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.8k ⭐
Last Release: 2024-02-06

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🔲
@requires🟢
@provides🟢
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
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: 4.9k ⭐
Last Release: 2024-04-22

Federation Library: apollographql/federation-hotchocolate  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Elixir

Library Federation 1 Support Federation 2 Support
Absinthe
The GraphQL toolkit for 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

Library Federation 1 Support Federation 2 Support
gqlgen
go generate based graphql server library

Github: 99designs/gqlgen

Type: SDL first
Stars: 9.6k ⭐
Last Release: 2024-03-11

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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.0k ⭐
Last Release: 2024-04-30

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
GraphQL Kotlin
Libraries for running GraphQL in Kotlin

Github: ExpediaGroup/graphql-kotlin

Type: Code first
Stars: 1.7k ⭐
Last Release: 2024-04-18

Core Library: GraphQL Java
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Spring GraphQL
Spring Integration for GraphQL

Github: spring-projects/spring-graphql

Type: SDL first
Stars: 1.5k ⭐
Last Release: 2024-04-16

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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  Maintained by Apollo

Type: SDL first
Stars: 13.7k ⭐
Last Release: 2024-04-18

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.0k ⭐
Last Release: 2024-03-29

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
GraphQL Helix
A highly evolved and framework-agnostic GraphQL HTTP server.

Github: contra/graphql-helix

Type: SDL first
Stars: 831 ⭐
Last Release: 2022-07-09

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Mercurius
Implement GraphQL servers and gateways with Fastify

Github: mercurius-js/mercurius

Type: SDL first
Stars: 2.3k ⭐
Last Release: 2024-04-22

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.4k ⭐
Last Release: 2024-02-07

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🔲
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
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.4k ⭐
Last Release: 2024-02-07

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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.2k ⭐
Last Release: 2024-04-17

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

Library Federation 1 Support Federation 2 Support
Lighthouse (Laravel)
A framework for serving GraphQL from Laravel

Github: nuwave/lighthouse

Type: SDL first
Stars: 3.3k ⭐
Last Release: 2024-05-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🟢
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-03-11

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

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.1k ⭐
Last Release: 2024-03-18

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🟢
Graphene
GraphQL framework for Python

Github: graphql-python/graphene

Type: Code first
Stars: 8.0k ⭐
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🔲
Strawberry
A GraphQL library for Python that leverages type annotations 🍓

Github: strawberry-graphql/strawberry

Type: Code first
Stars: 3.8k ⭐
Last Release: 2024-05-01

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

Library Federation 1 Support Federation 2 Support
GraphQL Ruby
Ruby implementation of GraphQL

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

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.2k ⭐
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

Library Federation 1 Support Federation 2 Support
Caliban
Functional GraphQL library for Scala

Github: ghostdogpr/caliban

Type: Code first
Stars: 939 ⭐
Last Release: 2024-04-16

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Sangria
Scala GraphQL implementation

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

Library Federation 1 Support Federation 2 Support
Graphiti
The Swift GraphQL Schema framework for macOS and Linux

Github: GraphQLSwift/Graphiti

Type: SDL first
Stars: 523 ⭐
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




















Library Federation 1 Support Federation 2 Support
Dgraph
Dgraph is the native GraphQL database with a graph backend. It is open-source, scalable, distributed, highly available and lightning fast.


_service
@key (single)🟢
@key (multi)🔲
@key (composite)🔲
repeatable @key🔲
@requires🔲
@provides🔲
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
GraphQL Mesh
Executable GraphQL schema from multiple data sources, query anything, run anywhere.

Github: Urigo/graphql-mesh

Stars: 3.2k ⭐

Last Release: 2024-04-30













_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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: 485 ⭐

Last Release: 2024-04-30



Core Library: GraphQL.js

Federation Library: Apollo Subgraph  Maintained by Apollo










_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

StepZen, an IBM Company
Build GraphQL APIs for all your data in a declarative way. Federate across any data source, including GraphQL.















_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🔲
repeatable @key🔲
@requires🟢
@provides🔲
federated tracing🔲










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

@renovate renovate bot force-pushed the renovate/commander-12.x branch from da8ae4b to c4619c8 Compare May 25, 2024 09:12
Copy link
Contributor

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

Icon Description
Maintained by Apollo 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: 144 ⭐
Last Release: 2024-05-03

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🔲
@provides🔲
federated tracing🔲
@link🟢
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲

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.8k ⭐
Last Release: 2024-02-06

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🔲
@requires🟢
@provides🟢
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
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: 4.9k ⭐
Last Release: 2024-04-22

Federation Library: apollographql/federation-hotchocolate  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Elixir

Library Federation 1 Support Federation 2 Support
Absinthe
The GraphQL toolkit for 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

Library Federation 1 Support Federation 2 Support
gqlgen
go generate based graphql server library

Github: 99designs/gqlgen

Type: SDL first
Stars: 9.6k ⭐
Last Release: 2024-03-11

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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.0k ⭐
Last Release: 2024-04-30

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
GraphQL Kotlin
Libraries for running GraphQL in Kotlin

Github: ExpediaGroup/graphql-kotlin

Type: Code first
Stars: 1.7k ⭐
Last Release: 2024-04-18

Core Library: GraphQL Java
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Spring GraphQL
Spring Integration for GraphQL

Github: spring-projects/spring-graphql

Type: SDL first
Stars: 1.5k ⭐
Last Release: 2024-04-16

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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  Maintained by Apollo

Type: SDL first
Stars: 13.7k ⭐
Last Release: 2024-04-18

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.0k ⭐
Last Release: 2024-03-29

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
GraphQL Helix
A highly evolved and framework-agnostic GraphQL HTTP server.

Github: contra/graphql-helix

Type: SDL first
Stars: 831 ⭐
Last Release: 2022-07-09

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Mercurius
Implement GraphQL servers and gateways with Fastify

Github: mercurius-js/mercurius

Type: SDL first
Stars: 2.3k ⭐
Last Release: 2024-04-22

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.4k ⭐
Last Release: 2024-02-07

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🔲
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
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.4k ⭐
Last Release: 2024-02-07

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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.2k ⭐
Last Release: 2024-04-17

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

Library Federation 1 Support Federation 2 Support
Lighthouse (Laravel)
A framework for serving GraphQL from Laravel

Github: nuwave/lighthouse

Type: SDL first
Stars: 3.3k ⭐
Last Release: 2024-05-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🟢
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-03-11

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

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.1k ⭐
Last Release: 2024-03-18

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🟢
Graphene
GraphQL framework for Python

Github: graphql-python/graphene

Type: Code first
Stars: 8.0k ⭐
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🔲
Strawberry
A GraphQL library for Python that leverages type annotations 🍓

Github: strawberry-graphql/strawberry

Type: Code first
Stars: 3.8k ⭐
Last Release: 2024-05-01

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

Library Federation 1 Support Federation 2 Support
GraphQL Ruby
Ruby implementation of GraphQL

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

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.2k ⭐
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

Library Federation 1 Support Federation 2 Support
Caliban
Functional GraphQL library for Scala

Github: ghostdogpr/caliban

Type: Code first
Stars: 939 ⭐
Last Release: 2024-04-16

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Sangria
Scala GraphQL implementation

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

Library Federation 1 Support Federation 2 Support
Graphiti
The Swift GraphQL Schema framework for macOS and Linux

Github: GraphQLSwift/Graphiti

Type: SDL first
Stars: 523 ⭐
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




















Library Federation 1 Support Federation 2 Support
AWS AppSync
Serverless GraphQL and Pub/Sub APIs


_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
Dgraph
Dgraph is the native GraphQL database with a graph backend. It is open-source, scalable, distributed, highly available and lightning fast.


_service
@key (single)🟢
@key (multi)🔲
@key (composite)🔲
repeatable @key🔲
@requires🔲
@provides🔲
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
GraphQL Mesh
Executable GraphQL schema from multiple data sources, query anything, run anywhere.

Github: Urigo/graphql-mesh

Stars: 3.2k ⭐

Last Release: 2024-04-30













_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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: 485 ⭐

Last Release: 2024-04-30



Core Library: GraphQL.js

Federation Library: Apollo Subgraph  Maintained by Apollo










_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

StepZen, an IBM Company
Build GraphQL APIs for all your data in a declarative way. Federate across any data source, including GraphQL.















_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🔲
repeatable @key🔲
@requires🟢
@provides🔲
federated tracing🔲










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

@renovate renovate bot force-pushed the renovate/commander-12.x branch from c4619c8 to e32e089 Compare June 15, 2024 08:03
Copy link
Contributor

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

Icon Description
Maintained by Apollo 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: 142 ⭐
Last Release: 2024-05-06

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🔲
@provides🔲
federated tracing🔲
@link🟢
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲

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.8k ⭐
Last Release: 2024-02-06

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🔲
@requires🟢
@provides🟢
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
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.0k ⭐
Last Release: 2024-06-04

Federation Library: apollographql/federation-hotchocolate  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Elixir

Library Federation 1 Support Federation 2 Support
Absinthe
The GraphQL toolkit for 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

Library Federation 1 Support Federation 2 Support
gqlgen
go generate based graphql server library

Github: 99designs/gqlgen

Type: SDL first
Stars: 9.7k ⭐
Last Release: 2024-06-07

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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.0k ⭐
Last Release: 2024-05-31

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
GraphQL Kotlin
Libraries for running GraphQL in Kotlin

Github: ExpediaGroup/graphql-kotlin

Type: Code first
Stars: 1.7k ⭐
Last Release: 2024-05-06

Core Library: GraphQL Java
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Spring GraphQL
Spring Integration for GraphQL

Github: spring-projects/spring-graphql

Type: SDL first
Stars: 1.5k ⭐
Last Release: 2024-05-21

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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  Maintained by Apollo

Type: SDL first
Stars: 13.7k ⭐
Last Release: 2024-04-18

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.1k ⭐
Last Release: 2024-05-08

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Mercurius
Implement GraphQL servers and gateways with Fastify

Github: mercurius-js/mercurius

Type: SDL first
Stars: 2.3k ⭐
Last Release: 2024-04-22

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.4k ⭐
Last Release: 2024-02-07

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🔲
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
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.4k ⭐
Last Release: 2024-02-07

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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.3k ⭐
Last Release: 2024-05-21

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

Library Federation 1 Support Federation 2 Support
Lighthouse (Laravel)
A framework for serving GraphQL from Laravel

Github: nuwave/lighthouse

Type: SDL first
Stars: 3.3k ⭐
Last Release: 2024-05-05

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🟢
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-03-11

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

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
Graphene
GraphQL framework for Python

Github: graphql-python/graphene

Type: Code first
Stars: 8.0k ⭐
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🔲
Strawberry
A GraphQL library for Python that leverages type annotations 🍓

Github: strawberry-graphql/strawberry

Type: Code first
Stars: 3.8k ⭐
Last Release: 2024-06-07

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

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢

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.3k ⭐
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

Library Federation 1 Support Federation 2 Support
Caliban
Functional GraphQL library for Scala

Github: ghostdogpr/caliban

Type: Code first
Stars: 936 ⭐
Last Release: 2024-06-02

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Sangria
Scala GraphQL implementation

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

Library Federation 1 Support Federation 2 Support
Graphiti
The Swift GraphQL Schema framework for macOS and Linux

Github: GraphQLSwift/Graphiti

Type: SDL first
Stars: 524 ⭐
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




















Library Federation 1 Support Federation 2 Support
AWS AppSync
Serverless GraphQL and Pub/Sub APIs


_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
Dgraph
Dgraph is the native GraphQL database with a graph backend. It is open-source, scalable, distributed, highly available and lightning fast.


_service
@key (single)🟢
@key (multi)🔲
@key (composite)🔲
repeatable @key🔲
@requires🔲
@provides🔲
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
GraphQL Mesh
Executable GraphQL schema from multiple data sources, query anything, run anywhere.

Github: Urigo/graphql-mesh

Stars: 3.2k ⭐

Last Release: 2024-06-06













_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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: 486 ⭐

Last Release: 2024-05-31



Core Library: GraphQL.js

Federation Library: Apollo Subgraph  Maintained by Apollo










_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

StepZen, an IBM Company
Build GraphQL APIs for all your data in a declarative way. Federate across any data source, including GraphQL.















_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🔲
repeatable @key🔲
@requires🟢
@provides🔲
federated tracing🔲










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

@renovate renovate bot force-pushed the renovate/commander-12.x branch from e32e089 to 0633576 Compare June 22, 2024 08:26
Copy link
Contributor

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

Icon Description
Maintained by Apollo 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: 142 ⭐
Last Release: 2024-05-06

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🔲
@provides🔲
federated tracing🔲
@link🟢
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲

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.8k ⭐
Last Release: 2024-02-06

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🔲
@requires🟢
@provides🟢
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
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.1k ⭐
Last Release: 2024-06-12

Federation Library: apollographql/federation-hotchocolate  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Elixir

Library Federation 1 Support Federation 2 Support
Absinthe
The GraphQL toolkit for 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

Library Federation 1 Support Federation 2 Support
gqlgen
go generate based graphql server library

Github: 99designs/gqlgen

Type: SDL first
Stars: 9.7k ⭐
Last Release: 2024-06-13

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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.0k ⭐
Last Release: 2024-06-14

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
GraphQL Kotlin
Libraries for running GraphQL in Kotlin

Github: ExpediaGroup/graphql-kotlin

Type: Code first
Stars: 1.7k ⭐
Last Release: 2024-05-06

Core Library: GraphQL Java
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Spring GraphQL
Spring Integration for GraphQL

Github: spring-projects/spring-graphql

Type: SDL first
Stars: 1.5k ⭐
Last Release: 2024-05-21

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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  Maintained by Apollo

Type: SDL first
Stars: 13.7k ⭐
Last Release: 2024-04-18

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.1k ⭐
Last Release: 2024-05-08

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Mercurius
Implement GraphQL servers and gateways with Fastify

Github: mercurius-js/mercurius

Type: SDL first
Stars: 2.3k ⭐
Last Release: 2024-04-22

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.4k ⭐
Last Release: 2024-02-07

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🔲
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
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.4k ⭐
Last Release: 2024-02-07

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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.3k ⭐
Last Release: 2024-05-21

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

Library Federation 1 Support Federation 2 Support
Lighthouse (Laravel)
A framework for serving GraphQL from Laravel

Github: nuwave/lighthouse

Type: SDL first
Stars: 3.3k ⭐
Last Release: 2024-06-11

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🟢
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-06-13

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

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
Graphene
GraphQL framework for Python

Github: graphql-python/graphene

Type: Code first
Stars: 8.0k ⭐
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🔲
Strawberry
A GraphQL library for Python that leverages type annotations 🍓

Github: strawberry-graphql/strawberry

Type: Code first
Stars: 3.8k ⭐
Last Release: 2024-06-10

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

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢

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.3k ⭐
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

Library Federation 1 Support Federation 2 Support
Caliban
Functional GraphQL library for Scala

Github: ghostdogpr/caliban

Type: Code first
Stars: 937 ⭐
Last Release: 2024-06-02

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Sangria
Scala GraphQL implementation

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

Library Federation 1 Support Federation 2 Support
Graphiti
The Swift GraphQL Schema framework for macOS and Linux

Github: GraphQLSwift/Graphiti

Type: SDL first
Stars: 525 ⭐
Last Release: 2024-06-10

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Other Solutions




















Library Federation 1 Support Federation 2 Support
AWS AppSync
Serverless GraphQL and Pub/Sub APIs


_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
Dgraph
Dgraph is the native GraphQL database with a graph backend. It is open-source, scalable, distributed, highly available and lightning fast.


_service
@key (single)🟢
@key (multi)🔲
@key (composite)🔲
repeatable @key🔲
@requires🔲
@provides🔲
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
GraphQL Mesh
Executable GraphQL schema from multiple data sources, query anything, run anywhere.

Github: Urigo/graphql-mesh

Stars: 3.2k ⭐

Last Release: 2024-06-06













_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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: 486 ⭐

Last Release: 2024-06-13



Core Library: GraphQL.js

Federation Library: Apollo Subgraph  Maintained by Apollo










_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

StepZen, an IBM Company
Build GraphQL APIs for all your data in a declarative way. Federate across any data source, including GraphQL.















_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🔲
repeatable @key🔲
@requires🟢
@provides🔲
federated tracing🔲










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

@renovate renovate bot force-pushed the renovate/commander-12.x branch from 0633576 to 965db5f Compare June 29, 2024 07:26
Copy link
Contributor

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

Icon Description
Maintained by Apollo 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: 142 ⭐
Last Release: 2024-06-17

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🔲
@provides🔲
federated tracing🔲
@link🟢
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲

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.8k ⭐
Last Release: 2024-02-06

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🔲
@requires🟢
@provides🟢
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
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.1k ⭐
Last Release: 2024-06-21

Federation Library: apollographql/federation-hotchocolate  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Elixir

Library Federation 1 Support Federation 2 Support
Absinthe
The GraphQL toolkit for 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

Library Federation 1 Support Federation 2 Support
gqlgen
go generate based graphql server library

Github: 99designs/gqlgen

Type: SDL first
Stars: 9.7k ⭐
Last Release: 2024-06-13

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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.0k ⭐
Last Release: 2024-06-14

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
GraphQL Kotlin
Libraries for running GraphQL in Kotlin

Github: ExpediaGroup/graphql-kotlin

Type: Code first
Stars: 1.7k ⭐
Last Release: 2024-05-06

Core Library: GraphQL Java
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Spring GraphQL
Spring Integration for GraphQL

Github: spring-projects/spring-graphql

Type: SDL first
Stars: 1.5k ⭐
Last Release: 2024-06-18

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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  Maintained by Apollo

Type: SDL first
Stars: 13.7k ⭐
Last Release: 2024-04-18

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.1k ⭐
Last Release: 2024-06-18

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Mercurius
Implement GraphQL servers and gateways with Fastify

Github: mercurius-js/mercurius

Type: SDL first
Stars: 2.3k ⭐
Last Release: 2024-04-22

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.4k ⭐
Last Release: 2024-02-07

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🔲
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
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.4k ⭐
Last Release: 2024-02-07

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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.3k ⭐
Last Release: 2024-06-22

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

Library Federation 1 Support Federation 2 Support
Lighthouse (Laravel)
A framework for serving GraphQL from Laravel

Github: nuwave/lighthouse

Type: SDL first
Stars: 3.3k ⭐
Last Release: 2024-06-21

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🟢
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-06-19

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

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
Graphene
GraphQL framework for Python

Github: graphql-python/graphene

Type: Code first
Stars: 8.0k ⭐
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🔲
Strawberry
A GraphQL library for Python that leverages type annotations 🍓

Github: strawberry-graphql/strawberry

Type: Code first
Stars: 3.8k ⭐
Last Release: 2024-06-10

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

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢

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.3k ⭐
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

Library Federation 1 Support Federation 2 Support
Caliban
Functional GraphQL library for Scala

Github: ghostdogpr/caliban

Type: Code first
Stars: 939 ⭐
Last Release: 2024-06-20

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Sangria
Scala GraphQL implementation

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

Library Federation 1 Support Federation 2 Support
Graphiti
The Swift GraphQL Schema framework for macOS and Linux

Github: GraphQLSwift/Graphiti

Type: SDL first
Stars: 525 ⭐
Last Release: 2024-06-10

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Other Solutions




















Library Federation 1 Support Federation 2 Support
AWS AppSync
Serverless GraphQL and Pub/Sub APIs


_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
Dgraph
Dgraph is the native GraphQL database with a graph backend. It is open-source, scalable, distributed, highly available and lightning fast.


_service
@key (single)🟢
@key (multi)🔲
@key (composite)🔲
repeatable @key🔲
@requires🔲
@provides🔲
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
GraphQL Mesh
Executable GraphQL schema from multiple data sources, query anything, run anywhere.

Github: Urigo/graphql-mesh

Stars: 3.2k ⭐

Last Release: 2024-06-22













_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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: 488 ⭐

Last Release: 2024-06-13



Core Library: GraphQL.js

Federation Library: Apollo Subgraph  Maintained by Apollo










_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

StepZen, an IBM Company
Build GraphQL APIs for all your data in a declarative way. Federate across any data source, including GraphQL.















_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🔲
repeatable @key🔲
@requires🟢
@provides🔲
federated tracing🔲










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

@renovate renovate bot force-pushed the renovate/commander-12.x branch from 965db5f to 1e55b05 Compare August 17, 2024 07:28
Copy link
Contributor

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

Icon Description
Maintained by Apollo 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: 142 ⭐
Last Release: 2024-06-17

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🔲
@provides🔲
federated tracing🔲
@link🟢
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲

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.8k ⭐
Last Release: 2024-02-06

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🔲
@requires🟢
@provides🟢
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
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.1k ⭐
Last Release: 2024-06-21

Federation Library: apollographql/federation-hotchocolate  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Elixir

Library Federation 1 Support Federation 2 Support
Absinthe
The GraphQL toolkit for 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

Library Federation 1 Support Federation 2 Support
gqlgen
go generate based graphql server library

Github: 99designs/gqlgen

Type: SDL first
Stars: 9.7k ⭐
Last Release: 2024-06-13

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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.0k ⭐
Last Release: 2024-06-14

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
GraphQL Kotlin
Libraries for running GraphQL in Kotlin

Github: ExpediaGroup/graphql-kotlin

Type: Code first
Stars: 1.7k ⭐
Last Release: 2024-05-06

Core Library: GraphQL Java
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Spring GraphQL
Spring Integration for GraphQL

Github: spring-projects/spring-graphql

Type: SDL first
Stars: 1.5k ⭐
Last Release: 2024-06-18

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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  Maintained by Apollo

Type: SDL first
Stars: 13.7k ⭐
Last Release: 2024-04-18

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.1k ⭐
Last Release: 2024-06-18

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Mercurius
Implement GraphQL servers and gateways with Fastify

Github: mercurius-js/mercurius

Type: SDL first
Stars: 2.3k ⭐
Last Release: 2024-04-22

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.4k ⭐
Last Release: 2024-02-07

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🔲
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
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.4k ⭐
Last Release: 2024-02-07

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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.3k ⭐
Last Release: 2024-06-22

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

Library Federation 1 Support Federation 2 Support
Lighthouse (Laravel)
A framework for serving GraphQL from Laravel

Github: nuwave/lighthouse

Type: SDL first
Stars: 3.3k ⭐
Last Release: 2024-06-21

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🟢
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-06-19

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

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
Graphene
GraphQL framework for Python

Github: graphql-python/graphene

Type: Code first
Stars: 8.0k ⭐
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🔲
Strawberry
A GraphQL library for Python that leverages type annotations 🍓

Github: strawberry-graphql/strawberry

Type: Code first
Stars: 3.8k ⭐
Last Release: 2024-06-10

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

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢

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.3k ⭐
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

Library Federation 1 Support Federation 2 Support
Caliban
Functional GraphQL library for Scala

Github: ghostdogpr/caliban

Type: Code first
Stars: 939 ⭐
Last Release: 2024-06-20

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Sangria
Scala GraphQL implementation

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

Library Federation 1 Support Federation 2 Support
Graphiti
The Swift GraphQL Schema framework for macOS and Linux

Github: GraphQLSwift/Graphiti

Type: SDL first
Stars: 525 ⭐
Last Release: 2024-06-10

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Other Solutions




















Library Federation 1 Support Federation 2 Support
AWS AppSync
Serverless GraphQL and Pub/Sub APIs


_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
Dgraph
Dgraph is the native GraphQL database with a graph backend. It is open-source, scalable, distributed, highly available and lightning fast.


_service
@key (single)🟢
@key (multi)🔲
@key (composite)🔲
repeatable @key🔲
@requires🔲
@provides🔲
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
GraphQL Mesh
Executable GraphQL schema from multiple data sources, query anything, run anywhere.

Github: Urigo/graphql-mesh

Stars: 3.2k ⭐

Last Release: 2024-06-22













_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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: 488 ⭐

Last Release: 2024-06-13



Core Library: GraphQL.js

Federation Library: Apollo Subgraph  Maintained by Apollo










_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

StepZen, an IBM Company
Build GraphQL APIs for all your data in a declarative way. Federate across any data source, including GraphQL.















_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🔲
repeatable @key🔲
@requires🟢
@provides🔲
federated tracing🔲










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

@renovate renovate bot force-pushed the renovate/commander-12.x branch from 1e55b05 to 18fdebe Compare August 24, 2024 07:09
Copy link
Contributor

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

Icon Description
Maintained by Apollo 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-07-02

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🔲
@provides🔲
federated tracing🔲
@link🟢
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲

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.8k ⭐
Last Release: 2024-02-06

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🔲
@requires🟢
@provides🟢
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
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.1k ⭐
Last Release: 2024-08-15

Federation Library: apollographql/federation-hotchocolate  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Go

Library Federation 1 Support Federation 2 Support
gqlgen
go generate based graphql server library

Github: 99designs/gqlgen

Type: SDL first
Stars: 9.8k ⭐
Last Release: 2024-06-13

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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.0k ⭐
Last Release: 2024-07-11

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
GraphQL Kotlin
Libraries for running GraphQL in Kotlin

Github: ExpediaGroup/graphql-kotlin

Type: Code first
Stars: 1.7k ⭐
Last Release: 2024-07-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🟢
Spring GraphQL
Spring Integration for GraphQL

Github: spring-projects/spring-graphql

Type: SDL first
Stars: 1.5k ⭐
Last Release: 2024-07-16

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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  Maintained by Apollo

Type: SDL first
Stars: 13.7k ⭐
Last Release: 2024-08-08

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.2k ⭐
Last Release: 2024-08-15

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
GraphQL Helix
A highly evolved and framework-agnostic GraphQL HTTP server.

Github: contra/graphql-helix

Type: SDL first
Stars: 828 ⭐
Last Release: 2022-07-09

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Mercurius
Implement GraphQL servers and gateways with Fastify

Github: mercurius-js/mercurius

Type: SDL first
Stars: 2.3k ⭐
Last Release: 2024-04-22

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.4k ⭐
Last Release: 2024-07-02

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🔲
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
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.4k ⭐
Last Release: 2024-07-02

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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.3k ⭐
Last Release: 2024-08-13

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

Library Federation 1 Support Federation 2 Support
Lighthouse (Laravel)
A framework for serving GraphQL from Laravel

Github: nuwave/lighthouse

Type: SDL first
Stars: 3.3k ⭐
Last Release: 2024-08-05

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🟢
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-06-23

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

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
Graphene
GraphQL framework for Python

Github: graphql-python/graphene

Type: Code first
Stars: 8.0k ⭐
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🔲
Strawberry
A GraphQL library for Python that leverages type annotations 🍓

Github: strawberry-graphql/strawberry

Type: Code first
Stars: 3.9k ⭐
Last Release: 2024-07-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🟢

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢

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.3k ⭐
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

Library Federation 1 Support Federation 2 Support
Caliban
Functional GraphQL library for Scala

Github: ghostdogpr/caliban

Type: Code first
Stars: 941 ⭐
Last Release: 2024-07-02

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Sangria
Scala GraphQL implementation

Github: sangria-graphql/sangria

Type: Code first
Stars: 2.0k ⭐
Last Release: 2024-07-22

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

Library Federation 1 Support Federation 2 Support
Graphiti
The Swift GraphQL Schema framework for macOS and Linux

Github: GraphQLSwift/Graphiti

Type: SDL first
Stars: 527 ⭐
Last Release: 2024-07-27

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Other Solutions




















Library Federation 1 Support Federation 2 Support
AWS AppSync
Serverless GraphQL and Pub/Sub APIs


_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
Dgraph
Dgraph is the native GraphQL database with a graph backend. It is open-source, scalable, distributed, highly available and lightning fast.


_service
@key (single)🟢
@key (multi)🔲
@key (composite)🔲
repeatable @key🔲
@requires🔲
@provides🔲
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
GraphQL Mesh
Executable GraphQL schema from multiple data sources, query anything, run anywhere.

Github: Urigo/graphql-mesh

Stars: 3.2k ⭐

Last Release: 2024-08-16













_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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: 495 ⭐

Last Release: 2024-08-15



Core Library: GraphQL.js

Federation Library: Apollo Subgraph  Maintained by Apollo










_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

StepZen, an IBM Company
Build GraphQL APIs for all your data in a declarative way. Federate across any data source, including GraphQL.















_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🔲
repeatable @key🔲
@requires🟢
@provides🔲
federated tracing🔲










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

@renovate renovate bot force-pushed the renovate/commander-12.x branch 2 times, most recently from 9257ade to ec43d29 Compare September 21, 2024 08:21
Copy link
Contributor

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

Icon Description
Maintained by Apollo 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-07-02

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🔲
@provides🔲
federated tracing🔲
@link🟢
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲

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.8k ⭐
Last Release: 2024-02-06

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🔲
@requires🟢
@provides🟢
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
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.1k ⭐
Last Release: 2024-08-15

Federation Library: apollographql/federation-hotchocolate  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Go

Library Federation 1 Support Federation 2 Support
gqlgen
go generate based graphql server library

Github: 99designs/gqlgen

Type: SDL first
Stars: 9.8k ⭐
Last Release: 2024-06-13

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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.0k ⭐
Last Release: 2024-07-11

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
GraphQL Kotlin
Libraries for running GraphQL in Kotlin

Github: ExpediaGroup/graphql-kotlin

Type: Code first
Stars: 1.7k ⭐
Last Release: 2024-07-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🟢
Spring GraphQL
Spring Integration for GraphQL

Github: spring-projects/spring-graphql

Type: SDL first
Stars: 1.5k ⭐
Last Release: 2024-07-16

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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  Maintained by Apollo

Type: SDL first
Stars: 13.7k ⭐
Last Release: 2024-08-08

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.2k ⭐
Last Release: 2024-08-15

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
GraphQL Helix
A highly evolved and framework-agnostic GraphQL HTTP server.

Github: contra/graphql-helix

Type: SDL first
Stars: 828 ⭐
Last Release: 2022-07-09

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Mercurius
Implement GraphQL servers and gateways with Fastify

Github: mercurius-js/mercurius

Type: SDL first
Stars: 2.3k ⭐
Last Release: 2024-04-22

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.4k ⭐
Last Release: 2024-07-02

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🔲
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
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.4k ⭐
Last Release: 2024-07-02

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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.3k ⭐
Last Release: 2024-08-13

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

Library Federation 1 Support Federation 2 Support
Lighthouse (Laravel)
A framework for serving GraphQL from Laravel

Github: nuwave/lighthouse

Type: SDL first
Stars: 3.3k ⭐
Last Release: 2024-08-05

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🟢
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-06-23

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

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
Graphene
GraphQL framework for Python

Github: graphql-python/graphene

Type: Code first
Stars: 8.0k ⭐
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🔲
Strawberry
A GraphQL library for Python that leverages type annotations 🍓

Github: strawberry-graphql/strawberry

Type: Code first
Stars: 3.9k ⭐
Last Release: 2024-07-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🟢

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢

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.3k ⭐
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

Library Federation 1 Support Federation 2 Support
Caliban
Functional GraphQL library for Scala

Github: ghostdogpr/caliban

Type: Code first
Stars: 941 ⭐
Last Release: 2024-07-02

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Sangria
Scala GraphQL implementation

Github: sangria-graphql/sangria

Type: Code first
Stars: 2.0k ⭐
Last Release: 2024-07-22

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

Library Federation 1 Support Federation 2 Support
Graphiti
The Swift GraphQL Schema framework for macOS and Linux

Github: GraphQLSwift/Graphiti

Type: SDL first
Stars: 527 ⭐
Last Release: 2024-07-27

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Other Solutions




















Library Federation 1 Support Federation 2 Support
AWS AppSync
Serverless GraphQL and Pub/Sub APIs


_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
Dgraph
Dgraph is the native GraphQL database with a graph backend. It is open-source, scalable, distributed, highly available and lightning fast.


_service
@key (single)🟢
@key (multi)🔲
@key (composite)🔲
repeatable @key🔲
@requires🔲
@provides🔲
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
GraphQL Mesh
Executable GraphQL schema from multiple data sources, query anything, run anywhere.

Github: Urigo/graphql-mesh

Stars: 3.2k ⭐

Last Release: 2024-08-16













_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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: 495 ⭐

Last Release: 2024-08-15



Core Library: GraphQL.js

Federation Library: Apollo Subgraph  Maintained by Apollo










_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

StepZen, an IBM Company
Build GraphQL APIs for all your data in a declarative way. Federate across any data source, including GraphQL.















_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🔲
repeatable @key🔲
@requires🟢
@provides🔲
federated tracing🔲










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

@renovate renovate bot force-pushed the renovate/commander-12.x branch from ec43d29 to 2f874d9 Compare November 9, 2024 10:08
@svc-apollo-docs
Copy link

svc-apollo-docs commented Nov 9, 2024

✅ Docs Preview Ready

No new or changed pages found.

Copy link
Contributor

github-actions bot commented Nov 9, 2024

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

Icon Description
Maintained by Apollo 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-07-02

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🔲
@provides🔲
federated tracing🔲
@link🟢
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲

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.8k ⭐
Last Release: 2024-02-06

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🔲
@requires🟢
@provides🟢
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
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.1k ⭐
Last Release: 2024-08-15

Federation Library: apollographql/federation-hotchocolate  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Go

Library Federation 1 Support Federation 2 Support
gqlgen
go generate based graphql server library

Github: 99designs/gqlgen

Type: SDL first
Stars: 9.8k ⭐
Last Release: 2024-06-13

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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.0k ⭐
Last Release: 2024-07-11

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
GraphQL Kotlin
Libraries for running GraphQL in Kotlin

Github: ExpediaGroup/graphql-kotlin

Type: Code first
Stars: 1.7k ⭐
Last Release: 2024-07-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🟢
Spring GraphQL
Spring Integration for GraphQL

Github: spring-projects/spring-graphql

Type: SDL first
Stars: 1.5k ⭐
Last Release: 2024-07-16

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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  Maintained by Apollo

Type: SDL first
Stars: 13.7k ⭐
Last Release: 2024-08-08

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.2k ⭐
Last Release: 2024-08-15

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
GraphQL Helix
A highly evolved and framework-agnostic GraphQL HTTP server.

Github: contra/graphql-helix

Type: SDL first
Stars: 828 ⭐
Last Release: 2022-07-09

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Mercurius
Implement GraphQL servers and gateways with Fastify

Github: mercurius-js/mercurius

Type: SDL first
Stars: 2.3k ⭐
Last Release: 2024-04-22

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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.4k ⭐
Last Release: 2024-07-02

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🔲
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
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.4k ⭐
Last Release: 2024-07-02

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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.3k ⭐
Last Release: 2024-08-13

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

Library Federation 1 Support Federation 2 Support
Lighthouse (Laravel)
A framework for serving GraphQL from Laravel

Github: nuwave/lighthouse

Type: SDL first
Stars: 3.3k ⭐
Last Release: 2024-08-05

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🟢
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-06-23

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

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
Graphene
GraphQL framework for Python

Github: graphql-python/graphene

Type: Code first
Stars: 8.0k ⭐
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🔲
Strawberry
A GraphQL library for Python that leverages type annotations 🍓

Github: strawberry-graphql/strawberry

Type: Code first
Stars: 3.9k ⭐
Last Release: 2024-07-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🟢

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢

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.3k ⭐
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

Library Federation 1 Support Federation 2 Support
Caliban
Functional GraphQL library for Scala

Github: ghostdogpr/caliban

Type: Code first
Stars: 941 ⭐
Last Release: 2024-07-02

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
Sangria
Scala GraphQL implementation

Github: sangria-graphql/sangria

Type: Code first
Stars: 2.0k ⭐
Last Release: 2024-07-22

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

Library Federation 1 Support Federation 2 Support
Graphiti
The Swift GraphQL Schema framework for macOS and Linux

Github: GraphQLSwift/Graphiti

Type: SDL first
Stars: 527 ⭐
Last Release: 2024-07-27

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Other Solutions




















Library Federation 1 Support Federation 2 Support
AWS AppSync
Serverless GraphQL and Pub/Sub APIs


_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
Dgraph
Dgraph is the native GraphQL database with a graph backend. It is open-source, scalable, distributed, highly available and lightning fast.


_service
@key (single)🟢
@key (multi)🔲
@key (composite)🔲
repeatable @key🔲
@requires🔲
@provides🔲
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
GraphQL Mesh
Executable GraphQL schema from multiple data sources, query anything, run anywhere.

Github: Urigo/graphql-mesh

Stars: 3.2k ⭐

Last Release: 2024-08-16













_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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: 495 ⭐

Last Release: 2024-08-15



Core Library: GraphQL.js

Federation Library: Apollo Subgraph  Maintained by Apollo










_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

IBM API Connect for GraphQL
Build GraphQL APIs for all your data in a declarative way. Federate across any data source, including GraphQL.















_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🔲
repeatable @key🔲
@requires🟢
@provides🔲
federated tracing🔲










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

@renovate renovate bot force-pushed the renovate/commander-12.x branch from 2f874d9 to d200c2d Compare November 16, 2024 09:36
Copy link
Contributor

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

Icon Description
Maintained by Apollo 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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🔲
@provides🔲
federated tracing🔲
@link🟢
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲

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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🔲
@requires🟢
@provides🟢
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
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.2k ⭐
Last Release: 2024-11-06

Federation Library: apollographql/federation-hotchocolate  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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-11-09

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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-10-15

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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  Maintained by Apollo

Type: SDL first
Stars: 13.8k ⭐
Last Release: 2024-10-29

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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-11-08

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
GraphQL Helix
A highly evolved and framework-agnostic GraphQL HTTP server.

Github: contra/graphql-helix

Type: SDL first
Stars: 829 ⭐
Last Release: 2022-07-09

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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-10-23

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🔲
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
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-10-23

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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.3k ⭐
Last Release: 2024-11-07

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

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-09-20

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🟢
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-10-31

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

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
Strawberry
A GraphQL library for Python that leverages type annotations 🍓

Github: strawberry-graphql/strawberry

Type: Code first
Stars: 4.0k ⭐
Last Release: 2024-11-08

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

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢

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 ⭐

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🔲

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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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: 532 ⭐
Last Release: 2024-07-27

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Other Solutions




















Library Federation 1 Support Federation 2 Support
AWS AppSync
Serverless GraphQL and Pub/Sub APIs


_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
Dgraph
Dgraph is the native GraphQL database with a graph backend. It is open-source, scalable, distributed, highly available and lightning fast.


_service
@key (single)🟢
@key (multi)🔲
@key (composite)🔲
repeatable @key🔲
@requires🔲
@provides🔲
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
GraphQL Mesh
Executable GraphQL schema from multiple data sources, query anything, run anywhere.

Github: Urigo/graphql-mesh

Stars: 3.3k ⭐

Last Release: 2024-11-08













_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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: 508 ⭐

Last Release: 2024-10-31



Core Library: GraphQL.js

Federation Library: Apollo Subgraph  Maintained by Apollo










_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

IBM API Connect for GraphQL
Build GraphQL APIs for all your data in a declarative way. Federate across any data source, including GraphQL.















_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🔲
repeatable @key🔲
@requires🟢
@provides🔲
federated tracing🔲










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

@renovate renovate bot force-pushed the renovate/commander-12.x branch from d200c2d to 030016d Compare November 17, 2024 22:07
Copy link
Contributor

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

Icon Description
Maintained by Apollo 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: 139 ⭐
Last Release: 2024-11-03

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🔲
@provides🔲
federated tracing🔲
@link🟢
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲

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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🔲
@requires🟢
@provides🟢
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
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-11-12

Federation Library: apollographql/federation-hotchocolate  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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-11-09

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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-10-15

Core Library: GraphQL Java
Federation Library: apollographql/federation-jvm  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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  Maintained by Apollo

Type: SDL first
Stars: 13.8k ⭐
Last Release: 2024-10-29

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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-11-14

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
GraphQL Helix
A highly evolved and framework-agnostic GraphQL HTTP server.

Github: contra/graphql-helix

Type: SDL first
Stars: 829 ⭐
Last Release: 2022-07-09

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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-10-23

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🔲
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
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-10-23

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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.3k ⭐
Last Release: 2024-11-12

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

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-09-20

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🟢
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-11-13

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

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
Strawberry
A GraphQL library for Python that leverages type annotations 🍓

Github: strawberry-graphql/strawberry

Type: Code first
Stars: 4.0k ⭐
Last Release: 2024-11-08

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

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢

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 ⭐

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🔲

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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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: 533 ⭐
Last Release: 2024-07-27

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Other Solutions




















Library Federation 1 Support Federation 2 Support
AWS AppSync
Serverless GraphQL and Pub/Sub APIs


_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
Dgraph
Dgraph is the native GraphQL database with a graph backend. It is open-source, scalable, distributed, highly available and lightning fast.


_service
@key (single)🟢
@key (multi)🔲
@key (composite)🔲
repeatable @key🔲
@requires🔲
@provides🔲
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
GraphQL Mesh
Executable GraphQL schema from multiple data sources, query anything, run anywhere.

Github: Urigo/graphql-mesh

Stars: 3.3k ⭐

Last Release: 2024-11-15













_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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: 508 ⭐

Last Release: 2024-10-31



Core Library: GraphQL.js

Federation Library: Apollo Subgraph  Maintained by Apollo










_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

IBM API Connect for GraphQL
Build GraphQL APIs for all your data in a declarative way. Federate across any data source, including GraphQL.















_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🔲
repeatable @key🔲
@requires🟢
@provides🔲
federated tracing🔲










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

@renovate renovate bot force-pushed the renovate/commander-12.x branch from 030016d to 7e8c9d4 Compare December 21, 2024 10:35
Copy link
Contributor

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

Icon Description
Maintained by Apollo 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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🔲
@provides🔲
federated tracing🔲
@link🟢
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲

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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🔲
@requires🟢
@provides🟢
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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  Maintained by Apollo

Type: SDL first
Stars: 13.8k ⭐
Last Release: 2024-10-29

Core Library: GraphQL.js
Federation Library: Apollo Subgraph  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🔲
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
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  Maintained by Apollo
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢
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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🟢

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 ⭐

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🔲

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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢
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
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

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

_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Other Solutions




















Library Federation 1 Support Federation 2 Support
AWS AppSync
Serverless GraphQL and Pub/Sub APIs


_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🔲
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲
Dgraph
Dgraph is the native GraphQL database with a graph backend. It is open-source, scalable, distributed, highly available and lightning fast.


_service
@key (single)🟢
@key (multi)🔲
@key (composite)🔲
repeatable @key🔲
@requires🔲
@provides🔲
federated tracing🔲
@link
@shareable🔲
@tag🔲
@override🔲
@inaccessible🔲
@composeDirective🔲
@interfaceObject🔲
GraphQL Mesh
Executable GraphQL schema from multiple data sources, query anything, run anywhere.

Github: Urigo/graphql-mesh

Stars: 3.3k ⭐

Last Release: 2024-12-14













_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

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  Maintained by Apollo










_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

IBM API Connect for GraphQL
Build GraphQL APIs for all your data in a declarative way. Federate across any data source, including GraphQL.















_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🔲
repeatable @key🔲
@requires🟢
@provides🔲
federated tracing🔲










@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🔲
@interfaceObject🔲

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant