Last updated: February 2026 All versions pinned to latest stable releases. This file is the single source of truth for all dependency versions across the project.
| Component | Package / Image | Version | Notes |
|---|---|---|---|
| Apollo Federation | Spec version | v2.12 | LTS with Router v2.10. Introduces @cacheTag directive |
| Apollo Router | ghcr.io/apollographql/router |
v2.10.x | LTS until Sep 2026. Response caching GA |
| Apollo Server | @apollo/server |
v5.4.0 | v4.x is EOL since Jan 26, 2026. Must use v5 |
| Apollo Subgraph | @apollo/subgraph |
latest (compatible with AS5) | buildSubgraphSchema function |
| Apollo Client | @apollo/client |
v4.x (latest) | Multipart HTTP subscriptions, RetryLink, ErrorLink |
| Rover CLI | rover |
latest | Supergraph composition (rover supergraph compose) |
| Component | Image | Version | Notes |
|---|---|---|---|
| Redis | redis:7.4-alpine |
7.4.x | AOF persistence, 256MB max memory |
| Kafka | apache/kafka |
latest (4.1.x) | Official Apache image, KRaft mode (no ZooKeeper). Bitnami images no longer free. |
| Kafka UI | provectuslabs/kafka-ui |
latest | Optional, for visual inspection |
| Package | Version | Purpose |
|---|---|---|
@apollo/server |
^5.4.0 |
GraphQL server runtime |
@apollo/subgraph |
^2.x |
Federation subgraph utilities |
graphql |
^16.x |
GraphQL core |
graphql-tag |
^2.x |
gql template literal |
kafkajs |
^2.x |
Kafka client for Node.js |
express |
^5.x |
HTTP server framework |
@as-integrations/express5 |
^1.x |
Apollo Server + Express 5 integration |
cors |
^2.x |
CORS middleware |
| Package | Version | Purpose |
|---|---|---|
react |
^19.x |
UI framework |
react-dom |
^19.x |
DOM rendering |
@apollo/client |
^4.x |
GraphQL client with subscriptions |
graphql |
^16.x |
GraphQL core |
react-router-dom |
^7.x |
Client-side routing |
| Component | Version | Notes |
|---|---|---|
| Helm | v3.x |
Chart templating |
| Kubernetes | 1.28+ |
StatefulSet, headless Services |
| Bitnami Redis chart | latest |
Optional: replaces hand-rolled Redis deployment |
| Bitnami Kafka chart | latest |
Optional: replaces hand-rolled Kafka StatefulSet |
-
Apollo Server 5 + Subscription Callback Plugin: The
ApolloServerPluginSubscriptionCallbackplugin is available in AS5 via@apollo/server/plugin/subscriptionCallback. The plugin now uses Node.js built-infetchby default (instead ofnode-fetchin v4). -
Federation v2.12: Released alongside Router v2.10 LTS. Subgraph schemas must declare
@link(url: "https://specs.apollo.dev/federation/v2.12", ...). -
Router v2.10 LTS: LTS support until September 2026. Includes GA response caching, improved Redis connection pool handling, and subscription callback protocol support.
-
Apollo Client v4 + Multipart HTTP: Apollo Router does NOT accept direct WebSocket from clients. Subscriptions from clients use HTTP multipart protocol. Apollo Client v4's
HttpLinkhandles this natively — noGraphQLWsLinkneeded for client↔Router communication. -
Kafka Official Image: The
bitnami/kafkaimages were moved behind a Broadcom paywall (Sep 2025). We use the officialapache/kafkaimage which runs in KRaft mode by default. Env var convention:KAFKA_prefix with dots replaced by underscores (e.g.,num.partitions→KAFKA_NUM_PARTITIONS). CLI tools are at/opt/kafka/bin/. -
Node.js: Apollo Server 5 requires Node.js v20.0.0+. Recommend using latest LTS (v22.x).