graphql / graphql/graphql.github.io

new mini IDE for site using monaco-graphql

Đang mở
#952 2 bình luận 3 reaction 0 người được giao Xem trên GitHub
💄 Enhancement
Ngôn ngữ chính
TypeScript
Star
889
Fork
1.5k
Merge trung bình
4 ngày 12 giờ
Pull request đã merge (30 ngày)
21

Mô tả

we should build a new mini-IDE for the docs using `monaco-graphql`, since it's actually screen-reader accessible, supports multiple instances (with shared, single schema fetch) and it already supports most of the new language features that we need to document (correction - the LSP (gls-interface) does not yet have completion support for interfaces implementing interfaces, though validation and highlighting is supported in monaco-graphql. previously this issue claimed we fully supported this language feature).

according to the vscode team, the best way to re-use the same monaco mode instance across multiple editors is by using `editor.setModel()`. this way, the language service instance is built once, and the schema is executed once, and one set of language workers will service all editor panes.

the current `MiniGraphQL` component uses `codemirror-graphql` which takes much more effort to add new language features to, because of the non-LSP interface

also, if we want the embedded demos to execute against swapi-graphql, need to add new language features to that schema as well.

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Hướng nghiên cứu

Start with the current MiniGraphQL component, which uses codemirror-graphql, and review how monaco-graphql could replace it using editor.setModel() for shared language workers and schema fetching. Done means the docs have the new mini-IDE with the stated accessibility, multi-instance, validation, highlighting, and embedded-demo requirements, including any needed swapi-graphql schema work.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
graphql, typescript
Lĩnh vực
frontend
Loại issue
Tính năng
Độ khó
5/5
Thời gian dự kiến
Hơn một tuần
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
25/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.