DEV Community

Cover image for Replace Graphiql With Graphql Playground Using These Simple Steps
Sahil Jain
Sahil Jain

Posted on • Originally published at


Replace Graphiql With Graphql Playground Using These Simple Steps

Original Post Link =>

Graphiql is the default IDE for working with Graphql API in Gatsby. But Gatsby also support, newer and more featured IDE known as Graphql Playground. Graphql Playground provides us with additional features like a nice fully customizable UI interface, multiple tab options, detailed docs drawer, copy CURL option etc. These features makes building queries easy and fun.
So, lets see how we can swap Graphiql for Graphql Playground.

Steps To Replace Graphiql To Graphql Playground:

1) Install dotenv dependency

For replacing the IDE we need to declare an environment variable and for that environment variable to load in process.env we need to use an dotenv package. You can install it by running this command.

npm install dotenv
Enter fullscreen mode Exit fullscreen mode

2) Define the environment variable

For gatsby to know that we want to use Graphql Playground we need to define an environment variable GATSBY_GRAPHQL_IDE=playground. We can define this variable in an .env file. Its a best practice to seperate environment variables for development and production. So, we can define the env files in our root folder like this .env.development and .env.production.

├── node_modules
├── public
├── src
├── static
├── .env.development
├── .env.production
Enter fullscreen mode Exit fullscreen mode

Now, In the .env.development file define this key value pair.

Enter fullscreen mode Exit fullscreen mode

3) Update gatsby-config.js

Inside your gatsby-config.js file at the very top require the dotenv plugin and provide the path to the appropriate .env file.

  path: `.env.${process.env.NODE_ENV}`,

module.exports = {
  siteMetadata: {
Enter fullscreen mode Exit fullscreen mode

Now when you run gatby develop. it will set the NODE_ENV to development, and the dotenv package will load the environment variables defined in .env.development file.

Finally, go to http://localhost:8000/___graphql and use the newer and nicer Graphql Playground IDE.

Original Post Link =>

Top comments (0)

An Animated Guide to Node.js Event Loop

Node.js doesn’t stop from running other operations because of Libuv, a C++ library responsible for the event loop and asynchronously handling tasks such as network requests, DNS resolution, file system operations, data encryption, etc.

What happens under the hood when Node.js works on tasks such as database queries? We will explore it by following this piece of code step by step.