Awesome list of GraphQL & Relay
Latest commit db3c5c9 Jan 11, 2017 @chentsulin committed on GitHub Update README.md

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.

Community

Libraries

JavaScript Libraries

  • 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.
  • codemirror-graphql - GraphQL mode and helpers for CodeMirror.
  • graphql-schema - Create GraphQL schemas with a fluent/chainable interface.
  • graphql-sequelize - Sequelize helpers for GraphQL.
  • graffiti - Node.js GraphQL ORM.
  • graffiti-mongoose - Mongoose (MongoDB) adapter for graffiti (Node.js GraphQL ORM).
  • 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.
  • react-reach - A library to communicate with Graphql through Redux
  • Lokka - Simple JavaScript client for GraphQL, which you can use anywhere.
  • 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.
  • FetchQL - GraphQL query client with Fetch
  • Join Monster - A GraphQL-to-SQL query execution layer for batch data fetching.
  • graphql-factory - Create GraphQL types from JSON definitions
Relay Related
  • relay - Relay is a JavaScript framework for building data-driven React applications.
  • graphql-relay-js - A library to help construct a graphql-js server supporting react-relay.
  • sequelize-relay - Serverside library that connects sequelize and graphql-relay-js together.
  • babel-plugin-react-relay - Babel Plugin for Relay with support for JSON & graphql-js schemas and URL endpoints.
  • babel-relay-plugin - Babel Relay Plugin for transpiling GraphQL queries for use with Relay.
  • react-router-relay - Relay integration for React Router.
  • relay-local-schema - Use Relay without a GraphQL server.
  • relay-sink - Use Relay to fetch and store data outside of a React component.
  • recompose-relay - Recompose helpers for Relay.
  • Graylay - A GraysQL extension to create a Relay compatible Schema.
  • Apollo Client - A simple alternative to Relay, integrates with Redux and comes with React and Angular bindings.
  • react-relay-network-layer - A network layer for Relay with query batching and middleware support (urlThunk, retryThunk, auth, defer and other).
  • relay-subscriptions - Subscription support for Relay.
  • Portfolio Relay Example - An example website that fetches data from various apis and uses Relay and GraphQL to feed the data to React components!

Ruby Libraries

  • graphql-ruby - Ruby implementation of Facebook's GraphQL.
  • graphql-relay-ruby - Relay helpers for GraphQL & Ruby.
  • graphql-parser - A small ruby gem wrapping the libgraphqlparser C library for parsing 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

C/C++ Libraries

Go Libraries

  • graphql - An implementation of GraphQL for Go follows graphql-js
  • graphql-relay-go - A Go/Golang library to help construct a server supporting react-relay.
  • graphql - GraphQL parser and server for Go.
  • c-graphqlparser - Go-gettable version of the libgraphqlparser C library for parsing GraphQL.
  • tallstreet-graphql - GraphQL parser and server for Go that leverages libgraphqlparser
  • go-graphql - A powerful GraphQL server implementation for Golang

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

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
  • Relay Playground
  • 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 IDE - An extensive IDE for exploring GraphQL API's.

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.
  • Scaphold - GraphQL as a service that includes API integrations such as Stripe and Mailgun.

Examples

JavaScript Examples

TypeScript Examples

Ruby Examples

Go Examples

Scala Examples

Python Examples

Elixir Examples

Videos

Blogs

Posts

Workshoppers

License

CC0

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