Skip to content

fix(deps): update all non-major dependencies #638

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

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

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Aug 21, 2024

This PR contains the following updates:

Package Change Age Confidence Type Update
@apollo/rover ^0.25.0 -> ^0.35.0 age confidence dependencies minor
@types/mustache (source) 4.2.5 -> 4.2.6 age confidence devDependencies patch
@types/node (source) 18.19.44 -> 18.19.122 age confidence devDependencies patch
@vercel/ncc 0.38.1 -> 0.38.3 age confidence devDependencies patch
ApolloGraphQL.HotChocolate.Federation 0.2.0 -> 0.3.0 age confidence nuget minor
GraphQL 7.2.2 -> 7.9.0 age confidence nuget minor
GraphQL.Server.Transports.AspNetCore 7.2.0 -> 7.7.2 age confidence nuget minor
GraphQL.SystemTextJson 7.2.2 -> 7.9.0 age confidence nuget minor
HotChocolate.AspNetCore (source) 13.5.1 -> 13.9.14 age confidence nuget minor
HotChocolate.AspNetCore.CommandLine (source) 13.5.1 -> 13.9.14 age confidence nuget minor
dotnet-sdk 6.0.101 -> 6.0.428 age confidence dotnet-sdk patch
eslint (source) 8.57.0 -> 8.57.1 age confidence devDependencies patch
eslint-plugin-import 2.29.1 -> 2.32.0 age confidence devDependencies minor
prettier (source) 3.3.3 -> 3.6.2 age confidence devDependencies minor
typescript (source) 5.5.4 -> 5.9.2 age confidence devDependencies minor

Release Notes

apollographql/rover (@​apollo/rover)

v0.35.0

Compare Source

❗ BREAKING ❗

🚀 Features

🛠 Maintenance

v0.34.1

Compare Source

🐛 Fixes

v0.34.0

Compare Source

🚀 Features

v0.33.0

Compare Source

🚀 Features

  • Use the starter template's federation version as the default federation version for newly created variants via rover init - @​sanchezdale PR #​2630
    • Before, all graph variants created through init were set to default to federation 2.10. Now, init sets the default to the federation version defined in the selected starter template.

🛠 Maintenance

  • Update rust crate to v8 - PR #​2627
  • Update dependency apollographql/federation-rs to v2.11.0 - PR #​2627
  • Configure renovate to not upgrade router major version - @​pubmodmatt PR #​2622
  • Update Apollo Router 2.x to 2.3.0 - PR #​2628

📚 Documentation

v0.32.1

Compare Source

🐛 Fixes

  • Log cause of introspection error - @​pubmodmatt PR #​2615

    Introspection failures in rover dev were not logging the underlying cause of the failure. This has been fixed to help with debugging introspection problems.

🛠 Maintenance

  • Update Apollo Router 1.x to 1.61.7 - PR #​2614
  • Update Apollo Router 2.x to 2.2.1 - PR #​2592
  • Remove obsolete and broken xtask docs command - @​pubmodmatt PR #​2619
  • Configure Renovate to perform only security updates - @​DaleSeo PR #​2613
  • Update eslint to v9.28.0 - PR #​2616
  • Update zip to v4 - PR #​2618
  • Update rand_regex to v0.18.1 - PR #​2606
  • Update node docker tag to v20.19.2 - PR #​2605
  • Update slackapi/slack-github-action action to v2.1.0 - PR #​2584
  • Update duct to v1 - PR #​2586
  • Update npm to v11 - PR #​2547
  • Update quay.io/pypa/manylinux2014_x86_64 docker tag to v2025 - PR #​2548
  • Update all non-major packages >= 1.0 - PR #​2546

📚 Documentation

v0.32.0

Compare Source

🚀 Features

  • Use the Streamable HTTP transport for MCP - @​pubmodmatt PR #​2607

    rover dev --mcp will now use the Streamable HTTP transport instead of SSE. Specify the --mcp-port and/or --mcp-address options to rover dev --mcp to override the default values. The --mcp-sse-port and --mcp-sse-address options still work, but will configure the port and address for Streamable HTTP. Users should migrate to the new option names.

v0.31.3

Compare Source

🐛 Fixes

v0.31.2

Compare Source

🐛 Fixes

v0.31.1

Compare Source

🐛 Fixes

  • MCP fixes - @​pubmodmatt PR #​2596
    • --mcp-directory was optional, but rover dev failed if it was not specified
    • Added --mcp-sse-address to set the bind address for the MCP server started by rover dev
    • All output from the MCP server was logged as ERROR or UNKNOWN
    • If the Router or MCP Server process died, rover dev would exit but leave the other process running
  • rover init will now emit the correct commands for Windows PowerShell - @​sanchezdale PR #​2595

🛠 Maintenance

v0.31.0

Compare Source

🚀 Features

  • Add mcp to rover dev - @​Jephuff, @​pubmodmatt PR #​2591

    This release adds the ability to run the Apollo MCP Server in addition to the Apollo Router when running rover dev. Specify the --mcp option to start the MCP server. Additional options are provided to configure the MCP server. Use rover dev --help for details.

v0.30.0

Compare Source

🚀 Features

  • Add support for templates in the rover init command

    This adds support for templates in the rover init command. You can now select a template to use when creating a new graph!

PRs Included

🐛 Fixes

🛠 Maintenance

📚 Documentation

v0.29.1

Compare Source

🐛 Fixes

📚 Documentation

v0.29.0

Compare Source

🚀 Features

Adding new command rover init

New rover init command to help set up a new project. It walks you through creating a graph, setting up files, and getting GraphOS credentials.

More information:

PRs Included
  • #​2530 - fix(init): Gracefully exit init flow when duplicate graph ID is provided
  • #​2528 - fix(init): Exit immediately when GraphQL Template is selected
  • #​2527 - bugfix(init) Adding check for user api key
  • #​2525 - bugfix(init): Update code snippet to run rover dev
  • #​2518 - feat(init): Updating copy for welcome menu, fixing command styles for consistency…
  • #​2517 - bugfix(init): update loading spinner and copy for rover init
  • #​2516 - hardcoding federation version for connectors
  • #​2514 - feat(init): Updating some copy for init command
  • #​2513 - locking starters repo to latest version 1d586fc
  • #​2511 - feat(init): set build track to fed 2.10 during graph creation
  • #​2507 - feat(init): Stylizing display messages, adding spinner, and refactoring rover_std library
  • #​2506 - feat(dev): Updating dev command's description
  • #​2505 - feat(init): adding graph creation & subgraph publish to init
  • #​2504 - Fixing stripping of prefix on relative path
  • #​2500 - Changing connector repository name
  • #​2499 - Adding support for graph key creation on init
  • #​2496 - feat(init): Remove retry limit when entering graph ID manually
  • #​2495 - feat(docs) Adding configuring slug to docs link list
  • #​2494 - feat(init): Handling branching logic for project type selection
  • #​2491 - Generating supergraph.yaml for connectors
  • #​2488 - feat(init): Adding fetch for user membership + org selection option
  • #​2487 - feat(init): Auth support for init command
  • #​2475 - feat(init): Add graph_id provisioning step with validation
  • #​2471 - Add clap styling
  • #​2470 - Add prompt for project name with validation for init command
  • #​2469 - Feature: Implementing init Command with TypeState Pattern
  • #​2466 - Separating Fetching from writing templates to support confirmation of files before writing
  • #​2462 - Adding prompt for project use case to init command

🛠 Maintenance

  • #​2501 - Update CODEOWNERS - adding growth to rover-client crate
  • #​2492 - Update CODEOWNERS
  • #​2485 - Update CODEOWNERS: adding growth to options & tests
  • #​2474 - Adding Growth as codeowners for init
  • #​2464 - Fix features input on smoke tests
  • #​2448 - Fix curl installer anonymized usage collection message
  • #​2486 - Update crossbeam-channel dependency
  • #​2481 - chore(deps): update dependency apollographql/router to v2.1.1
  • #​2480 - Update openssl and tokio dependencies
  • #​2479 - chore(deps): update dependency apollographql/router to v1.61.2
  • #​2463 - chore(deps): update dependency apollographql/router to v1.61.1
  • #​2460 - chore(deps): update dependency apollographql/router to v2.1.0
  • #​2436 - chore(deps): update dependency gh to v2.7.0
  • #​2435 - chore(deps): update all non-major packages >= 1.0
  • #​2434 - chore(deps): pin rust crate jsonschema to =0.29.0

📚 Documentation

  • #​2526 - docs: Enable init docs
  • #​2520 - docs: remove init for now
  • #​2510 - docs: Add generic env variable info
  • #​2467 - Add upgrade language to Rover Doc
  • #​2458 - docs: update broken anchor to Gitlab CI/CD section
  • #​2451 - docs: rover init

v0.28.1

Compare Source

🐛 Fixes

  • Fix telemetry reporting for release builds - @​pubmodmatt PR #​2445

    Telemetry was not working for release builds. This has been corrected. See the Rover privacy policy for information about anonymous usage data collection in Rover.

🛠 Maintenance

v0.28.0

Compare Source

🚀 Features

  • Default to Apollo Router 2.x for rover dev - @​pubmodmatt PR #​2433

    The default version of Apollo Router used by rover dev is now 2.x instead of 1.x. The default can be overridden by
    setting APOLLO_ROVER_DEV_ROUTER_VERSION, for example APOLLO_ROVER_DEV_ROUTER_VERSION=1.61.0.

  • Implement supergraph config schema command - @​jonathanrainer PR #​2418

    Adds a new rover supergraph config schema command to output the JSONSchema for supergraph.yaml. This can be used
    to configure editor support for the file.

🐛 Fixes

🛠 Maintenance

📚 Documentation

v0.27.2

Compare Source

🐛 Fixes

  • Restore the ability to use environment or file references in the supergraph.yaml file - @​jonathanrainer PR #​2411

    In v0.26.3 and older you could use references such as ${env.HOST} or similar in the supergraph.yaml file, there
    was an oversight in the refactor and this was removed. This ability has now been restored.

🛠 Maintenance

v0.27.1

Compare Source

If using Rover with Connectors, you will need to specify APOLLO_ROVER_DEV_ROUTER_VERSION=2.0.0-preview.X when using rover dev

🐛 Fixes

  • Create output parent directories if they do not already exist - @​dotdat PR #​2396

    One small regression with release of v0.27.0 was that if an output directory to supergraph compose was specified,
    but one of the parent directories did not exist, the command would fail. In previous versions the parent directories
    would be created instead and the command would succeed. This is now corrected and the previous behaviour restored.

  • Clean up how default subgraphs are defined in rover dev - @​dotdat PR #​2397 fixes #​2394

    An issue has been reported where rover dev would prompt repeatedly for the subgraph name and URL despite the
    user having given those values already. This was due to multiple factors, including not accounting for CLI args in
    the default case and some faulty other faulty logic. This has now been restored.

  • Refine how composition produces artifacts for targets - @​dotdat PR #​2398 fixes #​2393

    Due to changes in the supergraph binary from 2.9+, writing directly to a file is now supported. However,
    this feature is not available in earlier versions of supergraph. As such Rover should be responsible for
    orchestrating how the output from supergraph binary ends up in a file, rather than delegating that responsibility
    to the supergraph binary and thus being at the mercy of which version is used. This allowed a further refactor that
    eliminated complexity around composition outputs.

  • Ensure credentials are checked when needed and not before - @​jonathanrainer PR #​2400 fixes #​2399

    Due to the rover dev refactor there were situations where credentials were being required when they were ultimately
    not being used. As such we stopped supporting the use case where no profile was defined and no APOLLO_KEY env var
    was provided, which is a very common pattern. This is now corrected.

🛠 Maintenance

📚 Documentation

v0.27.0

Compare Source

Important: 3 potentially breaking changes below, indicated by ❗ BREAKING ❗

If using Rover with Connectors, you will need to specify APOLLO_ROVER_DEV_ROUTER_VERSION=2.0.0-preview.X when using rover dev

❗ BREAKING ❗

  • Make paths in supergraph.yaml resolve relative to the location of the supergraph.yaml file - @​jonathanrainer PR #​2119

    To support the new Apollo Language Server it is now the case that any paths expressed in the supergraph.yaml file will
    be resolved relative to the file's location on disk, not the location that Rover is running in, at the time.

  • Remove fed2 command - @​aaronArinder PR #​2222

    This was a deprecated, hidden, unused command that was for early Federation 2.0 testing. This command has not been
    invoked for a very long time.

  • Remove ability to start multiple rover dev sessions - @​jonathanrainer PR #​2352

    Now that Rover supports hot-reloading from supergraph.yaml files we've removed the ability to start multiple
    rover dev sessions, in multiple terminal windows, and have them communicate with each other.

  • Remove ambiguity around which URL is used for query execution when using subgraph_url and --graph-ref flag

    In previous versions of Rover, when the --graph-ref flag was used and a subgraph was specified in the
    supergraph.yaml to override the values from GraphOS, the schema.subgraph_url was used for both schema fetching via introspection and query execution.

    federation_version: 2.10.0
    subgraphs:
      subgraph_a:
        schema:
          subgraph_url: "http://localhost:4000/graphql"

    This was a bug in earlier versions of Rover that has only recently been identified. Now if this same situation occurs, Rover will use
    the given schema.subgraph_url (http://localhost:4000/graphql in the example above) to fetch the schema only. Query
    execution will use the routing_url from GraphOS.

    This is consistent with the documented behaviour since this feature launched and in addition is consistent with the
    principle that the use of the supergraph.yaml will only override --graph-ref where you explicitly state that
    should happen. To obtain the original behaviour again you simply need to override the routing_url in the
    supergraph.yaml as well, so the example above would become:

    federation_version: 2.10.0
    subgraphs:
      subgraph_a:
        routing_url: "http://localhost:4000/graphql"
        schema:
          subgraph_url: "http://localhost:4000/graphql"

    and this will use http://localhost:4000/graphql for query execution and schema fetching via introspection.

🚀 Features

  • Apollo Language Server - @​jonathanrainer

    This brand-new feature aids in subgraph development and also supports connectors. It enhances Apollo tools such as the schema proposals editor and recent versions of IDE plugins and extensions by providing federation-aware syntax highlighting, validation, autocompletion, and more

    PRs Included
    • #​2272
    • #​2345
    • #​2354
    • #​2364
    • #​2369
    • #​2386
    • #​2389
  • New version of rover dev - @​dotdat @​aaronArinder @​loshz @​monkpow @​jonathanrainer

    In this version of Rover there is a new version of rover dev built upon a completely new implementation of the
    composition pipeline inside of Rover. This not only allows a better functioning rover dev with more features, but
    it also supports the new Apollo Language Server, for use with Connectors!

    In addition, it also supports hot-reloading of the supergraph.yaml file, subgraphs can be added, removed or edited,
    and this will be all be reflected in the running rover dev session!

    PRs Included
    • #​2118
    • #​2127
    • #​2130
    • #​2131
    • #​2132
    • #​2138
    • #​2141
    • #​2142
    • #​2144
    • #​2145
    • #​2146
    • #​2147
    • #​2149
    • #​2150
    • #​2152
    • #​2154
    • #​2156
    • #​2157
    • #​2158
    • #​2159
    • #​2160
    • #​2163
    • #​2166
    • #​2167
    • #​2171
    • #​2172
    • #​2177
    • #​2178
    • #​2179
    • #​2184
    • #​2189
    • #​2204
    • #​2205
    • #​2207
    • #​2208
    • #​2209
    • #​2210
    • #​2211
    • #​2214
    • #​2223
    • #​2228
    • #​2229
    • #​2251
    • #​2253
    • #​2257
    • #​2267
    • #​2268
    • #​2274
    • #​2282
    • #​2283
    • #​2285
    • #​2288
    • #​2289
    • #​2305
    • #​2308
    • #​2309
    • #​2310
    • #​2311
    • #​2312
    • #​2314
    • #​2316
    • #​2318
    • #​2319
    • #​2320
    • #​2321
    • #​2322
    • #​2326
    • #​2327
    • #​2328
    • #​2329
    • #​2330
    • #​2331
    • #​2332
    • #​2334
    • #​2335
    • #​2336
    • #​2338
    • #​2339
    • #​2340
    • #​2341
    • #​2342
    • #​2343
    • #​2344
    • #​2355
    • #​2356
    • #​2357
    • #​2358
    • #​2360
    • #​2361
    • #​2362
    • #​2365
    • #​2370
    • #​2371
    • #​2374
    • #​2379
    • #​2383
    • #​2384
  • Add ability to hot-reload federation_version in supergraph.yaml - @​jonathanrainer PR #​2347

    Rover now has the ability to account for changes in the federation_version field of the supergraph.yaml file,
    while it is running.

  • Enabling Remote Proxy Downloads - @​LongLiveCHIEF @​jonathanrainer PR #​2254 #​2372

    Rover now has the ability to be installed from a remote proxy, via the use of environment variables.

  • Display the results of custom check tasks - @​swcollard PR #​2087

    Rover now has the ability to print out results of CustomCheckTasks from the Platform API

🐛 Fixes

  • Stop Running Router with logs at TRACE level - @​nmoutschen PR #​2143

    We were running the Router at TRACE level logging, which was causing queries to not complete in some cases

  • Stop rover dev session if router binary crashes - @​jonathanrainer PR #​2382

    In the past we let the rover dev session continue if the router binary crashed, which led to a misleading state
    of affairs, this has now been fixed.

🛠 Maintenance


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

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

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • 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 August 21, 2024 16:31
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/all-minor-patch branch from 1254ecf to 42662ec Compare August 21, 2024 20:31
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/all-minor-patch branch from 42662ec to b76d160 Compare August 26, 2024 10:40
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/all-minor-patch branch from b76d160 to adce65c Compare August 28, 2024 03:06
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/all-minor-patch branch from adce65c to c20a0fe Compare September 1, 2024 19:44
Copy link
Contributor

github-actions bot commented Sep 1, 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🟢

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/all-minor-patch branch from c20a0fe to 7b97678 Compare September 3, 2024 09:12
Copy link
Contributor

github-actions bot commented Sep 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: 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/all-minor-patch branch from 7b97678 to 8f5ec49 Compare September 4, 2024 01:02
Copy link
Contributor

github-actions bot commented Sep 4, 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🟢

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/all-minor-patch branch from 8f5ec49 to 895b388 Compare September 4, 2024 23:25
Copy link
Contributor

github-actions bot commented Sep 4, 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🟢

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/all-minor-patch branch from 895b388 to d95b8e3 Compare September 9, 2024 20:06
Copy link
Contributor

github-actions bot commented Sep 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🟢

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/all-minor-patch branch from d95b8e3 to 9a8d845 Compare September 11, 2024 18:42
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/all-minor-patch branch from 9a8d845 to 435b892 Compare September 16, 2024 12:08
Copy link
Contributor

Apollo Federation Subgraph Compatibility Results

Federation 1 Support Federation 2 Support
_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/all-minor-patch branch from 435b892 to 538886d Compare September 16, 2024 18:13
Copy link
Contributor

Apollo Federation Subgraph Compatibility Results

Federation 1 Support Federation 2 Support
_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/all-minor-patch branch from 538886d to 3a1c46b Compare September 20, 2024 19:11
Copy link
Contributor

Apollo Federation Subgraph Compatibility Results

Federation 1 Support Federation 2 Support
_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/all-minor-patch branch from 3a1c46b to 063bcbb Compare September 23, 2024 14:13
Copy link
Contributor

Apollo Federation Subgraph Compatibility Results

Federation 1 Support Federation 2 Support
_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/all-minor-patch branch from 063bcbb to ec5af4a Compare September 25, 2024 01:42
Copy link
Contributor

Apollo Federation Subgraph Compatibility Results

Federation 1 Support Federation 2 Support
_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/all-minor-patch branch from a2842f0 to 0e93ceb Compare June 28, 2025 08:41
Copy link
Contributor

Apollo Federation Subgraph Compatibility Results

Federation 1 Support Federation 2 Support
_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/all-minor-patch branch from 0e93ceb to 5f75308 Compare July 1, 2025 20:04
Copy link
Contributor

github-actions bot commented Jul 1, 2025

Apollo Federation Subgraph Compatibility Results

Federation 1 Support Federation 2 Support
_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/all-minor-patch branch from 5f75308 to 48bd6fc Compare July 2, 2025 00:24
Copy link
Contributor

github-actions bot commented Jul 2, 2025

Apollo Federation Subgraph Compatibility Results

Federation 1 Support Federation 2 Support
_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/all-minor-patch branch from 48bd6fc to 7320009 Compare July 8, 2025 23:40
Copy link
Contributor

github-actions bot commented Jul 8, 2025

Apollo Federation Subgraph Compatibility Results

Federation 1 Support Federation 2 Support
_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/all-minor-patch branch from 7320009 to 8cbe478 Compare July 9, 2025 04:28
Copy link
Contributor

github-actions bot commented Jul 9, 2025

Apollo Federation Subgraph Compatibility Results

Federation 1 Support Federation 2 Support
_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/all-minor-patch branch from 8cbe478 to e34cee3 Compare July 10, 2025 19:12
Copy link
Contributor

Apollo Federation Subgraph Compatibility Results

Federation 1 Support Federation 2 Support
_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/all-minor-patch branch from e34cee3 to 56e0c0c Compare July 15, 2025 08:48
Copy link
Contributor

Apollo Federation Subgraph Compatibility Results

Federation 1 Support Federation 2 Support
_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/all-minor-patch branch from 56e0c0c to 39ad866 Compare July 19, 2025 03:42
Copy link
Contributor

Apollo Federation Subgraph Compatibility Results

Federation 1 Support Federation 2 Support
_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/all-minor-patch branch from 39ad866 to d2978d4 Compare July 29, 2025 02:46
Copy link
Contributor

Apollo Federation Subgraph Compatibility Results

Federation 1 Support Federation 2 Support
_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/all-minor-patch branch from d2978d4 to 61edde0 Compare July 30, 2025 19:41
Copy link
Contributor

Apollo Federation Subgraph Compatibility Results

Federation 1 Support Federation 2 Support
_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/all-minor-patch branch from 61edde0 to badd59b Compare August 6, 2025 17:17
Copy link
Contributor

github-actions bot commented Aug 6, 2025

Apollo Federation Subgraph Compatibility Results

Federation 1 Support Federation 2 Support
_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/all-minor-patch branch from badd59b to b92d1a4 Compare August 6, 2025 17:20
Copy link
Contributor

github-actions bot commented Aug 6, 2025

Apollo Federation Subgraph Compatibility Results

Federation 1 Support Federation 2 Support
_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/all-minor-patch branch from b92d1a4 to 15a71aa Compare August 6, 2025 17:38
Copy link
Contributor

github-actions bot commented Aug 6, 2025

Apollo Federation Subgraph Compatibility Results

Federation 1 Support Federation 2 Support
_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/all-minor-patch branch from 15a71aa to 1d24a4d Compare August 8, 2025 16:50
Copy link
Contributor

github-actions bot commented Aug 8, 2025

Apollo Federation Subgraph Compatibility Results

Federation 1 Support Federation 2 Support
_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