This repository is responsible for all of the deno-powered TypeScript <--> Rust interop. Currently this includes composition and query planning.
This repository has one long-running branch, main
. The federation
repository itself maintains two separate branches, version-0.x
for Federation 1 and main
for Federation 2.
Each crate listed here has their own README with much more information than what's here.
The harmonizer
crate is a library that provides the federation composition algorithm to the rest of Apollo's Rust
ecosystem.
The supergraph
crate is a binary that provides the federation composition algorithm as a CLI, primarily for
integration with rover.
The apollo-federation-types
crate provides types for all versions of harmonizer
and supergraph
, and is used
by Rover to read the output from the supergraph
binary.
The router-bridge
crate is a library that provides the federation query-planning algorithm, primarily for
integration with the router