Run Your Federated Graph on Hive
Hive Gateway and the Hive schema registry are fully open source (MIT) — use every piece standalone, self-host the whole platform, or start with the hosted registry for free.
Reverb is the world's largest online marketplace for new, used, and vintage musical instruments. Founded in Chicago in 2013 — and newly independent again after six years as part of Etsy — Reverb serves millions of musicians through its web, iOS, and Android apps. Most of those requests flow through a single front door: Hive Gateway.
Reverb bet on GraphQL early — in the days before federation existed. That early bet came with an architecture that, a decade later, had become the thing to escape.
The original stack was a Node.js GraphQL server that used schema merging — a pre-federation-era solution — to combine roughly a dozen service APIs into one schema. Architecturally, Reverb was (and, by design, remains) a "monolith with arms": a strong Rails core with a few purpose-built microservices around it. Much of the joining and aggregation work, though, was happening in the GraphQL layer — work the monolith's database could have done natively.
Meanwhile, three client platforms — server-rendered React on the web, iOS, and Android — all depended on that schema staying exactly as it was.
Phase 1 — the legacy stack: one Node.js server merging a dozen APIs over the Rails core, with a few microservices around it.
Rather than a risky big-bang rewrite, Reverb's platform team designed an incremental path, with a federation gateway at the center of it.
The team built a new GraphQL server, CoreQL, directly on the Rails monolith using GraphQL Ruby — same schema as the legacy server, with about 90% of resolution happening as straightforward ActiveRecord data loading. Then they put Hive Gateway in front of both stacks and migrated query by query: the gateway inspects each incoming operation name, and if that query has been onboarded to the new stack, it routes there; otherwise it falls back to the legacy server.
Strict schema parity meant web, iOS, and Android clients never noticed a thing.
Phase 2 — the migration: Hive Gateway in front of both stacks, moving traffic query by query with the schema held at parity.
The gateway also unlocked the end-state the team actually wanted: true federation for the systems that genuinely are separate services. Today the supergraph composes three subgraphs: SearchRemixer, the search service backed by Elasticsearch; RQL, the legacy Node.js server still serving the not-yet-migrated remainder through a REST layer on the monolith; and CoreQL, running directly on the monolith — one less hop per request, with domain logic colocated where the data lives. Cloudflare fronts it all as the CDN.
Phase 3 — today: a true federated supergraph, composed and validated by Reverb's open-source-based schema pipeline.
One of the most interesting things about Reverb's setup is what they built around the gateway — a custom schema pipeline backed by The Guild's open source tooling.
Reverb runs a GitOps deployment model with ephemeral sandbox environments, where every sandbox needs its own schema version. So the team assembled their own schema pipeline: every subgraph PR regenerates its schema; on merge, a bot commits it to the gateway repository; GitHub Actions then run supergraph composition with mesh-compose, validate the federation, and use GraphQL Inspector to check every client operation — gathered from the actual client codebases — against the proposed change. Only then does the supergraph deploy, and clients regenerate their types with GraphQL Code Generator.
That's schema registry, composition, breaking-change detection, and client safety — composed from unbundled open source libraries. It's exactly how the Hive platform is designed to be used: every piece works standalone, with no lock-in, and teams can graduate to Hive Console whenever the home-grown pipeline stops being the best use of their time. And because Hive Console is fully open source (MIT) like the rest of the platform, "graduating" doesn't mean giving up control — it can be self-hosted inside your own infrastructure, which fits a GitOps model with ephemeral sandbox environments like Reverb's just as well as the hosted cloud version does.
What Console adds on top of a pipeline like Reverb's is everything that's hard to hand-roll:
And for a team in Reverb's exact position — a working registry pipeline, no usage reporting yet — the on-ramp is free: using the hosted Hive Console purely as a schema registry, without traffic reporting, costs nothing.
The team's creativity didn't stop there. Reverb wrote a custom Hive Gateway plugin — a "node multiplexer" — that splits large incoming queries at the root, fans them out as smaller parallel queries to the Ruby server, and merges the responses. A very big graph becomes many small graphs, and the monolith stays responsive. It's the kind of off-label extension the gateway's plugin system exists for.
Reverb's collaboration with The Guild started the way many do: with a bug. In December 2024, the team reported a memory leak that appeared whenever they enabled upstream timeouts. Days after the first call in January 2025, The Guild had reproduced it, fixed it, and shipped a stable release — with follow-up improvements rolled out the same month.
That set the tone for what came next:
Promise.all was holding merged responses hostage to the slowest
sub-query. "Thanks so much for catching this in our code," the team wrote back.In April 2026, Reverb's Web Architecture Team posted this, unprompted, in the shared Slack channel:
Web Architecture Team, ReverbJust wanted to extend an appreciation for how responsive and helpful The Guild has been with our questions — whether it's about the Gateway code or us stepping on our own toes. The team has been incredibly quick to help and consistently follows through.
In May 2026, Reverb completed the upgrade to Hive Gateway v2 in production. Thirty days of Datadog data later:
And from their APM waterfalls: the gateway itself accounts for only 10–15% of total request time — the platform layer stays out of the way.
The migration from the legacy Node.js server continues query by query, with more true subgraphs joining the federation. The team is exploring splitting mutation and query workloads across separate upstream instances of the same schema — working around request-cancellation limits in the upstream runtime — and evaluating a self-hosted Hive Console to layer usage insights, conditional breaking-change checks, and schema-change alerts on top of the registry pipeline they already have.
Nguyen NguyenPrincipal Engineer, ReverbWe're benefiting greatly from the open source software The Guild is sharing — happy to contribute back whenever we can.
Hive Gateway and the Hive schema registry are fully open source (MIT) — use every piece standalone, self-host the whole platform, or start with the hosted registry for free.
Buffer is a social media workspace that lets you plan, publish, and analyze posts and comments across 10+ social networks. After closing its public REST API back in 2019, Buffer has been rebuilding its public offering on GraphQL.
As trivago scaled its internal systems, fragmented APIs made it difficult to build and maintain tools, leading to the adoption of a GraphQL gateway to unify data access across services.
Hemnet is Sweden’s largest property platform, serving millions of users who browse, save, and search through real estate listings every day. Behind the scenes, a GraphQL API handles the bulk of these interactions, powering everything from listing pages and search results to user accounts and saved properties.