graphql / graphql/graphiql

rfc: vscode + graphql "extension pack"

Open
#2,381 0 comments 0 reactions 0 assignees View on GitHub
rfc
Dominant language
TypeScript
Stars
16.9k
Forks
1.9k
Avg merge
22h 45m
Merged PRs (30d)
70

Description

Utilizing the vscode ["extension pack"](https://code.visualstudio.com/api/references/extension-manifest#extension-packs) feature, we can release an extension pack, or even perhaps turn `graphql.vscode-graphql` into an extension pack, which would be powerful considering it's expansive user base!

This could be a series of inter-related extensions that can re-use eachother's configuration and even APIs perhaps:

- `graphql.config`: handles validation of the presence of graphql config, and provides an api to access normalized graphql config in any extension client. provides extension namespace of `graphql-config` that is currently configured via `graphql.vscode-graphql`
- `graphql.language: `what `graphql.vscode-graphql` is right now as of [creating this issue](https://github.com/graphql/graphiql/blob/b7c29d40d3a76960800ad33a4bbda3467871ea9b/packages/vscode-graphql/src/extension.ts)
- joyce's graphql notebooks extension
- `graphql.inline-exec` for executing operations inline using context menu, codelens (as before), shortcuts, etc
- would love to include prettier extension for formatting, but I think our graphql language user base would be wide enough to make that requirement a little too frontend biased, so we can just expose formatting to the LSP server via prettier/core + the prettier graphql support (as we do in `monaco-graphql`, but with more than just full file support - range formatting/etc as well)

then, a framework could even ship it's own extension that includes this extension pack as an `extensionDependency` and could utilize APIs and configuration from a `graphql-config` extension, pre-configuration, custom tracing support, deployment, other observability tools, etc

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.