// the find
rmosolgo/graphql-ruby
Ruby implementation of GraphQL
The de facto GraphQL server library for Ruby, maintained by a single author (rmosolgo) for over a decade. If you're building a GraphQL API on Rails, this is what you reach for — there's no real competitor in the Ruby ecosystem. It covers the full GraphQL spec including subscriptions, unions, interfaces, and Relay-compatible pagination.
The Dataloader implementation is genuinely good: it batches N+1 queries automatically without requiring you to restructure your resolvers, and it supports async sources with Fibers if you need parallelism. The class-based schema definition (introduced around 1.8) is clean Ruby — types and fields read like plain classes, not DSL soup. The optional C parser extension (graphql-c_parser) drops parse time significantly for large documents, and it's opt-in with zero API changes. Pagination via Relay-spec connections is first-class, including stable cursor support backed by AR relations.
The most production-useful features — persisted queries, server-side caching, rate limiters, API versioning, streaming with @defer — are all behind a paid GraphQL::Pro license, which means the open-source gem is a foundation you'll outgrow if you run anything at meaningful scale. There's one primary maintainer; the bus factor is 1, and it's visible in the issue queue. Authorization is a known rough edge: the built-in auth layer works but requires careful ordering to avoid leaking field existence, and the Pundit/CanCan integrations are Pro-only. Testing your schema is also more painful than it should be — there's no first-party way to snapshot or contract-test your schema against a client.