Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

graphiql v3 blog #1308

Draft
wants to merge 22 commits into
base: master
Choose a base branch
from
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 15 additions & 1 deletion .vale/styles/Vocab/Blog/accept.txt
Original file line number Diff line number Diff line change
Expand Up @@ -15,4 +15,18 @@ prisma
params
Todo
Baz
Hasura
Hasura

ESLint
CodeMirror
npm
monorepo
pnpm
jsx
Vite
unstyled
configs
monaco
GraphiQL
dimitri
GraphQL
10 changes: 10 additions & 0 deletions website/blogs.json
Original file line number Diff line number Diff line change
@@ -1,4 +1,14 @@
[
{
"title": "GraphiQL 3 Is Here and GraphiQL 4 Is Coming",
"description": "GraphiQL 3 was released, here is what was changed and what will be in GraphiQL 4.",
"tags": ["graphql", "react", "graphiql"],
"authors": ["dimitri"],
"link": "/blog/graphiql-3",
"image": "/blog-assets/graphiql-3/cover.png",
"date": "2023-07-01",
"thumbnail": "/blog-assets/graphiql-3/thumbnail.png"
},
{
"title": "The complete GraphQL Scalar Guide",
"description": "Knowing how native and custom GraphQL Scalar works enables building flexible and extendable GraphQL schema.",
Expand Down
Binary file added website/pages/blog/graphiql-3/img.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added website/pages/blog/graphiql-3/img_1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added website/pages/blog/graphiql-3/img_2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added website/pages/blog/graphiql-3/img_3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added website/pages/blog/graphiql-3/img_4.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
212 changes: 212 additions & 0 deletions website/pages/blog/graphiql-3/index.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,212 @@
---
title: GraphiQL 3 Is Here and GraphiQL 4 Is Coming
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would change the title to something that also gives information about the content
maybe like "GraphiQL v3 is here - React 18, better codebase, balblabla, and you can try v4 alpha with Monaco editor!"

tags: [graphql, react, graphiql]

Check failure on line 3 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L3

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 3, "column": 8}}}, "severity": "ERROR"}

Check failure on line 3 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L3

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 3, "column": 24}}}, "severity": "ERROR"}
authors: dimitri
date: 2023-07-01
description: GraphiQL 3 was released, here is what was changed and what will be in GraphiQL 4.

Check warning on line 6 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L6

[write-good.Passive] 'was released' may be passive voice. Use active voice if you can.
Raw output
{"message": "[write-good.Passive] 'was released' may be passive voice. Use active voice if you can.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 6, "column": 25}}}, "severity": "WARNING"}

Check warning on line 6 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L6

[write-good.Passive] 'was changed' may be passive voice. Use active voice if you can.
Raw output
{"message": "[write-good.Passive] 'was changed' may be passive voice. Use active voice if you can.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 6, "column": 52}}}, "severity": "WARNING"}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same here, more information about the content

image: /blog-assets/graphiql-3/cover.png

Check failure on line 7 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L7

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 7, "column": 21}}}, "severity": "ERROR"}
thumbnail: /blog-assets/graphiql-3/thumbnail.png

Check failure on line 8 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L8

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 8, "column": 25}}}, "severity": "ERROR"}
---

import { Anchor } from '@theguild/components'

## Intro

10 months ago
[GraphiQL 2 was released](https://github.com/graphql/graphiql/releases/tag/graphiql%402.0.0) with a

Check warning on line 16 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L16

[write-good.Passive] 'was released' may be passive voice. Use active voice if you can.
Raw output
{"message": "[write-good.Passive] 'was released' may be passive voice. Use active voice if you can.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 16, "column": 13}}}, "severity": "WARNING"}

Check failure on line 16 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L16

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 16, "column": 46}}}, "severity": "ERROR"}

Check failure on line 16 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L16

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 16, "column": 54}}}, "severity": "ERROR"}

Check failure on line 16 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L16

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 16, "column": 76}}}, "severity": "ERROR"}
completely new design and new components library named

Check warning on line 17 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L17

[write-good.Weasel] 'completely' is a weasel word!
Raw output
{"message": "[write-good.Weasel] 'completely' is a weasel word!", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 17, "column": 1}}}, "severity": "WARNING"}
[`@graphiql/react`](https://github.com/graphql/graphiql/tree/main/packages/graphiql-react).

Check failure on line 18 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L18

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 18, "column": 4}}}, "severity": "ERROR"}

Check failure on line 18 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L18

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 18, "column": 40}}}, "severity": "ERROR"}

Check failure on line 18 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L18

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 18, "column": 48}}}, "severity": "ERROR"}

Check failure on line 18 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L18

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 18, "column": 76}}}, "severity": "ERROR"}

Unfortunately previously planned in the [roadmap](https://github.com/graphql/graphiql/issues/2328)

Check warning on line 20 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L20

[write-good.Weasel] 'Unfortunately' is a weasel word!
Raw output
{"message": "[write-good.Weasel] 'Unfortunately' is a weasel word!", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 20, "column": 1}}}, "severity": "WARNING"}

Check warning on line 20 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L20

[write-good.TooWordy] 'previously' is too wordy.
Raw output
{"message": "[write-good.TooWordy] 'previously' is too wordy.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 20, "column": 15}}}, "severity": "WARNING"}

Check warning on line 20 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L20

[write-good.Weasel] 'previously' is a weasel word!
Raw output
{"message": "[write-good.Weasel] 'previously' is a weasel word!", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 20, "column": 15}}}, "severity": "WARNING"}

Check failure on line 20 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L20

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 20, "column": 70}}}, "severity": "ERROR"}

Check failure on line 20 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L20

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 20, "column": 78}}}, "severity": "ERROR"}
most-waited features as integration [monaco-editor](https://github.com/microsoft/monaco-editor) and
new docs explorer (aka Query Builder) were not introduced.

After months and months, no progress was made, and I was called to join forces and help the

Check warning on line 24 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L24

[write-good.Passive] 'was made' may be passive voice. Use active voice if you can.
Raw output
{"message": "[write-good.Passive] 'was made' may be passive voice. Use active voice if you can.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 24, "column": 38}}}, "severity": "WARNING"}

Check warning on line 24 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L24

[write-good.Passive] 'was called' may be passive voice. Use active voice if you can.
Raw output
{"message": "[write-good.Passive] 'was called' may be passive voice. Use active voice if you can.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 24, "column": 54}}}, "severity": "WARNING"}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would make it a bit nicer maybe
Maybe say that you decided to join the team and push all the things on the roadmap

community.

<Callout type="info">
**About me:** I am Dimitri POSTOLOV, software engineer from The Guild. You may know me as a

Check failure on line 28 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L28

[Vale.Terms] Use 'dimitri' instead of 'Dimitri'.
Raw output
{"message": "[Vale.Terms] Use 'dimitri' instead of 'Dimitri'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 28, "column": 22}}}, "severity": "ERROR"}
maintainer of [GraphQL-ESLint](https://the-guild.dev/graphql/eslint/docs) and

Check failure on line 29 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L29

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 29, "column": 56}}}, "severity": "ERROR"}

Check failure on line 29 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L29

[Vale.Terms] Use 'ESLint' instead of 'eslint'.
Raw output
{"message": "[Vale.Terms] Use 'ESLint' instead of 'eslint'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 29, "column": 64}}}, "severity": "ERROR"}
[Nextra](https://nextra.site).
</Callout>

## How I Started Maintaining Library

### Put Out the Lights on the Christmas Tree 🎄

When I started to maintain GraphiQL the first thing first was ESLint improvements, because ESLint
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

maybe add something like that you need good tools and order for good long term maintenance, which is what The Guild is known for

output contained a lot of warnings. The below comment from some issue is a perfect allegory that
names it `flashing like a Christmas tree` 😅.

{/* prettier-ignore */}
<Anchor
href="https://github.com/graphql/graphiql/issues/2169#issue-1139208125" className="mt-6 block"

Check failure on line 43 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L43

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 43, "column": 28}}}, "severity": "ERROR"}

Check failure on line 43 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L43

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 43, "column": 36}}}, "severity": "ERROR"}
>![Comment of weird developer experience with a lot of warnings in ESLint
output](./img_1.png)</Anchor>

So I proposed to extend various ESLint plugins' `recommended` configs.

Check failure on line 47 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L47

[write-good.So] Don't start a sentence with 'So '.
Raw output
{"message": "[write-good.So] Don't start a sentence with 'So '.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 47, "column": 1}}}, "severity": "ERROR"}

{/* prettier-ignore */}
<Anchor
href="https://github.com/graphql/graphiql/issues/2894#issue-1445996198" className="mt-6 block"

Check failure on line 51 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L51

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 51, "column": 28}}}, "severity": "ERROR"}

Check failure on line 51 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L51

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 51, "column": 36}}}, "severity": "ERROR"}
>![Comment on my proposal of improving ESLint config](./img.png)</Anchor>

### Replacing Deprecated Reach UI ⚠️

GraphiQL 2 was released with [Reach UI](https://reach.tech) unstyled a11y-first components library.

Check warning on line 56 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L56

[write-good.Passive] 'was released' may be passive voice. Use active voice if you can.
Raw output
{"message": "[write-good.Passive] 'was released' may be passive voice. Use active voice if you can.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 56, "column": 12}}}, "severity": "WARNING"}
Unfortunately, after some months of releasing GraphiQL 2, Reach UI was marked as deprecated, no

Check warning on line 57 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L57

[write-good.Weasel] 'Unfortunately' is a weasel word!
Raw output
{"message": "[write-good.Weasel] 'Unfortunately' is a weasel word!", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 57, "column": 1}}}, "severity": "WARNING"}

Check warning on line 57 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L57

[write-good.Passive] 'was marked' may be passive voice. Use active voice if you can.
Raw output
{"message": "[write-good.Passive] 'was marked' may be passive voice. Use active voice if you can.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 57, "column": 68}}}, "severity": "WARNING"}
longer maintained and still doesn't have the official support of React 18. So community started to

Check failure on line 58 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L58

[write-good.So] Don't start a sentence with 'So '.
Raw output
{"message": "[write-good.So] Don't start a sentence with 'So '.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 58, "column": 76}}}, "severity": "ERROR"}
receive warnings while installing GraphiQL 2.

```ansi filename="Terminal" copy=false
├─┬ graphiql 2.4.7

Check failure on line 62 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L62

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 62, "column": 5}}}, "severity": "ERROR"}
│ └─┬ @graphiql/react 0.17.6

Check failure on line 63 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L63

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 63, "column": 8}}}, "severity": "ERROR"}
│ ├─┬ @reach/combobox 0.17.0
│ │ ├── ✕ unmet peer react@"^16.8.0 || 17.x": found 18.2.0
│ │ ├── ✕ unmet peer react-dom@"^16.8.0 || 17.x": found 18.2.0
│ │ ├─┬ @reach/auto-id 0.17.0
│ │ │ ├── ✕ unmet peer react@"^16.8.0 || 17.x": found 18.2.0
│ │ │ ├── ✕ unmet peer react-dom@"^16.8.0 || 17.x": found 18.2.0
│ │ │ └─┬ @reach/utils 0.17.0
│ │ │ ├── ✕ unmet peer react@"^16.8.0 || 17.x": found 18.2.0
│ │ │ └── ✕ unmet peer react-dom@"^16.8.0 || 17.x": found 18.2.0
│ │ ├─┬ @reach/descendants 0.17.0
│ │ │ ├── ✕ unmet peer react@"^16.8.0 || 17.x": found 18.2.0
│ │ │ └── ✕ unmet peer react-dom@"^16.8.0 || 17.x": found 18.2.0
...a long list of warnings
```

### Deep Dive into GraphiQL 🌊

Check warning on line 80 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L80

[alex.ProfanityUnlikely] Be careful with 'Dive', it’s profane in some cases.
Raw output
{"message": "[alex.ProfanityUnlikely] Be careful with 'Dive', it’s profane in some cases.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 80, "column": 10}}}, "severity": "WARNING"}

When I come to a new project I always start by reading most of each file in the codebase, trying to
improve something, by enabling new ESLint rules or without.

Then trying to reproduce active issues and fix them, note some things that I can improve in the
project in general. Below is a list of various improvements that were made by me:

Check warning on line 86 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L86

[write-good.Passive] 'were made' may be passive voice. Use active voice if you can.
Raw output
{"message": "[write-good.Passive] 'were made' may be passive voice. Use active voice if you can.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 86, "column": 66}}}, "severity": "WARNING"}

1. Updated Cypress to v12 from v4 [#2893](https://github.com/graphql/graphiql/pull/2893).

Check failure on line 88 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L88

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 88, "column": 62}}}, "severity": "ERROR"}

Check failure on line 88 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L88

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 88, "column": 70}}}, "severity": "ERROR"}

1. Avoid unnecessary renders component's tree with
[`eslint-plugin-react-usememo`](https://github.com/arthurgeron/eslint-plugin-react-usememo)

Check failure on line 91 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L91

[Vale.Terms] Use 'ESLint' instead of 'eslint'.
Raw output
{"message": "[Vale.Terms] Use 'ESLint' instead of 'eslint'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 91, "column": 6}}}, "severity": "ERROR"}

Check failure on line 91 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L91

[Vale.Terms] Use 'ESLint' instead of 'eslint'.
Raw output
{"message": "[Vale.Terms] Use 'ESLint' instead of 'eslint'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 91, "column": 67}}}, "severity": "ERROR"}
[#3124](https://github.com/graphql/graphiql/pull/3124).

Check failure on line 92 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L92

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 92, "column": 31}}}, "severity": "ERROR"}

Check failure on line 92 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L92

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 92, "column": 39}}}, "severity": "ERROR"}

1. Updated all examples to use React 18 [#3185](https://github.com/graphql/graphiql/pull/3185).

Check failure on line 94 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L94

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 94, "column": 68}}}, "severity": "ERROR"}

Check failure on line 94 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L94

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 94, "column": 76}}}, "severity": "ERROR"}

1. Excluded `"dependencies"` from bundle for `@graphiql/react`, `@graphiql/plugin-explorer` and

Check failure on line 96 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L96

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 96, "column": 48}}}, "severity": "ERROR"}

Check failure on line 96 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L96

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 96, "column": 67}}}, "severity": "ERROR"}
`@graphiql/plugin-code-exporter` [#3229](https://github.com/graphql/graphiql/pull/3228) and

Check failure on line 97 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L97

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 97, "column": 6}}}, "severity": "ERROR"}

Check failure on line 97 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L97

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 97, "column": 64}}}, "severity": "ERROR"}

Check failure on line 97 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L97

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 97, "column": 72}}}, "severity": "ERROR"}
[PR](https://github.com/graphql/graphiql/pull/3229).

Check failure on line 98 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L98

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 98, "column": 28}}}, "severity": "ERROR"}

Check failure on line 98 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L98

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 98, "column": 36}}}, "severity": "ERROR"}

1. Removed unnecessary `<div />` wrappers [#3235](https://github.com/graphql/graphiql/pull/3235).

Check failure on line 100 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L100

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 100, "column": 70}}}, "severity": "ERROR"}

Check failure on line 100 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L100

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 100, "column": 78}}}, "severity": "ERROR"}

1. Simplified Next.js and Vite examples with `monaco-graphql`

Check failure on line 102 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L102

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 102, "column": 54}}}, "severity": "ERROR"}
[#3140](https://github.com/graphql/graphiql/pull/3140) and

Check failure on line 103 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L103

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 103, "column": 31}}}, "severity": "ERROR"}

Check failure on line 103 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L103

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 103, "column": 39}}}, "severity": "ERROR"}
[#3281](https://github.com/graphql/graphiql/pull/3281).

Check failure on line 104 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L104

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 104, "column": 31}}}, "severity": "ERROR"}

Check failure on line 104 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L104

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 104, "column": 39}}}, "severity": "ERROR"}

1. And
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would add here a number of over 150 PRs

[more...](https://github.com/graphql/graphiql/pulls?q=is%3Apr+sort%3Aupdated-desc+author%3AB2o5T+is%3Aclosed)

Check failure on line 107 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L107

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 107, "column": 33}}}, "severity": "ERROR"}

Check failure on line 107 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L107

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 107, "column": 41}}}, "severity": "ERROR"}

## GraphiQL 3

Integration of `monaco-editor` and `monaco-graphql` always was a top priority, since I started

Check failure on line 111 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L111

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 111, "column": 44}}}, "severity": "ERROR"}
maintaining this monorepo, but to achieve it, a stable release should be released first ☝️.

Check warning on line 112 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L112

[write-good.Passive] 'be released' may be passive voice. Use active voice if you can.
Raw output
{"message": "[write-good.Passive] 'be released' may be passive voice. Use active voice if you can.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 112, "column": 71}}}, "severity": "WARNING"}

So I decided to propose to release GraphiQL 3 without Reach UI and replace him with maintained

Check failure on line 114 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L114

[write-good.So] Don't start a sentence with 'So '.
Raw output
{"message": "[write-good.So] Don't start a sentence with 'So '.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 114, "column": 1}}}, "severity": "ERROR"}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
So I decided to propose to release GraphiQL 3 without Reach UI and replace him with maintained
So I proposed releasing GraphiQL v3 with replacing Reach UI with the maintained

libraries [Radix](https://radix-ui.com) and [Headless UI](https://headlessui.com) and to make
another major release with `monaco-editor` bumped as GraphiQL 4.

| Version | What is inside |
| :-----------: | :---------------------------------: |
| GraphiQL 2 | CodeMirror / Reach UI |
| GraphiQL 3 | CodeMirror / Radix / Headless UI |
| GraphiQL 4 🔜 | Monaco-Editor / Radix / Headless UI |

Check failure on line 122 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L122

[Vale.Terms] Use 'monaco' instead of 'Monaco'.
Raw output
{"message": "[Vale.Terms] Use 'monaco' instead of 'Monaco'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 122, "column": 18}}}, "severity": "ERROR"}

<p className="mt-3 text-center italic">Table of comparison versions of GraphiQL</p>

With all the above changes I also included a tab reorders feature:

![Reorder tabs feature](./reorder-tabs.gif)

{/* prettier-ignore */}
<p className="mt-3 text-center italic">Tab reorders made by
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would move that to the previous sentence, something like

In v3 I've also included the tab reorders feature made by @mylesmmurphy
#3111:

[@mylesmmurphy](https://github.com/mylesmmurphy)
[#3111](https://github.com/graphql/graphiql/pull/3111)</p>

Check failure on line 133 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L133

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 133, "column": 30}}}, "severity": "ERROR"}

Check failure on line 133 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L133

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 133, "column": 38}}}, "severity": "ERROR"}

Try GraphiQL 3 by installing it with your favourite package manager:

```sh npm2yarn
npm i graphql@3

Check failure on line 138 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L138

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 138, "column": 7}}}, "severity": "ERROR"}
```

## GraphiQL 4 🔜

14 months ago the initial issue was created on the integration `monaco-editor` in GraphiQL.

Check warning on line 143 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L143

[write-good.Passive] 'was created' may be passive voice. Use active voice if you can.
Raw output
{"message": "[write-good.Passive] 'was created' may be passive voice. Use active voice if you can.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 143, "column": 33}}}, "severity": "WARNING"}
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think originally the talk about monaco was many years earlier even


{/* prettier-ignore */}
<Anchor
href="https://github.com/graphql/graphiql/issues/2326#issue-1208525253" className="mt-6 block"

Check failure on line 147 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L147

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 147, "column": 28}}}, "severity": "ERROR"}

Check failure on line 147 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L147

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 147, "column": 36}}}, "severity": "ERROR"}
>![Initial comment on integration of monaco-editor in GraphiQL](./img_4.png)</Anchor>

but no real progress in GraphiQL was made (except

Check warning on line 150 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L150

[write-good.Passive] 'was made' may be passive voice. Use active voice if you can.
Raw output
{"message": "[write-good.Passive] 'was made' may be passive voice. Use active voice if you can.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 150, "column": 34}}}, "severity": "WARNING"}
[`graphiql-prototype`](https://github.com/jonathanawesome/graphiql-prototype) by

Check failure on line 151 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L151

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 151, "column": 3}}}, "severity": "ERROR"}

Check failure on line 151 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L151

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 151, "column": 59}}}, "severity": "ERROR"}
[@jonathanawesome](https://github.com/jonathanawesome)).

<Callout type="warning">
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would phrase it a bit different and less offensive
Maybe you can say that there was some initial work on Jon on a prototype outside of GraphiQL without integration

**Note:** I call it `no real progress` because `graphql-prototype` was prototype written from

Check failure on line 155 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L155

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 155, "column": 51}}}, "severity": "ERROR"}
scratch that doesn't integrate into the current GraphiQL monorepo.
</Callout>

<Anchor
href="https://github.com/graphql/graphiql/issues/2326#issuecomment-1385847481"

Check failure on line 160 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L160

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 160, "column": 28}}}, "severity": "ERROR"}

Check failure on line 160 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L160

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 160, "column": 36}}}, "severity": "ERROR"}
className="mt-6 block"
>
![Comment of no progress on integrating monaco in GraphiQL by @jonathanawesome](./img_2.png)
</Anchor>

I already started on such difficult integration, here my initial PR
[#3234](https://github.com/graphql/graphiql/pull/3234), or you can try it in the following

Check failure on line 167 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L167

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 167, "column": 28}}}, "severity": "ERROR"}

Check failure on line 167 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L167

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 167, "column": 36}}}, "severity": "ERROR"}
[preview URL](https://deploy-preview-3234--graphiql-test.netlify.app) (the alpha version will be

Check failure on line 168 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L168

[Vale.Terms] Use 'url' instead of 'URL'.
Raw output
{"message": "[Vale.Terms] Use 'url' instead of 'URL'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 168, "column": 10}}}, "severity": "ERROR"}

Check failure on line 168 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L168

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 168, "column": 44}}}, "severity": "ERROR"}
available soon too).

{/* prettier-ignore */}
<Anchor href="https://deploy-preview-3234--graphiql-test.netlify.app" className="mt-6 block">![GraphiQL

Check failure on line 172 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L172

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 172, "column": 44}}}, "severity": "ERROR"}
4 Preview](./img_3.png)</Anchor>

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

here is the current high level roadmap we have for GraphiQL, please comment and let us know what you think is missing:

### Roadmap

- [x] Avoid loading unused languages in `monaco-editor`
[#3285](https://github.com/graphql/graphiql/pull/3285)

Check failure on line 178 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L178

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 178, "column": 34}}}, "severity": "ERROR"}

Check failure on line 178 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L178

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 178, "column": 42}}}, "severity": "ERROR"}

- [x] **(WIP)** Integrate `monaco-editor`/`monaco-graphql`

Check failure on line 180 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L180

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 180, "column": 51}}}, "severity": "ERROR"}
[#3234](https://github.com/graphql/graphiql/pull/3234)

Check failure on line 181 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L181

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 181, "column": 34}}}, "severity": "ERROR"}

Check failure on line 181 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L181

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 181, "column": 42}}}, "severity": "ERROR"}

- [ ] JSONC comments in variables / headers editors
[#780](https://github.com/graphql/graphiql/issues/780)

Check failure on line 184 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L184

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 184, "column": 33}}}, "severity": "ERROR"}

Check failure on line 184 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L184

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 184, "column": 41}}}, "severity": "ERROR"}

- [ ] Migrate to pnpm & turbo [#3058](https://github.com/graphql/graphiql/issues/3058)

Check failure on line 186 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L186

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 186, "column": 58}}}, "severity": "ERROR"}

Check failure on line 186 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L186

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 186, "column": 66}}}, "severity": "ERROR"}

- [ ] New docs explorer aka Query builder [#2327](https://github.com/graphql/graphiql/issues/2327)

Check failure on line 188 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L188

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 188, "column": 70}}}, "severity": "ERROR"}

Check failure on line 188 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L188

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 188, "column": 78}}}, "severity": "ERROR"}

- [ ] GraphiQL website [#3059](https://github.com/graphql/graphiql/issues/3059)

Check failure on line 190 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L190

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 190, "column": 51}}}, "severity": "ERROR"}

Check failure on line 190 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L190

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 190, "column": 59}}}, "severity": "ERROR"}

- [ ] GraphQL-ESLint plugin [#3057](https://github.com/graphql/graphiql/issues/3057)

Check failure on line 192 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L192

[Vale.Terms] Use 'GraphQL' instead of 'graphql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphQL' instead of 'graphql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 192, "column": 56}}}, "severity": "ERROR"}

Check failure on line 192 in website/pages/blog/graphiql-3/index.mdx

View workflow job for this annotation

GitHub Actions / vale

[vale] website/pages/blog/graphiql-3/index.mdx#L192

[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.
Raw output
{"message": "[Vale.Terms] Use 'GraphiQL' instead of 'graphiql'.", "location": {"path": "website/pages/blog/graphiql-3/index.mdx", "range": {"start": {"line": 192, "column": 64}}}, "severity": "ERROR"}

## Conclusion

I hope you learned of the current state of GraphiQL and what is coming. Follow me on
[GitHub](https://github.com/B2o5T) and [Twitter](https://twitter.com/B2o5T), see you soon 👋!

<style jsx global>{`
.nextra-content h3,
.nextra-toc li a {
font-family: 'Text Font', 'Custom Glyphs Font', sans-serif;
}
.nextra-content table {
display: table;
margin-left: auto;
margin-right: auto;
}
.contains-task-list {
margin-top: 1.5rem;
}
`}</style>
Binary file added website/pages/blog/graphiql-3/reorder-tabs.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added website/public/blog-assets/graphiql-3/cover.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading