awesome-graphql
Awesome list of GraphQL
If you want to contribute to this list (please do), send me a pull request.
Table of Contents
- awesome-graphql
- Table of Contents
- Specifications
- Foundations
- Communities
- Meetups
- Implementations
- Tools
- Databases
- Services
- Books
- Videos
- Podcasts
- Style Guides
- Blogs
- Posts
- Tutorials
- License
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.
Clients
- 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
orTypeScript
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.
Frontend Framework Integrations
- 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
- 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
Servers
- 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.
Databases & ORMs
- 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.
PubSub
- graphql-ably-pubsub - Ably PubSub implementation for GraphQL to publish mutation updates and subscribe to the result through a subscription query.
Custom Scalars
- graphql-scalars - A library of custom GraphQL Scalars for creating precise type-safe GraphQL schemas.
Type
- type-graphql - Create GraphQL schema and resolvers with TypeScript, using classes and decorators!
- graphql-nexus - Code-First, Type-Safe, GraphQL Schema Construction.
- 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.
- 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.
- 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.
Miscellaneous
- 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.