Get feddi running in your stack
Run the JVM-native gateway, install the CLI, and connect everything to the feddi Platform — in under 15 minutes.
Download the feddi CLI for your operating system and put it on your PATH.
tar xzf feddi-<os>-<arch>.tar.gz sudo mv feddi /usr/local/bin/ feddi version
feddi auth login --token <your-token>
Download binaries from the downloads page. Get your access token from feddi Platform → Settings → Access Tokens.
A graph represents your API. Variants let you run separate instances — for example production and staging. The gateway authenticates to feddi Platform with a graph-variant key, which you'll create at the end of this step.
# Find your organization ID feddi org list # Create the graph (org-id from the previous step) feddi graph create <org-id> my-graph # Create a variant under the new graph (graph-id from the previous output) feddi variant create <graph-id> production # Create the API key the gateway will use to talk to feddi Platform feddi graph-variant-key create <variant-id> gateway-key \ --expires 2027-01-01T00:00:00Z
The last command prints a token starting with fddi_gvk_… — save it, you'll need it in Step 3. Each <…-id> placeholder above is the id field from the previous command's output.
The feddi Gateway is a JVM application. Unzip the distribution, point it at your feddi Platform instance, and start it.
unzip feddi-gateway.zip cd feddi-gateway
cp feddi-gateway.yml.sample feddi-gateway.yml # Edit feddi-gateway.yml: set extensions.feddi.api-url to your # feddi Platform instance and extensions.feddi.graph-variant-key # to the token saved in Step 2.
extensions: feddi: api-url: https://your-feddi-platform.example.com graph-variant-key: fddi_gvk_… # from Step 2
./bin/feddi-gateway # macOS / Linux bin\feddi-gateway.bat # Windows
The launcher validates Java 25+, then starts with tuned defaults (ZGC, 1 GB heap).
Override JVM settings with JAVA_OPTS="-Xmx2g" ./bin/feddi-gateway.
Download from Downloads.
Tell feddi Platform about each subgraph in your federation. Check the schema for composition errors before publishing.
# Register a subgraph under the variant from Step 2. feddi subgraph create <variant-id> users # Validate composition without publishing (subgraph-id from above) feddi subgraph check <subgraph-id> --schema ./schema.graphql \ --config '{"url":"http://users-service/graphql"}' # Publish when ready feddi subgraph publish <subgraph-id> --schema ./schema.graphql \ --config '{"url":"http://users-service/graphql"}'
The gateway picks up the composed schema automatically — no restart needed.