Awesome list of GraphQL & Relay
Branch: master
Clone or download
kamilkisiela and TreTuna GraphQL Inspector (#435)
[GraphQL Inspector - website](https://graphql-inspector.com)

Prevent breaking changes. Find broken operations. Get Schema Coverage. Check deprecated usage and type duplicates. All as part of your CI process.

GraphQL Inspector is a Github App but could be used as a Github Action or might be self-hosted.
Latest commit 7f81ff3 Jan 31, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Move pull_request_template.md to .github folder Oct 18, 2016
.travis.yml Fix CI issues (#416) Dec 17, 2018
README.md GraphQL Inspector (#435) Jan 31, 2019
contributing.md add contributing.md Jul 13, 2015

README.md

awesome-graphql Awesome

Awesome list of GraphQL & Relay

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

Table of Contents

Specification

  • facebook/graphql - Working Draft of the Specification for GraphQL created by Facebook.

Foundation

Community

GraphQL Meetups

Libraries

JavaScript Libraries

Clients

  • relay - Relay is a JavaScript framework for building data-driven React applications.
  • Apollo Client - A well-documented GraphQL client. Has React and Angular bindings.
  • aws-amplify - A client library developed by Amazon for caching, analytics and more that includes a way to fetch GraphQL queries.
  • graphql-request - A minimal GraphQL client for Node and browsers.
  • FetchQL - A simple GraphQL query client using Fetch.
  • urql - A simple caching GraphQL client for React.
  • 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.
  • Lokka - Simple JavaScript client for GraphQL, which you can use anywhere.
  • react-reach - A library to communicate with Graphql through Redux.
  • Grafoo - A tiny yet fully fledged cache based GraphQL client

Miscellaneous

  • GraphQL.js - A reference implementation of GraphQL for JavaScript.
  • express-graphql - GraphQL Express Middleware.
  • koa-graphql - GraphQL Koa Middleware.
  • hapi-graphql - Create a GraphQL HTTP server with Hapi.
  • hapi-plugin-graphiql - HAPI plugin for GraphiQL integration.
  • codemirror-graphql - GraphQL mode and helpers for CodeMirror.
  • graphql-schema - Create GraphQL schemas with a fluent/chainable interface.
  • graphql-sequelize - Sequelize helpers for GraphQL.
  • graphql-tools-sequelize - OO-style schema definition functions and schema resolver functions for GraphQL-Tools using Sequelize ORM
  • graphql-tools-types - Custom GraphQL types for use with GraphQL-Tools (Void, Int, Float, String, Date, UUID, JSON)
  • graphql-normalizr - Normalize GraphQL responses for persisting in the client cache/state
  • babel-plugin-graphql - Babel plugin that compile GraphQL tagged template strings.
  • adrenaline - React bindings for Redux with Relay in mind.
  • graphql-bookshelf - Some help defining GraphQL schema around BookshelfJS models.
  • graph.ql - Faster and simpler technique for creating and querying GraphQL schemas.
  • Strapi - Open-source Node.js framework that supports "GraphQL" out of the box.
  • GraysQL - A GraphQL manager and loader.
  • graysql-orm-loader - A GraysQL extension to load a GraphQL schema from an ORM.
  • Annotated GraphQL - Proof of Concept for annotations in GraphQL (i.e.: transform an existing REST api into a GraphQL endpoint).
  • Apollo Client - A well-documented GraphQL client that integrates with Redux. Has React and Angular bindings.
  • graphql-tools - Tool library for building and maintaining GraphQL-JS servers.
  • graphql-anywhere - Run a GraphQL query anywhere, against any data, with no schema.
  • graphql-tag - A JavaScript template literal tag that parses GraphQL queries.
  • modelizr - A library for simplifying the process of writing GraphQL queries, mocking them and normalizing their responses.
  • vue-apollo - Vue integration for apollo.
  • graphql-thinky - Build an optimized GraphQL schema from Thinky RethinkDB models.
  • graphql-pouch - A GraphQL-API runtime on top of PouchDB created by GraphQL shorthand notation as a self contained service with CouchDB synchronization.
  • gql-tools - Tool library with CLI for schema generation and manipulation.
  • graphql-iso-date - A GraphQL date scalar type to be used with GraphQL.js. This scalar represents a date in the ISO 8601 format YYYY-MM-DD.
  • graphql-compose - Tool which allows you to construct flexible graphql schema from different data sources via plugins.
  • node-graphjoiner - Create GraphQL APIs using joins, SQL or otherwise.
  • Join Monster - A GraphQL-to-SQL query execution layer for batch data fetching.
  • graphql-factory - Create GraphQL types from JSON definitions
  • type-o-rama - JS type systems interportability.
  • GRelDAL - A simple micro-framework for bidirectional mapping between relational datastores and GraphQL APIs.

Relay Related

Ruby Libraries

  • graphql-ruby - Ruby implementation of Facebook's GraphQL.
  • graphql-client - A Ruby library for declaring, composing and executing GraphQL queries.
  • graphql-batch - A query batching executor for the graphql gem.

PHP Libraries

Python Libraries

Java Libraries

  • graphql-java - GraphQL Java implementation.
  • 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 for JS.
  • graphql-java-servlet - A framework-agnostic java servlet for exposing graphql-java query endpoints with GET, POST, and multipart uploads.
  • 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
  • Light Java GraphQL: A lightweight, fast microservices framework with all cross-cutting concerns addressed and ready to plug in GraphQL schema.

C/C++ Libraries

Go Libraries

Scala Libraries

.NET Libraries

Elixir Libraries

Haskell Libraries

SQL Libraries

Lua Libraries

Elm Libraries

Clojure Libraries

  • graphql-clj - A Clojure library designed to provide GraphQL implementation.

Swift Libraries

  • GraphQL - The Swift implementation for GraphQL.

OCaml Libraries

Android Libraries

  • apollo-android - 📟 A strongly-typed, caching GraphQL client for Android, written in Java

iOS Libraries

  • apollo-ios - 📱 A strongly-typed, caching GraphQL client for iOS, written in Swift

Tools

  • graphiql - An in-browser IDE for exploring GraphQL.
  • GraphiQL.app - A light, Electron-based wrapper around GraphiQL.
  • GraphQLviz - GraphQLviz marries GraphQL (schemas) with Graphviz.
  • graphqlviz - GraphQL API visualizer in Node.js
  • GraphQL AST Explorer - Explore the AST of a GraphQL document interactively
  • GraphQLHub - Query public API's schemas (e.g. Reddit, Twitter, Github, etc) using GraphiQL
  • js-graphql-intellij-plugin - GraphQL language support for IntelliJ IDEA and WebStorm, including Relay.QL tagged templates in JavaScript and TypeScript.
  • gdom - DOM Traversing and Scraping using GraphQL.
  • Annotated GraphQL Server - Server for annotated GraphQL showing how to transform a REST api into a GraphQL endpoint with annotations.
  • Model Visualizer - A small webapp that generates an ERD-like visualization of a GraphQL endpoint from an introspection query.
  • GraphQL Network - A chrome dev-tools extension for debugging GraphQL network requests.
  • eslint-plugin-graphql - An ESLint plugin that checks your GraphQL strings against a schema.
  • AST Explorer - Select "GraphQL" at the top, explore the GraphQL AST and highlight different parts by clicking in the query.
  • vim-graphql - A Vim plugin that provides GraphQL file detection and syntax highlighting.
  • GraphQL CMS - Use your existing GraphQL schema to generate simple for use, fully functional CMS in a couple steps.
  • graphdoc - Static page generator for documenting GraphQL Schema.
  • graphql-autocomplete - Autocomplete and lint from a GraphQL endpoint in Atom.
  • GraphQL Code Generator - GraphQL code generator based on schema and documents.
  • GraphQL IDE - An extensive IDE for exploring GraphQL API's.
  • Swagger to GraphQL - GraphQL types builder based on REST API described in Swagger. Allows to migrate to GraphQL from REST for 5 minutes
  • GraphQL Voyager - Represent any GraphQL API as an interactive graph.
  • GraphQL Docs - Instantly create beautiful GraphQL API docs hosted online.
  • GraphQL Faker - 🎲 Mock or extend your GraphQL API with faked data. No coding required.
  • ts-graphql-plugin - A language service plugin complete and validate GraphQL query in TypeScript template strings.
  • Apollo Launchpad - Like JSFiddle for GraphQL server code, write and deploy a GraphQL API directly from your browser.
  • Apollo Tracing - GraphQL extension that enables you to easily get resolver-level performance information as part of a GraphQL response.
  • Altair GraphQL Client - A beautiful feature-rich GraphQL Client for all platforms.
  • Apollo Storybook Decorator - Wrap your React Storybook stories with Apollo Client, provide mocks for isolated UI testing with GraphQL
  • GraphQL Metrics - instrument GraphQL resolvers, logging response times and statuses (if there was an error or not) to the console as well as to InfluxDB.
  • GraphQL Rover - GraphQL schema interactive navigation, rearrange nodes, search and explore types and fields.
  • json-graphql-server - Get a full fake GraphQL API with zero coding in less than 30 seconds, based on a JSON data file.
  • Insomnia – An full-featured API client with first-party GraphQL query editor
  • 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.
  • 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).
  • RAN Toolkit - Production-ready toolkit/boilerplate with support for GraphQL, SSR, Hot-reload, CSS-in-JS, caching, and more.
  • Apollo GraphQL VSCode Extension - Rich editor support for GraphQL client and server development that seamlessly integrates with the Apollo platform
  • GRAPHQL DESIGNER - A developer's web-app tool to rapidly prototype a full stack CRUD implementation of GraphQL with React.
  • GraphQL Inspector - Tooling for GraphQL. Compare schemas, validate documents, find breaking changes, find similar types, schema coverage.

Databases

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

Services

  • GraphCMS - GraphQL based Headless Content Management System.
  • Graphcool - Your own GraphQL backend in under 5 minutes. Works with every GraphQL client such as Relay and Apollo.
  • Reindex - Instant GraphQL Backend for Your React Apps.

Examples

JavaScript Examples

TypeScript Examples

Ruby Examples

Go Examples

Scala Examples

Python Examples

Elixir Examples

Java Examples

Android Examples

iOS Examples

Videos

Blogs

Posts

Workshoppers

  • GraphQL of Thrones - Total beginner tutorial focused on just GraphQL without all the tooling. Alternates between LEARN and PLAY modes roleplaying as Game of Thrones characters.
  • How to GraphQL - Fullstack Tutorial Website with Tracks for all Major Frameworks & Languages including React, Apollo, Relay, JavaScript, Ruby, Java, Elixir and many more
  • learning-graphql - An attempt to learn GraphQL.
  • Let's Learn GraphQL - Lessons/walkthrough of GraphQL concepts.

License

CC0

To the extent possible under law, Chen-Tsu Lin has waived all copyright and related or neighboring rights to this work.