GraphQL is often heralded as the replacement of REST. Internally developed by Facebook and released to the general public in 2015, GraphQL is a query language that's more flexible and richer than REST.
GraphQL unifies data that would otherwise exist in multiple endpoints and creates packages to reduce the number of roundtrips you need to make. It also has a very sophisticated typing system that allows for specific queries, which alleviates the problems that come with over- and under-fetching.
If your resources are complex and relational, GraphQL acts as a better alternative to REST. This is reflected in its popularity: in the state of JavaScript, of all JavaScript data layers, GraphQL is the second-most adopted, after Redux, with a staggering 62.5% of developers eager to learn the query language. Although this represents the popularity of GraphQL in only one programming language, it's nonetheless a strong indication of its broader popularity.
As such, tools have been developed that make working with GraphQL easier. This is a list of the most popular GraphQL tools, as ranked by GitHub stars.
(Not taking into account the GraphQL server and client libraries for the many different programming languages, which you can find here)
GraphiQL (8.1K⭐)
GraphiQL is an in-browser IDE perfect for testing and documenting GraphQL APIs. It uses a React component to render the GraphiQL editor.
GraphiQL allows for syntax highlighting, intelligent type ahead of fields, arguments, and types, real-time error highlighting and reporting, and automatic query completion.
Alternatives to GraphiQL are GraphQL Playground (4.2K⭐) and Altair (1.1K⭐).
GraphQL Visual Editor (3.4K⭐)
The GraphQL Visual Editor makes it easy to understand any GraphQL schema. You can plan out the relations between your resources and draw them out. The editor will then transform them into code.
You don't need GraphQL knowledge to start using the editor. Have a look at some of their examples here.
Tipe (1.9K⭐)
Tipe is an API-first CMS built from a GraphQL schema, although it's possible to access your data through a REST API too.
Tipe has an inline editor and allows for offline prototyping, so you can work locally while Tipe generates mock content for your API.
GraphDoc (705⭐)
GraphDoc is a static page generator for documenting a GraphQL schema. Have a look at their Star Wars, GitHub, Shopify, and Pokemon examples.
If you set GraphDoc up correctly, it will give you an up-to-date link that helps people figure out what data is available and how they can query that data.
Hygraph (independent software)
Hygraph is a headless GraphQL CMS that makes it easy to build a GraphQL backend, while also providing tools for content creators to create and manage their content.
It comes with image processing, webhooks, multi-project management, and more. The community plan is free, while prices for more advanced use of the software range from $299 a month to $799+ a month.
What are your favorite GraphQL tools? And your favorite GraphQL implementations? Let us know in the comments below.