An open API service indexing awesome lists of open source software.

awesome-graphql

Awesome list of GraphQL
https://github.com/chentsulin/awesome-graphql

Last synced: 10 days ago
JSON representation

Blogs

Blogs - Security

  • Escape - The GraphQL Security Blog - Learn about GraphQL security, performance, testing and building production-ready APIs with the latest tools and best practices of the GraphQL ecosystem.

CMS

Books

CMS

Communities

Posts

  • GraphQL Weekly - A weekly newsletter highlighting resources and news from the GraphQL community.
  • Apollo GraphQL Community - Connect with other developers and share knowledge about every part of the Apollo GraphQL platform.
  • Stack Overflow - Questions and answers using the tag graphql.
  • X - Use the hashtag #graphql.
  • /r/GraphQL - A subreddit for GraphQL news, resources, and discussions.
  • GraphQL APIs - A collective list of public GraphQL APIs.
  • Discord - Reactiflux - Join #help-graphql on the Reactiflux Discord server.

Databases & Data Platforms

Tools - Performance & Query Utilities

  • ArangoDB - Native multi-model database with GraphQL support through Foxx microservices.
  • Dgraph - Scalable, distributed, low-latency, high-throughput graph database with GraphQL as the query language.
  • Cube - Open-source semantic layer for AI, BI, and embedded analytics with GraphQL, SQL, and REST APIs.
  • Weaviate - Open-source vector database combining vector search, structured filtering, and a GraphQL interface.

Federation & Schema Composition

Examples

Implementations & Platforms

  • WunderGraph Cosmo - Open source GraphQL federation solution with schema registry, composition checks, analytics, metrics, tracing, and routing.
  • federation-jvm - Apollo Federation on the JVM.
  • graphql-orchestrator-java - Orchestrator and gateway library that combines schemas from multiple GraphQL microservices using schema stitching and Apollo Federation directives.
  • graphql-mesh - A GraphQL federation framework for unifying GraphQL, REST, OpenAPI, SOAP, gRPC, and other API services.

Posts

Specification

  • GraphQL Federation - Prerelease working draft for composing independently developed GraphQL schemas into a unified graph.
  • Apollo Join - Specification for describing subgraphs and field resolution in a supergraph schema.

Implementations

Android

Ballerina

  • Ballerina GraphQL Examples - Sample implementations of GraphQL services in Ballerina.
  • GraphQL - Standard Ballerina library providing GraphQL client and server implementations with built-in subscription support.
  • GraphQL CLI - A CLI tool to generate Ballerina code from GraphQL schema and GraphQL schema from Ballerina code. It also provides functionality to generate usage-specific GraphQL clients using GraphQL schemas and documents.
  • Convert Weather REST API to GraphQL API - Example demonstrating REST API conversion to GraphQL.

C/C++

  • libgraphqlparser - A GraphQL query parser in C++ with C and C++ APIs.
  • agoo-c - High-performance GraphQL server written in C with published benchmarks.
  • cppgraphqlgen - C++ GraphQL schema service generator.
  • CaffQL - Generates C++ client types and request/response serialization from a GraphQL introspection query.

Clojure

  • graphql-clj - A Clojure library designed to provide GraphQL implementation.
  • Lacinia - GraphQL implementation in pure Clojure.
  • graphql-query - Clojure(Script) GraphQL query generation.
  • Clojure Game Geek - Example code for the Lacinia GraphQL framework tutorial.

ClojureScript

  • re-graph - A GraphQL client for ClojureScript with bindings for re-frame applications.

Crystal

Dart

  • Artemis - A GraphQL type and query generator for Dart/Flutter.
  • graphql-flutter - A GraphQL client for Flutter.

D (dlang)

  • graphqld - GraphQL server library for D.

Elixir

Elm

Go

  • Go Backend Tutorial - A tutorial showing how to make a Go GraphQL server and client using code generation.
  • graphql-go-tools - GraphQL router and API gateway framework written in Go, focused on correctness, extensibility, and performance.
  • GraphQL - Implementation of GraphQL for Go that follows graphql-js.
  • graphql-go - GraphQL server with a focus on ease of use.
  • gql - Code-first schema builder based on the reference Go implementation.
  • gqlgen - Go generate-based GraphQL server library.
  • graphql-relay-go - A Go/Golang library to help construct a server supporting react-relay.
  • graphjin - Instant GraphQL-to-SQL compiler for building APIs quickly.
  • grpc-graphql-gateway - Protoc plugin that generates GraphQL execution code from Protocol Buffers.
  • golang-relay-starter-kit - Barebones starting point for a Relay application with Golang GraphQL server.
  • todomvc-relay-go - Port of the React/Relay TodoMVC app, driven by a Golang GraphQL backend.
  • go-graphql-subscription-example - A GraphQL schema and server that demonstrates GraphQL subscriptions over WebSocket to consume Apache Kafka messages.
  • Thunder - Scalable microservices framework powered by Go, gRPC-Gateway, Prisma, and Kubernetes that exposes REST, gRPC, and GraphQL.

Haskell

iOS

  • apollo-ios - 📱 A strongly-typed, caching GraphQL client for iOS, written in Swift.
  • ApolloDeveloperKit - Apollo Client developer tools bridge for Apollo iOS.
  • Graphaello - Type Safe GraphQL directly from SwiftUI.
  • frontpage-ios-app - 📄 Apollo "hello world" app, for iOS.
  • Baton - Relay-style GraphQL client for SwiftUI and Jetpack Compose, with a fragment beside each view and a normalized store the UI observes.

Java

  • graphql-java-generator - Maven and Gradle plugins that generate both the client and the server (POJOs and utility classes). The server part is based on graphql-java and hides its boilerplate code.
  • manifold-graphql - Comprehensive schema-first GraphQL client with type-safe types, queries, and results, no code generators, no POJOs, and no annotations. Includes IDE support for IntelliJ IDEA and Android Studio. See the Java example below.
  • Spring Boot backend tutorial - A tutorial creating a GraphQL server and client using Spring Boot and Netflix DGS.
  • graphql-java - GraphQL Java implementation.
  • DGS Framework - A GraphQL server framework for Spring Boot, developed by Netflix.
  • gaphql-java-type-generator - Automatically generates types for use with GraphQL Java.
  • schemagen-graphql - Schema generation and execution package that turns POJO's into a GraphQL Java queryable set of objects. Enables exposing any service as a GraphQL service using Annotations.
  • graphql-java-annotations - Provides annotations-based syntax for schema definition with GraphQL Java.
  • graphql-java-tools - Schema-first graphql-java convenience library that makes it easy to bring your own implementations as data resolvers, inspired by graphql-tools for JS.
  • graphql-java-codegen-maven-plugin - Schema-first Maven plugin for generating Java types and resolver interfaces. Works with graphql-java-tools and was inspired by swagger-codegen-maven-plugin.
  • graphql-java-codegen-gradle-plugin - Schema-first Gradle plugin for generating Java types and resolver interfaces. Works with graphql-java-tools and was inspired by gradle-swagger-generator-plugin.
  • graphql-java-servlet - A framework-agnostic java servlet for exposing graphql-java query endpoints with GET, POST, and multipart uploads.
  • graphql-spring-boot - GraphQL and GraphiQL Spring Framework Boot Starters.
  • vertx-graphql-service-discovery - Asynchronous GraphQL service discovery and querying for your microservices.
  • vertx-dataloader - Port of Facebook DataLoader for efficient, asynchronous batching and caching in clustered GraphQL environments.
  • graphql-spqr - Java 8+ API for rapid development of GraphQL services.
  • Light Java GraphQL - Lightweight, fast microservices framework with cross-cutting concerns addressed and support for GraphQL schemas.
  • graphql-java-extended-validation - Provides extended validation of fields and field arguments for graphql-java.
  • dgs-extended-formatters - An experimental set of DGS Directives for common formatting use-cases.
  • graphql-java-extended-scalars - Extended scalars for graphql-java.
  • graphql-spqr-samples - An example GraphQL server written with Spring MVC and GraphQL-SPQR.
  • manifold-graphql sample - A simple application, both client and server, demonstrating the Manifold GraphQL library.
  • graphql-java-kickstart_samples - Samples for using the GraphQL Java Kickstart projects.
  • java-dataloader - DataLoader implementation that provides batching and caching to avoid N+1 data-fetching problems.
  • MicroProfile GraphQL - Specification for developing portable, code-first GraphQL services with Enterprise Java.
  • SmallRye GraphQL - Implementation of MicroProfile GraphQL with server, client, and tooling support.
  • Micronaut GraphQL - Official Micronaut integration for building GraphQL Java servers.
  • Vert.x Web GraphQL - Official GraphQL Java integration for Vert.x Web.
  • spring-graphql-common - Spring Framework GraphQL Library.
  • Elide - Java library that exposes a JPA-annotated data model as a GraphQL service over a relational database.
  • GraphQL JPA Query - Generates GraphQL query APIs from JPA entity models.
  • graphql-java-datetime - GraphQL ISO Date is a set of RFC 3339 compliant date/time scalar types to be used with graphql-java.
  • Spring for GraphQL reference - Official reference documentation for building GraphQL services with Spring.
  • Spring for GraphQL - Official Spring integration for applications built on GraphQL Java.

JavaScript/TypeScript

  • Validator.js Wrapper Directive - Wraps Validator.js functionality in validation directives.
  • Next.js TypeScript and GraphQL Example - Type-protected GraphQL example on Next.js running graphql-codegen under the hood.
  • graphql-js - A reference implementation of GraphQL for JavaScript.
  • graphql-jit - GraphQL execution using a JIT compiler.
  • apollo-client - A production-ready GraphQL client for TypeScript and JavaScript with caching, framework integrations, and developer tools.
  • graphql-zeus - Generates type-safe JavaScript and TypeScript GraphQL clients with autocomplete.
  • graphqurl - Curl for GraphQL with autocomplete, subscriptions, and GraphiQL, plus a universal JavaScript GraphQL client.
  • aws-amplify - A JavaScript library for building applications with AWS cloud services, including GraphQL APIs through AWS AppSync.
  • gqty - No-query-language GraphQL client for TypeScript.
  • genql - Type safe TypeScript client for any GraphQL API.
  • svelte-apollo - Svelte integration for Apollo GraphQL.
  • ember-apollo-client - An ember-cli addon for Apollo Client and GraphQL.
  • apollo-elements - GraphQL web components that work in any frontend framework.
  • sveltekit-kitql - A collection of tools for building SvelteKit applications with GraphQL.
  • relay - JavaScript framework for building data-driven React applications.
  • graphql-hooks - Minimal hooks-first GraphQL client with caching and server-side rendering support.
  • mst-gql - Bindings for mobx-state-tree and GraphQL.
  • micro-graphql-react - A lightweight React GraphQL client with simple caching and support for service-worker caching through GET requests.
  • apollo-server - A spec-compliant, production-ready JavaScript GraphQL server for schema-first development with standalone and web framework integrations.
  • hapi-graphql - Create a GraphQL HTTP server with Hapi.
  • hapi-plugin-graphiql - HAPI plugin for GraphiQL integration.
  • graphql-api-koa - GraphQL Koa middleware that implements GraphQL.js from scratch and supports native ESM.
  • graphql-koa-scripts - GraphQL Koa 1 file simplified. Useful for quick test.
  • gql - Universal GraphQL HTTP middleware for Deno.
  • mercurius - GraphQL plugin for Fastify.
  • graphitejs - Node.js framework for GraphQL.
  • pylon - Write full-feature APIs with just functions. No more boilerplate code, no more setup. Just write functions and deploy.
  • graphql-sequelize - Sequelize helpers for GraphQL.
  • graphql-bookshelf - Some help defining GraphQL schema around BookshelfJS models.
  • graphql-nexus - Code-First, Type-Safe, GraphQL Schema Construction.
  • graphql-code-generator - GraphQL code generator with flexible support for custom plugins and templates such as TypeScript, React Hooks, and resolver signatures.
  • pothos - Plugin-based GraphQL schema builder for TypeScript.
  • garph - Full-stack framework for building type-safe GraphQL APIs in TypeScript.
  • graphql-to-type - GraphQL query parser written entirely in TypeScript's type system for creating interfaces from a provided query.
  • gql.tada - GraphQL document authoring library, inferring the result and variables types of GraphQL queries and fragments in the TypeScript type system.
  • graphql-tag - A JavaScript template literal tag that parses GraphQL queries.
  • load-gql - A tiny, zero dependency GraphQL schema loader from files and folders.
  • graphql-compose - Tool for constructing flexible GraphQL schemas from different data sources via plugins.
  • graphql-shield - Library for creating a permission layer for a GraphQL API.
  • graphql-shield-generator - Emits a GraphQL Shield from your GraphQL schema.
  • graphqlgate - GraphQL rate-limiting library with query complexity analysis for Node.js.
  • graphql-let - Webpack loader for importing type-protected code generation results directly from GraphQL documents.
  • graphql-cli - A command line tool for common GraphQL development workflows.
  • graphql-toolkit - A set of utils for faster development of GraphQL tools (Schema and documents loading, Schema merging and more).
  • graphback - Framework and CLI to add a GraphQLCRUD API layer to a GraphQL server using data models.
  • graphql-middleware - Split up your GraphQL resolvers in middleware functions.
  • graphql-relay-js - A library to help construct a graphql-js server supporting react-relay.
  • graphql-normalizr - Normalize GraphQL responses for persisting in the client cache/state.
  • babel-plugin-graphql - Babel plugin that compiles GraphQL tagged template strings.
  • eslint-plugin-graphql - An ESLint plugin that checks your GraphQL strings against a schema.
  • graphql-ws - Coherent, zero-dependency, lazy, simple, GraphQL over WebSocket Protocol compliant server and client.
  • graphql-live-query - Realtime GraphQL Live Queries with JavaScript.
  • microfiber - Query and manipulate GraphQL introspection query results in useful ways.
  • GraphQL Constraint Directive - Allows @constraint directives to validate input data, inspired by the Constraints Directives RFC and OpenAPI.
  • React Starter Kit - Frontend starter kit using React, Relay, GraphQL, and JAMstack architecture.
  • SWAPI GraphQL Wrapper - A GraphQL schema and server wrapping SWAPI.
  • Relay TodoMVC - TodoMVC example with Relay and routing.
  • F8 App 2017 - Source code for the official 2017 F8 app, built with React Native, Relay, and GraphQL.
  • Apollo React example for GitHub GraphQL API - Example using Apollo React with the GitHub GraphQL API and Create React App.
  • graphql-sunset - Quickly and easily add support for the Sunset header to your GraphQL server, to better communicate upcoming breaking changes.
  • gqloom - GraphQL weaver for TypeScript/JavaScript that weaves GraphQL schema and resolvers using Valibot, Zod, or Yup.
  • RAN Toolkit - Production-ready toolkit/boilerplate with support for GraphQL, SSR, Hot-reload, CSS-in-JS, caching, and more.
  • GraphQL Starter - A boilerplate for TypeScript + Node Express + Apollo GraphQL APIs.
  • graphql-ably-pubsub - Ably PubSub implementation for GraphQL to publish mutation updates and subscribe to the result through a subscription query.
  • VulcanJS - Full-stack React and GraphQL framework.
  • react-apollo - The core @apollo/client library provides built-in integration with React.
  • Next.js Advanced GraphQL CRUD MongoDB Starter - Generic CRUD starter with an advanced Apollo GraphQL server, Next.js, MongoDB, and TypeScript.
  • Gra**fast** - A cutting edge planning and execution engine for GraphQL.
  • Graffle - A minimal, extensible, type-safe GraphQL client for JavaScript and TypeScript runtimes.
  • zodql - Type-safe GraphQL client that uses Zod schemas as the single source of truth to build queries, infer response types, and validate responses at runtime.
  • vue-apollo - Apollo Client integration for Vue.js.
  • apollo-angular - Apollo Client integration for Angular with declarative data fetching and caching.
  • urql - A customizable GraphQL client with framework bindings and extensible caching.
  • koa-graphql - GraphQL Koa Middleware.
  • graphql-yoga - A fully featured GraphQL server built on the WHATWG Fetch API for deployment in any JavaScript environment.
  • graphql-helix - A highly evolved GraphQL HTTP Server.
  • join-monster - A GraphQL-to-SQL query execution layer for batch data fetching.
  • Simfinity.js - Generates GraphQL queries, mutations, relationships, and MongoDB or PostgreSQL storage from GraphQL object types.
  • graphql-scalars - A library of custom GraphQL Scalars for creating precise type-safe GraphQL schemas.
  • type-graphql - Creates GraphQL schemas and resolvers with TypeScript classes and decorators.
  • fast-graphql - GraphQL tools to structure and combine resolvers and merge schema definitions for Node.js, Next.js, and Apollo Server.
  • graphql-tools - Utilities for building, mocking, and stitching GraphQL schemas.