← Back to Awesome

Sections

GraphQL

GitHub repository ↗ synced 2026/8/9

awesome-graphql Awesome GitHub Actions Workflow Status

Awesome list of GraphQL

If you want to contribute to this list (please do), send me a pull request.

Specifications

GraphQL

Working draft of the specification for GraphQL.

GraphQL over HTTP

Working draft of "GraphQL over HTTP" specification.

GraphQL Relay

Relay-compliant GraphQL server specification.

OpenCRUD

OpenCRUD is a GraphQL CRUD API specification for databases.

Apollo Federation

Apollo Federation specification

GraphQXL

GraphQXL is an extension of the GraphQL language with some additional features that help creating big and scalable server-side schemas.

GraphQL Scalars

hosts community defined custom Scalar specifications for use with @specifiedBy.

Foundations

GraphQL Foundation

GraphQL Foundation under the Linux Foundation

Communities

Discord - GraphQL

Official GraphQL.org discord channel.

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.

Discord - Reactiflux

Join `#help-graphql` on the Reactiflux Discord server.

Facebook

Group for discussions, articles and knowledge sharing.

X

Use the hashtag `#graphql`.

StackOverflow

Questions and answers. Use the tag `graphql`.

GraphQL APIs

A collective list of public GraphQL APIs.

/r/GraphQL

A Subreddit for interesting and informative GraphQL content and discussions.

Meetups

Relay Meetup

A global, online meetup on Relay, the GraphQL client.

Amsterdam
Bangalore
Berlin
Buenos Aires
Copenhagen
Dallas-Fort Worth
Hamburg
London
Melbourne
Munich
New York City
San Francisco
Seattle
Sydney
Tel Aviv
Wrocław
Singapore
Zurich

Implementations

JavaScript/TypeScript

graphql-js

A reference implementation of GraphQL for JavaScript.

graphql-jit

GraphQL execution using a JIT compiler.

Gra*fast*

a cutting edge planning and execution engine for GraphQL.

apollo-client

A fully-featured, production ready caching GraphQL client for every UI framework and GraphQL server.

graphql-request

A minimal GraphQL client for Node and browsers.

typescript-graphql-request

Use GraphQL Request as a fully typed SDK.

graphql-zeus

GraphQL Zeus creates autocomplete client library for `JavaScript` or `TypeScript` which provides autocompletion for strongly typed queries.

graphqurl

curl for GraphQL with autocomplete, subscriptions and GraphiQL. Also a dead-simple universal javascript GraphQL client.

aws-amplify

A client library developed by Amazon for caching, analytics and more that includes a way to fetch GraphQL queries.

gqty

A No GraphQL client for TypeScript

genql

Type safe TypeScript client for any GraphQL API.

vue-apollo

Apollo/GraphQL integration for VueJS.

apollo-angular

A fully-featured, production ready caching GraphQL client for Angular and every GraphQL server.

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 set of tools, helping you building efficient apps in a fast way with SvelteKit and GraphQL.

react-apollo

The core @apollo/client library provides built-in integration with React.

relay

Relay is a JavaScript framework for building data-driven React applications.

urql

A simple caching GraphQL client for React.

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 utility for adding GraphQL to React. components. Includes simple caching and uses GET requests that could additionally be cached through a service-worker.

@gqty/react

A No GraphQL client for TypeScript

apollo-server

Spec-compliant and production ready JavaScript GraphQL server that lets you develop in a schema-first way. Built for Express, Connect, Hapi, Koa, and more.

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.

koa-graphql

GraphQL Koa Middleware.

graphql-koa-scripts

GraphQL Koa 1 file simplified. usefull for quick test

gql

Universal GraphQL HTTP middleware for Deno.

mercurius

GraphQL plugin for Fastify.

graphql-yoga

Fully-featured GraphQL Server with focus on easy setup, performance and great developer experience.

graphitejs

Framework NodeJS for GraphQL.

graphql-helix

A highly evolved GraphQL HTTP Server.

pylon

Write full-feature APIs with just functions. No more boilerplate code, no more setup. Just write functions and deploy.

modus

Serverless runtime based on WebAssembly that delivers auto-generated GraphQL APIs.

graphql-sequelize

Sequelize helpers for GraphQL.

graphql-bookshelf

Some help defining GraphQL schema around BookshelfJS models.

join-monster

A GraphQL-to-SQL query execution layer for batch data fetching.

graphql-ably-pubsub

Ably PubSub implementation for GraphQL to publish mutation updates and subscribe to the result through a subscription query.

graphql-scalars

A library of custom GraphQL Scalars for creating precise type-safe GraphQL schemas.

type-graphql

Create GraphQL schema and resolvers with TypeScript, using classes and decorators!

graphql-nexus

Code-First, Type-Safe, GraphQL Schema Construction.

pothos

Pothos is a plugin based GraphQL schema builder for typescript. It makes building graphql schemas in typescript easy, fast and enjoyable.

garph

Garph is full-stack framework for building type-safe GraphQL APIs in TypeScript.

gqloom

GQLoom is a GraphQL weaver for TypeScript/JavaScript that weaves GraphQL schema and resolvers using [Valibot](https://github.com/fabian-hiller/valibot), [Zod](https://github.com/colinhacks/zod), or [Yup](https://github.com/jquense/yup).

fast-graphql

Graphql Tools to Structure, Combine Resolvers and Merge Schema Definitions for Node.js, Next.Js and Graphql Apollo server

graphql-to-type

GraphQL query parser written entirely in TypeScript's type system for creating interfaces based on 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-tools

Tool library for building and maintaining GraphQL-JS servers.

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 which allows you to construct flexible graphql schema from different data sources via plugins.

graphql-modules

Separate GraphQL server into smaller, reusable parts by modules or features.

graphql-shield

A library that helps creating a permission layer for a graphql api.

graphql-shield-generator

Emits a GraphQL Shield from your GraphQL schema.

graphqlgate

A GraphQL rate-limiting library with query complexity analysis for Node.js

graphql-let

A webpack loader to import type-protected codegen results directly from GraphQL documents

graphql-config

One configuration for all your GraphQL tools (supported by most tools, editors & IDEs).

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).

graphql-mesh

use GraphQL query language to access data in remote APIs that don't run GraphQL (and also ones that do run GraphQL).

sofa

Generate REST API from your GraphQL API.

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 compile 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.

GraphVinci

An interactive schema visualizer for GraphQL APIs.

supertest-graphql

Extends [supertest](https://github.com/visionmedia/supertest) to easily test a GraphQL endpoint

schemathesis

Runs arbitrary queries matching a GraphQL schema to find server errors.

microfiber

Query and manipulate GraphQL introspection query results in useful ways.

graphql-armor

An instant security layer for production GraphQL Endpoints.

goctopus

an incredibly fast GraphQL discovery & fingerprinting toolbox.

GraphQL Constraint Directive

Allows using @constraint as a directive to validate input data. Inspired by Constraints Directives RFC and OpenAPI

Validator.js Wrapper Directive

A comprehensive list of validator directive wraps Validator.js functionalities

WunderGraph Cosmo

The Open-Source GraphQL Federation Solution with Full Lifecycle API Management for (Federated) GraphQL. Schema Registry, composition checks, analytics, metrics, tracing and routing.

graphql-go-tools

A graphQL Router / API Gateway framework written in Golang, focussing on correctness, extensibility, and high-performance. Supports Federation v1 & v2, Subscriptions & more.

graphql-sunset

Quickly and easily add support for the `Sunset` header to your GraphQL server, to better communicate upcoming breaking changes.

Schemato

Browser-only GraphQL SDL converter for generating TypeScript, Zod, Pydantic, Go, Rust, and other typed models.

React Starter Kit

front-end starter kit using React, Relay, GraphQL, and JAM stack architecture.

SWAPI GraphQL Wrapper

A GraphQL schema and server wrapping SWAPI.

Relay TodoMVC

Relay TodoMVC with routing.

Apollo Client documentation

Documentation and example for building GraphQL apps using apollo client.

Apollo Server tools documentation

Documentation, tutorial and examples for building GraphQL server and connecting to SQL, MongoDB and REST endpoints.

F8 App 2017

Source code of the official F8 app of 2016, powered by React Native and other Facebook open source projects.

Apollo React example for Github GraphQL API

Usage Examples Apollo React for Github GraphQL API with create-react-app.

Next.js TypeScript and GraphQL Example

A type-protected GraphQL example on Next.js running [graphql-codegen](https://graphql-code-generator.com/) under the hood

NAPERG

Fullstack Boilerplate GraphQL. Made with React & Prisma + authentication & roles.

VulcanJS

The full-stack React+GraphQL framework

RAN Toolkit

Production-ready toolkit/boilerplate with support for GraphQL, SSR, Hot-reload, CSS-in-JS, caching, and more.

Node.js API Starter

Yarn v2 based monorepo template (code-first GraphQL API, PostgreSQL, PnP, Zero-install, serverless).

Next.js Apollo TypeScript Starter

Next.js starter project focused on developer experience.

GraphQL Starter

A boilerplate for TypeScript + Node Express + Apollo GraphQL APIs.

Mocked Managed Federation - Apollo Server 3

An example of how to mock a managed federation Supgraph using Apollo Server 3.x

Mocked Managed Federation - Apollo Server 4

An example of how to mock a managed federation Supgraph using Apollo Server 4.x

Next.js Advanced Graphql Crud MongoDB Starter

Starter Generic CRUD with Advanced Apollo Graphql server with Next.js and Mongodb (TypeScript)

Clients

Frontend Framework Integrations
React

Servers

Databases & ORMs
PubSub

Custom Scalars

Type

  • graphql-code-generator: GraphQL code generator with flexible support for custom plugins and templates like TypeScript (frontend and backend), React Hooks, resolvers signatures and more.

Miscellaneous

JavaScript Examples

  • GraphQL StackBlitz Starter – A live, editable demo spinning up in about 2 seconds and running in a browser.

TypeScript Examples

Ruby

graphql-ruby

Ruby implementation of Facebook's GraphQL.

graphql-batch

A query batching executor for the graphql gem.

graphql-auth

A JWT auth wrapper working with devise.

agoo

Ruby web server that implements Facebook's GraphQL.

GQLi

A GraphQL client and DSL. Allowing to write queries in native Ruby.

graphql-ruby-demo

Use graphql-ruby to expose a Rails app.

github-graphql-rails-example

Example Rails app using GitHub's GraphQL API.

relay-on-rails

Barebones starter kit for Relay application with Rails GraphQL server.

relay-rails-blog

A graphql, relay and standard rails application powered demo weblog.

to_eat_app

A sample graphql/rails/relay application with a related 3-part article series.

agoo-demo

Use of the Agoo server to demonstrate a simple GraphQL application.

rails-devise-graphql

A rails 6 boilerplate with devise, graphql & JWT auth.

Ruby Examples

PHP

graphql-php

A PHP port of GraphQL reference implementation.

graphql-relay-php

Relay helpers for webonyx/graphql-php implementation of GraphQL.

lighthouse

A PHP package that allows to serve a GraphQL endpoint from your Laravel application.

graphql-laravel

Laravel wrapper for Facebook's GraphQL.

overblog/graphql-bundle

This bundle provides tools to build a complete GraphQL server in your Symfony App. Supports react-relay.

wp-graphql

GraphQL API for WordPress.

graphqlite

Framework agnostic library that allows you to write GraphQL server by annotating your PHP classes.

siler

Plain-old functions providing a declarative API for GraphQL servers with Subscriptions support.

graphql-request-builder

Builds request payload in GraphQL structure.

drupal/graphql

Craft and expose a GraphQL schema for Drupal 9 and 10.

jerowork/graphql-schema-builder

Easily build your GraphQL schema for webonyx/graphql-php using PHP attributes instead of large configuration arrays.

siler-graphgl

An example GraphQL server written with Siler.

PHP Examples

Python

graphql-parser

GraphQL parser for Python.

graphql-core

GraphQL implementation for Python based on GraphQL.js v16.3.0 reference implementation

graphql-relay-py

A library to help construct a graphql-py server supporting react-relay.

graphql-parser-python

A python wrapper around libgraphqlparser.

graphene

A package for creating GraphQL schemas/types in a Pythonic easy way.

graphene-gae

Adds GraphQL support to Google AppEngine (GAE).

django-graphiql

Integrate GraphiQL easily into your Django project.

flask-graphql

Adds GraphQL support to your Flask application.

python-graphql-client

Simple GraphQL client for Python 2.7+

python-graphjoiner

Create GraphQL APIs using joins, SQL or otherwise.

graphene-django

A Django integration for Graphene.

Flask-GraphQL-Auth

An authentication library for Flask inspired from flask-jwt-extended.

tartiflette

GraphQL Implementation, SDL First, for python 3.6+ / asyncio.

tartiflette-aiohttp

Wrapper of Tartiflette to expose GraphQL API over HTTP based on aiohttp / 3.6+ / asyncio, [official tutorial available on tartiflette.io](https://tartiflette.io/docs/tutorial/getting-started).

Ariadne

library for implementing GraphQL servers using schema-first approach. Asynchronous query execution, batteries included for ASGI, WSGI and popular webframeworks, [fully documented](https://ariadnegraphql.org).

django-graphql-auth

Django registration and authentication with GraphQL.

strawberry

A new GraphQL library for Python.

turms

A pythonic graphql codegenerator built around graphql-core and pydantic

rath

An apollo like graphql client with async and sync interface

sgqlc

Simple GraphQL Client makes working with GraphQL API responses easier in Python.

swapi-graphene

A GraphQL schema and server using [Graphene](https://graphene-python.org).

Python Backend Tutorial

A tutorial on creating a GraphQL server with [Strawberry](https://strawberry.rocks/) and a client with [Qlient](https://qlient-org.github.io/python-qlient/site/).

Python Examples

Java

graphql-java

GraphQL Java implementation.

DGS Framework

A GraphQL server framework for Spring Boot, developed by Netflix.

graphql-java-generator

A [Maven plugin](https://github.com/graphql-java-generator/graphql-maven-plugin-project) and a [Gradle plugin](https://github.com/graphql-java-generator/graphql-gradle-plugin-project) that can generate both the **Client** and the **Server** (POJOs and utility classes). The server part is based on graphql-java, and hides all its boilerplate codes.

gaphql-java-type-generator

Auto-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](https://github.com/apollographql/graphql-tools) for JS.

graphql-java-codegen-maven-plugin

Schema-first maven plugin for generating Java types and Resolver interfaces. Works perfectly in conjunction with graphql-java-tools. Inspired by [swagger-codegen-maven-plugin](https://github.com/swagger-api/swagger-codegen/tree/master/modules/swagger-codegen-maven-plugin).

graphql-java-codegen-gradle-plugin

Schema-first gradle plugin for generating Java types and Resolver interfaces. Works perfectly in conjunction with graphql-java-tools. Inspired by [gradle-swagger-generator-plugin](https://github.com/int128/gradle-swagger-generator-plugin).

graphql-java-servlet

A framework-agnostic java servlet for exposing graphql-java query endpoints with GET, POST, and multipart uploads.

manifold-graphql

Comprehensive GraphQL client use. Schema-first. Type-safe GraphQL types, queries, and results, no code generators, no POJOs, no annotations. Excellent [IDE support](http://manifold.systems/images/graphql.mp4) with IntelliJ IDEA and Android Studio. See the [Java example](#example-java) below.

spring-graphql-common

Spring Framework GraphQL Library.

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.

federation-jvm

Apollo Federation on the JVM.

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-datetime

GraphQL ISO Date is a set of RFC 3339 compliant date/time scalar types to be used with graphql-java.

graphql-java-extended-scalars

Extended scalars for graphql-java.

light-java-graphql examples

Examples of Light Java GraphQL and tutorials.

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.

graphql-java-kickstart-federation-example

A GraphQL Java Kickstart federation example.

dgs-federation-example

A Netflix DGS federation example.

Spring Boot backend tutorial

A tutorial creating a GraphQL server and client using Spring Boot and Netflix DGS.

  • Light Java GraphQL: A lightweight, fast microservices framework with all cross-cutting concerns addressed and ready to plug in GraphQL schema.
  • Elide: A Java library that can expose a JPA annotated data model as a GraphQL service over any relational database.
  • graphql-orchestrator-java GraphQL Orchestrator/Gateway library that supports Schema Stitching and Apollo Federation directives to combine schema from multiple GraphQL microservices into a single unified schema.

Custom Scalars

Java Examples

Kotlin

graphql-kotlin

GraphQL Kotlin implementation.

manifold-graphql

Comprehensive GraphQL client use. Schema-first. Type-safe GraphQL types, queries, and results, no code generators, no POJOs, no annotations. Excellent [IDE support](http://manifold.systems/images/graphql.mp4) with IntelliJ IDEA and Android Studio. See the [Kotlin example](#example-kotlin) below.

Kobby

Codegen plugin of Kotlin DSL Client by GraphQL schema. The generated DSL supports execution of complex GraphQL queries, mutation and subscriptions in Kotlin with syntax similar to native GraphQL syntax.

Graphkt

A DSL based graphql server library for kotlin, backed by graphql-java.

manifold-graphql sample

A simple GraphQL application, both client and server, demonstrating the Manifold GraphQL library with Kotlin.

  • KGraphQL: Pure Kotlin implementation to setup a GraphQL server.

Kotlin Examples

C/C++

libgraphqlparser

A GraphQL query parser in C++ with C and C++ APIs.

agoo-c

A high performance GraphQL server written in C. [benchmarks](https://github.com/the-benchmarker/graphql-benchmarks)

cppgraphqlgen

C++ GraphQL schema service generator.

CaffQL

Generates C++ client types and request/response serialization from a GraphQL introspection query.

Go

graphql

An implementation of GraphQL for Go follows graphql-js

graphql-go

GraphQL server with a focus on ease of use.

gql

Code first graphql (graphql-go/graphql) schema builder.

gqlgen

Go generate based graphql server library.

graphql-relay-go

A Go/Golang library to help construct a server supporting react-relay.

graphql-go-tools

A graphQL Router / API Gateway framework written in Golang, focussing on correctness, extensibility, and high-performance. Supports Federation v1 & v2, Subscriptions & more.

Thunder

A scalable microservices framework powered by Go, gRPC-Gateway, Prisma, and Kubernetes. It exposes REST, gRPC and Graphql

grpc-graphql-gateway

A 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](https://github.com/apollographql/subscriptions-transport-ws/blob/v0.9.4/PROTOCOL.md) (over Websocket) to consume [Apache Kafka](https://kafka.apache.org/) messages.

Go Backend Tutorial

A tutorial showing how to make a Go GraphQL server and client using code generation.

  • graphjin: Build APIs in 5 minutes with GraphQL. An instant GraphQL to SQL compiler.

Go Examples

Scala

sangria

Scala GraphQL server implementation.

sangria-relay

Sangria Relay Support.

caliban

Caliban is a purely functional library for creating GraphQL backends in Scala.

sangria-akka-http-example

An example GraphQL server written with akka-http and [sangria](https://sangria-graphql.github.io/)

sangria-playground

An example of GraphQL server written with Play and sangria.

Scala Examples

.NET

graphql-dotnet

GraphQL for .NET.

graphql-net

GraphQL to IQueryable for .NET.

Hot Chocolate

GraphQL server for .Net Core and .NET Framework.

Snowflaqe

Type-safe GraphQL code generator for F# and [Fable](https://github.com/fable-compiler/Fable)

EntityGraphQL

library to build a GraphQL API on top of data model with the extensibility to bring multiple data sources together in the single GraphQL schema.

ZeroQL

type-safe GraphQL client with Linq-like interface for C#

.NET backend tutorial

A tutorial creating a GraphQL server and client with .NET.

.NET Examples

Elixir

absinthe-graphql

Fully Featured Elixir GraphQL Library.

graphql-elixir

GraphQL Elixir. (No longer maintained)

plug_graphql

Plug integration for GraphQL Elixir.

graphql_relay

Relay helpers for GraphQL Elixir.

graphql_parser

Elixir bindings for [libgraphqlparser](https://github.com/graphql/libgraphqlparser)

graphql

Elixir GraphQL parser.

plot

GraphQL parser and resolver for Elixir.

hello_graphql_phoenix

Examples of GraphQL Elixir Plug endpoints mounted in Phoenix

Elixir Examples

Haskell

graphql-haskell

GraphQL AST and parser for Haskell.

morpheus-graphql

Haskell GraphQL Api, Client and Tools.

SQL

GraphpostgresQL

GraphQL for Postgres.

sql-to-graphql

Generate a GraphQL API based on your SQL database structure.

PostGraphile

Lightning-fast GraphQL APIs for PostgreSQL: highly customisable; extensible via plugins; realtime.

Hasura

Hasura gives Instant Realtime GraphQL APIs over PostgreSQL. Works with an existing database too.

subZero

GraphQL & REST API for your database

Lua

graphql-lua

GraphQL for Lua.

Elm

elm-graphql

GraphQL for Elm.

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.

Clojure Examples

Swift

GraphQL

The Swift implementation for GraphQL.

OCaml

ocaml-graphql-server

GraphQL servers in OCaml.

Android

apollo-android

📟 A strongly-typed, caching GraphQL client for Android, written in Java.

manifold-graphql

Comprehensive GraphQL client use. Schema-first. Type-safe GraphQL types, queries, and results, no code generators, no POJOs, no annotations. Excellent [IDE support](http://manifold.systems/images/graphql.mp4) with IntelliJ IDEA and Android Studio. See the [Java example](#example-java) below.

apollo-frontpage-android-app

📄 Apollo "hello world" app, for Android.

Android Examples

iOS

apollo-ios

📱 A strongly-typed, caching GraphQL client for iOS, written in Swift.

ApolloDeveloperKit

Apollo Client Devtools bridge for [Apollo iOS].

Graphaello

Type Safe GraphQL directly from SwiftUI.

frontpage-ios-app

📄 Apollo "hello world" app, for iOS.

iOS Examples

ClojureScript

re-graph

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

graphql-query

Clojure(Script) GraphQL query generation.

ReasonML

reason-apollo

ReasonML binding for Apollo Client.

ReasonQL

Type-safe and simple GraphQL Client for ReasonML developers.

reason-urql

ReasonML binding for urql Client.

Dart

graphql-flutter

A GraphQL client for Flutter.

Artemis

A GraphQL type and query generator for Dart/Flutter.

Rust

async-graphql

High-performance server-side library that supports all GraphQL specifications.

juniper

GraphQL server library for Rust.

graphql-client

GraphQL client library for Rust with WebAssembly (wasm) support.

graphql-parser

A parser, formatter and AST for the GraphQL query and schema definition language for Rust.

tailcall

A platform for building high-performance GraphQL backends.

Warp GraphQL Juniper
Tailcall

Rust Examples

D (dlang)

graphqld

GraphQL server library for D.

R (Rstat)

ghql

General purpose GraphQL R client.

graphql

Bindings to the 'libgraphqlparser' C++ library. Parses GraphQL syntax and exports the AST in JSON format.

gqlr

R GraphQL Implementation.

Julia

Diana.jl

A Julia GraphQL client/server implementation.

GraphQLClient.jl

A Julia GraphQL client for seamless integration with a server.

Crystal

graphql

GraphQL server library.

graphql-crystal

library inspired by [graphql-ruby](https://github.com/rmosolgo/graphql-ruby) & [go-graphql](https://github.com/playlyfe/go-graphql) & [graphql-parser](https://github.com/graphql-dotnet/parser).

crystal-gql

GraphQL client shard inspired by Apollo client.

graphql.cr

GraphQL shard.

Ballerina

graphql

Ballerina standard library for GraphQL. This library provides a GraphQL client and server implementations including builtin support for GraphQL subscriptions.

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.

Ballerina GraphQL Examples
Convert Weather REST API to GraphQL API

Ballerina Samples

Tools

Tools - Editors & IDEs & Explorers

GraphiQL

An in-browser IDE for exploring GraphQL.

GraphQL Editor

Visual Editor & GraphQL IDE.

GraphQL Voyager

Represent any GraphQL API as an interactive graph.

Altair GraphQL Client

A beautiful feature-rich GraphQL Client for all platforms.

Brangr

A unique, user-friendly data browser/viewer for any GraphQL service, with attractive result layouts.

Postman

An HTTP Client that supports editing GraphQL queries.

Bruno

Fast, open source API client, which stores collections offline-only in a Git-friendly plain text markup language.

Escape GraphMan

Generate a complete Postman collection from a GraphQL endpoint.

Apollo Sandbox

The quickest way to navigate and test your GraphQL endpoints.

AST Explorer

Select "GraphQL" at the top, explore the GraphQL AST and highlight different parts by clicking in the query.

Firecamp - GraphQL Playground

The fastest collaborative GraphQL playground.

CraftQL

A CLI tool to visualize GraphQL schemas and to output a graph data structure as a graphviz .dot format.

gqt

Build and execute GraphQL queries in the terminal.

Hackolade

Visual GraphQL schema editor to generate Schema Definition Language files without any knowledge of the GraphQL syntax. Also visualize and document existing endpoints with introspection. Additional info and instructions [here](https://hackolade.com/help/GraphQL.html)

Smart Formatter - GraphQL Query Formatter

A client-side, browser-only tool to format, beautify, and validate GraphQL queries and schemas instantly.

  • Insomnia - A full-featured API client with first-party GraphQL query editor.
  • GraphQL Birdseye – View any GraphQL schema as a dynamic and interactive graph.

Tools - Testing, Prototyping & Mocking

Beeceptor

A no-code platform for creating AI-powered **GraphQL Mock Servers** from your schema (SDL) with rules, stateful mocking, mutation/subscription, to speed up development and integration testing.

graphql-to-karate

**Generate Karate API tests** from your GraphQL schemas

GraphQL Faker

🎲 Mock or extend your GraphQL API with faked data. No coding required.

GraphQL Inspector

A tool to **validate schemas**, compare schema changes, find breaking changes, and check document coverage against a schema.

Microcks

The open source ([CNCF](https://www.cncf.io/projects/microcks/) project), cloud native tool for **API Mocking** and Testing with [GraphQL support](https://microcks.io/blog/graphql-features-what-to-expect/) 🎥 [GraphQL conf 2023](https://youtu.be/UjDnrrTp7uI?si=M6S4l_Bukp9CEYl4)

mockd

Multi-protocol mock server with GraphQL schema mocking, resolver configuration, and query validation. Also supports HTTP, gRPC, WebSocket, MQTT, and SOAP.

Keploy

Open-source AI Powered API testing tool that generates test cases and **data mocks automatically by recording real API traffic**. Supports GraphQL, REST, and gRPC.

Step CI

Open-Source API **Testing and Monitoring** with GraphQL support

Tools - Security

GraphCrawler - The all-in-one GraphQL Security toolkit

The all-in-one automated penetration tester toolkit for GraphQL, written in Python

Escape - The GraphQL Security Scanner

One-click security scan of your GraphQL endpoints. Free, no login required.

StackHawk - GraphQL Vulnerability Scanner

[StackHawk](https://www.stackhawk.com)

InQL Scanner

A Burp Extension for GraphQL Security Testing

WAF for graphQL

Web Application Firewall for graphQL APIs

GraphQL Intruder

Plugin based python script to perform GraphQL vulnerability assessment.

GraphQL Cop

Security Audit Utility for GraphQL

GraphQLer

Dependency-aware dynamic GraphQL testing tool

Vulert

Vulert secures software by detecting vulnerabilities in open-source dependencies—without accessing your code. It supports Js, PHP, Java, Python, and more

  • Escape Graphinder - GraphQL Subdomain Enumeration – Blazing fast GraphQL endpoints finder using subdomain enumeration, scripts analysis and bruteforce.
  • GraphQL Raider BurpSuite

Tools - Browser Extensions

Apollo Client Developer Tools

GraphQL debugging tools for Apollo Client in the Chrome developer console

GraphQL Network Inspector

A simple and clean chrome dev-tools extension for GraphQL network inspection.

Tools - Docs

graphdoc

Static page generator for documenting GraphQL Schema.

gqldoc

The easiest way to make API documents for GraphQL.

spectaql

Autogenerate static GraphQL API documentation.

graphql-markdown

Flexible documentation for GraphQL powered with Docusaurus.

xyd

Generate GraphQL API docs.

Tools - Editor Plugins

Apollo GraphQL VSCode Extension

Rich editor support for GraphQL client and server development that seamlessly integrates with the Apollo platform

js-graphql-intellij-plugin

GraphQL language support for IntelliJ IDEA and WebStorm, including Relay.QL tagged templates in JavaScript and TypeScript.

vim-graphql

A Vim plugin that provides GraphQL file detection and syntax highlighting.

graphql-autocomplete

Autocomplete and lint from a GraphQL endpoint in Atom.

Tools - Miscellaneous

graphql-code-generator

GraphQL code generator based on schema and documents.

swagger-to-graphql

GraphQL types builder based on REST API described in Swagger. Allows to migrate to GraphQL from REST for 5 minutes

ts-graphql-plugin

A language service plugin complete and validate GraphQL query in TypeScript template strings.

apollo-tracing

GraphQL extension that enables you to easily get resolver-level performance information as part of a GraphQL response.

json-graphql-server

Get a full fake GraphQL API with zero coding in less than 30 seconds, based on a JSON data file.

Prisma

Turn your database into a GraphQL API. Prisma lets you design your data model and have a production ready GraphQL API online in minutes.

Typetta

Node.js ORM written in TypeScript for type lovers. Typetta is the perfect ORM for the GraphQL + NodeJS + Typescript stack.

tuql

Automatically create a GraphQL server from any sqlite database.

Bit

Organize GraphQL API as components to be consumed with NPM or modified from any project, [example-explanation](https://hackernoon.com/make-your-graphql-api-easier-to-adopt-through-components-74b022f195c1)).

openapi-to-graphql

Take any OpenAPI Specification (OAS) or swagger and create a GraphQL interface - Two minute video and resources [here](https://developer.ibm.com/open/projects/openapi-to-graphql/)

dataloader-codegen

An opinionated JavaScript library for automatically generating predictable, type safe DataLoaders over a set of resources (e.g. HTTP endpoints).

microfiber

Query and manipulate GraphQL introspection query results in useful ways.

DronaHQ

Build internal tools, dashboards, admin panel on top of GraphQL data in minutes

Dynaboard

Generate low-code web apps from any GraphQL API using AI.

gqlhash

Lightning fast query hasher that ignores formatting diffs and comments and supports multiple hashing functions.

Apollo APQ Debugger

Reveal full GraphQL queries behind Apollo APQ hashes. Inspect fallback flow and debug Automatic Persisted Queries in DevTools.

  • Retool – Internal tools builder on top of your GraphQL APIs + GraphQL IDE with a schema explorer.
  • raphql-inspector: alidate schema, get schema change notifications, validate operations, find breaking changes, look for similar types, schema coverage.
  • amplication: Amplication is an open‑source low code development tool. It builds database applications with REST API and GraphQL for CRUD with relations, sorting, filtering, pagination.
  • Blendbase: Single open-source GraphQL API to connect CRMs to your SaaS. Query any customer CRM system (Salesforce, Hubspot and more) with a single API query from your SaaS app.

Databases

Cube

[Headless BI](https://cube.dev/blog/headless-bi) for building data applications with SQL, REST, and [GraphQL API](https://cube.dev/docs/backend/graphql). Connect any database or data warehouse and instantly get a GraphQL API with sub-second latency on top of it. - [Source Code](https://github.com/cube-js/cube.js)

Dgraph

Scalable, distributed, low latency, high throughput Graph database with GraphQL as the query language

EdgeDB

The next generation object-relational database with native GraphQL support.

ArangoDB

Native multi-model database with [GraphQL integration](https://www.arangodb.com/docs/3.4/foxx-reference-modules-graph-ql.html) via the built-in [Foxx Microservices Framework](https://www.arangodb.com/docs/stable/foxx.html).

Weaviate

Weaviate is a cloud-native, modular, real-time vector search engine with a [GraphQL interface](https://weaviate.io/developers/weaviate/api/graphql) built to scale your machine learning models.

Services

AWS AppSync

Scalable managed GraphQL service with subscriptions for building real-time and offline-first apps

Moesif API Analytics

A GraphQL analaytics and monitoring service to find functional and performance issues.

Booster framework

An open-source framework that makes you _completely_ forget about infrastructure and allows you to focus exclusively on your business logic. It autogenerates a GraphQL API for your models, supporting mutations, queries, and subscriptions.

Nhost

Open source Firebase alternative with GraphQL

Saleor

GraphQL-first headless e-commerce platform.

Stargate

Open source data gateway currently supporting Apache Cassandra® and DataStax Enterprise.

Vedika

Vedic astrology AI API with GraphQL support for horoscopes, birth charts, kundali matching, and 108+ endpoints.

Grafbase

Instant GraphQL APIs for any data source.

CDN

GraphCDN

GraphQL CDN for caching GraphQL APIs.

CMS

DatoCMS

CDN-based GraphQL based Headless Content Management System.

Apito

A Cloud Based Headless CMS with CDN, Webhooks, Team Collaborations, Content Revision, Cloud Functions.

Hygraph

Build Scalable Content Experiences.

Cosmic

GraphQL-powered Headless CMS and API toolkit.

Graphweaver

Turn multiple datasources into a single GraphQL API.

Books

The Road to GraphQL
  • The GraphQL Guide by John Resig and Loren Sands-Ramshaw
  • Craft GraphQL APIs in Elixir with Absinthe by Bruce Williams and Ben Wilson
  • Practical GraphQL by Daniel Schmitz
  • Production Ready GraphQL by Marc-André Giroux
  • Full Stack GraphQL Applications by William Lyon

Videos

GraphQL: The Documentary
Zero to GraphQL in 30 Minutes
Data fetching for React applications at Facebook
React Native & Relay: Bringing Modern Web Techniques to Mobile
Exploring GraphQL
Creating a GraphQL Server
GraphQL at The Financial Times
Relay: An Application Framework For React
Building and Deploying Relay with Facebook
Introduction to GraphQL
Exploring GraphQL@Scale
What's Next for Phoenix by Chris McCord
GraphQL with Nick Schrock
Build a GraphQL server for Node.js using PostgreSQL/MySQL
GraphQL server tutorial for Node.js with SQL, MongoDB and REST
JavaScript Air Episode 023: Transitioning from REST to GraphQL
GraphQL Future at react-europe 2016
GraphQL at Facebook at react-europe 2016
Building native mobile apps with GraphQL at react-europe 2016
Build a GraphQL Server
GraphQL Tutorial
Five years of GraphQL
GraphQL is for Everyone by Moon Highway

Podcasts

  • GraphQL.FM by Marc-Andre Giroux and Tony Ghita.

Style Guides

Shopify GraphQL Design Tutorial

This tutorial was originally created by Shopify for internal purposes. It's based on lessons learned from creating and evolving production schemas at Shopify over almost 3 years.

GitLab GraphQL API Style Guide

This document outlines the style guide for the GitLab GraphQL API.

Yelp GraphQL Guidelines

This repo contains documentation and guidelines for a standardized and mostly reasonable approach to GraphQL (at Yelp).

Principled GraphQL

Apollo's 10 GraphQL Principles, broken out into three categories, in a format inspired by the Twelve Factor App.

Blogs

Official GraphQL blog
Building Apollo
The Guild blog
Production Ready GraphQL blog

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.

9 GraphQL Security Best Practices
Discovering GraphQL Endpoints and SQLi Vulnerabilities
Securing GraphQL API
Security Points to Consider Before Implementing GraphQL
Authorization Patterns in GraphQL

Posts

GraphQL federation example with Apollo Federation and Apollo GraphOS
GraphQL federation with Hasura GraphQL Engine and Cube
Using DataLoader to batch GraphQL requests
Introducing Relay and GraphQL
GraphQL Introduction
Unofficial Relay FAQ
Your First GraphQL Server
GraphQL Overview - Getting Started with GraphQL and Node.js
4 Reasons you should try out GraphQL
Moving from REST to GraphQL
Writing a Basic API with GraphQL
Building a GraphQL Server with Node.js and SQL
GraphQL at The Financial Times
Implementing GraphQL RBAC Authorization: A Practical Guide
From REST to GraphQL
GraphQL: A data query language
Subscriptions in GraphQL and Relay
Relay 101: Building A Hacker News Client
GraphQL Schema Reference

Official documentation explaining GraphQL schema definition language and shorthand notation.

The GitHub GraphQL API
Github GraphQL API React Example
Testing a GraphQL Server using Jest
How to implement viewerCanSee in GraphQL
Preventing traversal attacks on your GraphQL API
Mock your GraphQL server realistically with faker.js
Create an infinite loading list with React and GraphQL
REST vs GraphQL
Authentication and Authorization for GraphQL APIs
Build a GraphQL API with Siler on top of Swoole
Fluent GraphQL clients: how to write queries like a boss
Level up your serverless game with a GraphQL data-as-a-service layer
A deep-dive into Relay, the friendly & opinionated GraphQL client
make your graphql api easier to adopt through components
Undocumented: keeping parts of your GraphQL schema hidden from introspection
GraphQL Subscriptions with Apache Kafka in Ballerina
How to Test your GraphQL Endpoints
Why Automatic Persisted Queries Don't Scale

Tutorials

How to GraphQL

Fullstack Tutorial Website with Tracks for all Major Frameworks & Languages including React, Apollo, Relay, JavaScript, Ruby, Java, Elixir and many more.

Apollo Odyssey

Apollo's free interactive learning platform.

learning-graphql

An attempt to learn GraphQL.

GraphQL Roadmap

Step by step guide to learn GraphQL.

OWASP GraphQL Security Cheat Sheet

Comprehensive guide for securing GraphQL endpoints and preventing vulnerabilities.