30 open-source projects similar to rmosolgo/graphql-ruby, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Graphql Ruby alternative.
GraphQL.NET is a server-side framework for building and executing GraphQL APIs within C# applications. It provides a comprehensive toolkit for schema building, a federated engine for distributed data graphs, and a subscription handler for managing real-time data streams. The project distinguishes itself with a flexible schema builder that supports both programmatic code-first definitions and declarative schema-first approaches using the standard schema definition language. It includes a dedicated federation engine to split data graphs into subgraphs and compose them into a unified gateway, as
graphql-go is a schema-first GraphQL library and server implementation for Go. It provides a query execution engine and schema parser that converts schema definition strings into executable structures and validates resolver signatures. The library also includes a streaming implementation for real-time GraphQL subscriptions using channels within resolvers. The project distinguishes itself through parallel resolver execution to reduce request latency and the use of buffer-pool memory management to lower garbage collection overhead. It enables the creation of cloneable schema instances from a sh
Juniper is a GraphQL server library and schema engine for Rust. It provides a toolkit for building type-safe APIs by mapping native Rust data structures to GraphQL objects, inputs, and scalars. The project functions as an execution engine that can process queries and mutations either through a network server or as a headless engine for local execution. The library is runtime-agnostic, allowing it to bridge GraphQL processing with various asynchronous Rust web frameworks. It includes a subscription framework that manages persistent WebSocket connections to push real-time data updates to client
Graphene is a library and framework for building type-safe GraphQL APIs and schemas using Python objects and resolvers. It provides a system for mapping internal data models to typed GraphQL schemas, enabling the creation of servers that process queries and execute resolvers to return structured data. The project includes a full implementation of the Relay specification, providing standardized patterns for global object identification and cursor-based pagination. It utilizes a class-based approach to schema definition and supports interface-based type inheritance. The framework covers a broa
async-graphql is a type-safe framework for building specification-compliant GraphQL servers in Rust. It uses procedural macros to automatically generate schemas from native language structures, ensuring consistency between the data model and the API specification. The project provides native support for Apollo Federation v2, allowing entities and fields to be shared and resolved across multiple distributed subgraphs. It also implements real-time data streaming via WebSocket subscriptions and asynchronous event streams. The framework includes a wide array of capabilities for schema design, su
Graphene-Django is a GraphQL integration framework and schema mapper used to build typed APIs for Django applications. It functions as a database API layer that transforms Django model fields and relationships into a graph schema, allowing clients to request specific data in a single call. The project implements the Relay specification, providing tools for global object identification and standardized connection-based pagination to manage large datasets. It distinguishes itself by mapping database models, forms, and serializers directly into GraphQL object types and mutations. The framework
This project is a GraphQL implementation for Go, providing a complete suite for building GraphQL servers. It includes a schema engine for defining types, a query parser to convert strings into abstract syntax trees, and an execution engine that resolves fields against a defined schema to return structured data. The library distinguishes itself through reflection-based type mapping, allowing object definitions and arguments to be derived directly from native Go structs. It also supports the execution of real-time data streaming via GraphQL subscriptions and provides an extensible execution pip
Pothos is a code-first GraphQL schema builder and framework designed for type-safe development. It allows developers to construct schemas using typed definitions in TypeScript, eliminating the need for external code generation steps. The framework distinguishes itself through a dedicated data mapper that connects GraphQL types to relational databases and ORMs, such as Prisma, while optimizing query resolution. It provides a full implementation of the Relay specification, including global object identification and cursor-based pagination. The project covers several core capability areas, incl
Yoga is a GraphQL server framework and runtime-agnostic HTTP handler used to build and deploy GraphQL APIs. It functions as a toolkit for managing schemas and resolvers, providing a spec-compliant environment for hosting APIs across diverse JavaScript runtimes, including Node.js, Deno, Bun, and serverless cloud environments. The project distinguishes itself through its ability to act as an Apollo Federation gateway, composing multiple subgraphs into a single unified supergraph. It also serves as a dedicated subscription server, delivering real-time data streaming via both WebSockets and Serve
Absinthe is a GraphQL server implementation and query engine for the Elixir ecosystem. It provides the fundamental toolkit for building GraphQL APIs, including a processing engine that parses, validates, and executes documents against a defined application schema. The project includes a batch resolver to optimize database performance by grouping field requests and a complexity guard to protect system resources by rejecting queries that exceed defined cost thresholds. It also features a schema adapter that translates internal Elixir naming conventions to external GraphQL casing for client comp
This project is the JavaScript reference implementation of the GraphQL specification. It provides a query engine and schema parser designed to parse, validate, and execute queries to retrieve or mutate data based on a defined schema. The implementation includes a framework for mapping codebase structures to a strongly typed system and a tool for converting query strings into abstract syntax trees for programmatic analysis. The library covers the full surface of GraphQL API implementation, including schema definition, language parsing, and query validation. It provides the necessary infrastru
Cerbos is an open-source authorization service that provides a centralized, language-agnostic engine for managing access control. It functions as a policy-as-code platform, allowing teams to define, test, and distribute authorization rules using declarative YAML or JSON configurations. By decoupling access logic from application code, it enables consistent permission enforcement across diverse service stacks. The project distinguishes itself through its ability to translate high-level authorization policies into native database query filters. This capability allows applications to enforce sec
graphql-go is a server library for implementing GraphQL servers in Go. It provides the core infrastructure for schema parsing, resolver mapping, and query execution. The library includes a subscription engine that enables real-time data streaming to clients using WebSocket transport. It also features an execution tracer for monitoring and profiling query performance through telemetry tools. The system manages resource consumption and stability through a query optimizer that enforces depth restrictions and controls resolver concurrency. It supports data fetching optimization via field-level p
Strawberry is a type-safe GraphQL library for Python that enables the design of schemas using Python type annotations and dataclasses. It functions as an asynchronous GraphQL server and execution engine, providing a bridge to expose schemas across ASGI-compliant web frameworks such as FastAPI, Django, Flask, and Litestar. The project implements GraphQL Federation, allowing for the creation of distributed schemas and entities that merge into a unified supergraph across multiple services. It also includes a dedicated toolkit for the Relay specification, supporting global object identification a
This project is a full stack monorepo boilerplate and Node.js GraphQL API template. It provides a seed project that integrates a schema-first GraphQL API, a PostgreSQL database, and a React frontend within a single repository to share types between the backend and user interface. The architecture includes a serverless wrapper for cloud deployment and automatic scaling. It implements a request batching layer to optimize database performance by preventing the N+1 query problem. The project covers database management through migration-based schema versioning and seed files. It also includes cap
This project is an interactive educational platform and comprehensive curriculum designed to teach developers how to build, query, and integrate GraphQL APIs into full-stack applications. It provides a structured learning environment for mastering core concepts such as schema design, query execution, and the implementation of data-driven interfaces. The platform distinguishes itself by focusing on the practical application of real-time data synchronization and backend architecture. It guides users through the process of connecting frontend frameworks to relational databases, implementing role
Vue Apollo is a GraphQL integration library for Vue applications that connects Vue components to GraphQL APIs using Apollo Client. It provides a reactive data layer for querying, mutating, and subscribing to data from GraphQL endpoints, with automatic cache updates and real-time subscription support. The library offers multiple API surfaces for working with GraphQL data, including slot-based declarative components, composable functions for the Composition API, and Options API integration. It handles the full lifecycle of GraphQL operations, from automatic data fetching with reactive queries t
Apollo Kotlin is a strongly-typed GraphQL client and code generation library designed for Kotlin and JVM applications. It functions as a comprehensive development tool that transforms GraphQL schema definitions and query documents into type-safe models during the build process, ensuring that data access errors are identified at compile time rather than at runtime. The project distinguishes itself through its multiplatform runtime abstraction, which allows developers to share data fetching and caching logic across Android, iOS, and desktop environments. It provides a normalized local caching s
This project is a PHP implementation of the GraphQL specification. It provides a suite of tools for building servers that process queries and mutations, including a schema parser, an execution engine for evaluating operations, and a toolkit for manipulating abstract syntax trees. The library differentiates itself through a specialized AST toolkit that allows for the inspection, modification, and printing of GraphQL abstract syntax trees. It also includes a mechanism for deferred field resolution to enable asynchronous data fetching and prevent blocking the primary execution thread. The imple
Javalin is a lightweight web framework for Java and Kotlin designed for building REST APIs and web applications. It functions as an embedded Jetty web server, allowing applications to run as standalone processes without the need for an external servlet container. The project provides specialized frameworks for diverse communication patterns, including a REST API framework with automatic OpenAPI schema generation, a GraphQL API framework with query and mutation resolvers, and a WebSocket server for bidirectional real-time communication. It also includes a dedicated framework for pushing real-t
Pundit is a Ruby authorization framework that implements policy-based access control. It maps domain models to dedicated logic classes that determine whether a user is permitted to perform specific actions on data objects. The framework utilizes plain Ruby objects to decouple authorization logic from the model. It includes mechanisms for data query scoping to filter record collections based on user permissions, as well as attribute-level permission control to restrict which specific model fields a user can modify. The system provides tools for authorization coverage verification to ensure se
Action Policy is a Ruby authorization framework designed to manage user access and permissions by encapsulating security logic into dedicated policy classes. It provides a structured system for defining access rules that evaluate user actions against specific application resources, ensuring that security logic remains decoupled from the primary application code. The framework distinguishes itself through its ability to handle complex authorization requirements across diverse interfaces, including web controllers and various API formats. It supports dynamic permission evaluation by utilizing a
Payload is a headless content management system and application framework that uses a code-first approach to define data schemas and administrative interfaces. By utilizing a centralized, type-safe configuration object, it automatically generates database schemas, API endpoints, and a fully customizable admin panel. The system is built on a database-agnostic architecture, allowing it to interface with various storage engines while providing a unified, type-safe API for server-side operations, REST, and GraphQL. What distinguishes Payload is its deep extensibility and developer-centric design.
This project is a comprehensive educational resource and fullstack tutorial for GraphQL development. It provides instructional content and guides focused on designing schemas, implementing servers, and managing the end-to-end workflow of building production-ready applications. The material covers the conceptual differences between graph-based data structures and traditional API architectures. It includes a dedicated security course and guides for client integration, teaching users how to fetch data, manage application state, and apply protection measures to secure API endpoints. The scope of
This project provides a comprehensive architectural framework and set of standardized patterns for building, securing, and scaling production-ready Node.js applications. It serves as a foundational guide for establishing consistent development workflows, operational observability, and reliable service integration across distributed software systems. The framework distinguishes itself by emphasizing a schema-first approach to API development, ensuring that interface definitions drive the creation of server stubs, client libraries, and type definitions. It promotes a cloud-native posture by int
Vendure is a Node.js e-commerce engine and headless commerce framework built with NestJS and TypeScript. It serves as a multi-channel commerce platform that manages product catalogs, orders, and customers via a strongly typed GraphQL API. The platform is distinguished by its highly extensible architecture, featuring a customizable administrative dashboard where developers can inject custom React components and entity views. It supports multi-channel commerce, allowing the isolation of products, currencies, and regional catalogs from a single unified backend. The engine covers a broad range o
This project is a strongly-typed GraphQL client library and code generator designed for Android, JVM, and Kotlin Multiplatform. It provides a toolset for executing queries and mutations, generating immutable classes and parsers from GraphQL schemas to ensure compile-time type safety. The library features a normalized client-side caching system that flattens server responses into a lookup table to maintain a single source of truth. It includes a specialized subscription client for handling real-time server-side updates via WebSockets or Server-Sent Events, and a mocking framework for simulatin
express-graphql is a GraphQL API server implementation and HTTP middleware that connects a GraphQL schema to an HTTP server. It provides a request parser to extract queries and variables from various content types and a context provider to inject HTTP request data and session state into resolver functions. The library includes a browser-based interactive IDE that detects GET requests to serve an HTML interface for testing queries and inspecting responses. It also supports a custom execution pipeline, allowing for the override of default parsing, validation, execution, and error formatting fun
This project is a pre-configured boilerplate and seed project for building serverless web applications using React and Firebase. It serves as a comprehensive template for setting up the environment, routing, and infrastructure required to launch single-page applications. The framework integrates a data layer using GraphQL and Relay to coordinate requests and maintain scalable state management. It includes a standardized user interface kit based on Material Design principles and implements asynchronous code splitting to reduce initial bundle payloads. The system covers identity management thr
backend-cheats is a comprehensive backend engineering reference guide and a collection of technical cheatsheets. It serves as a knowledge base for server-side development, networking, and computer science fundamentals, delivered as a markdown-based static site. The project provides detailed handbooks for API design, specifically covering REST and GraphQL interfaces, and software architecture patterns such as Monolithic, Microservices, and MVC. It includes a database architecture overview comparing relational and NoSQL paradigms, as well as a web security reference for identifying vulnerabilit