Project Name | Stars | Downloads | Repos Using This | Packages Using This | Most Recent Commit | Total Releases | Latest Release | Open Issues | License | Language |
---|---|---|---|---|---|---|---|---|---|---|
Graphiql | 15,374 | 1,297 | 221 | 14 days ago | 471 | November 20, 2023 | 354 | mit | TypeScript | |
GraphiQL & the GraphQL LSP Reference Ecosystem for building browser & IDE tools. | ||||||||||
Graphql Playground | 8,598 | 6,990 | 145 | 2 months ago | 82 | November 04, 2021 | 406 | mit | TypeScript | |
🎮 GraphQL IDE for better development workflows (GraphQL Subscriptions, interactive docs & collaboration) | ||||||||||
Graphql Editor | 5,900 | 3 | 3 days ago | 107 | November 30, 2023 | 16 | mit | TypeScript | ||
📺 Visual Editor & GraphQL IDE. | ||||||||||
Graphql Ide | 969 | 5 years ago | 22 | mit | CSS | |||||
⚡️ GraphQL IDE - An extensive IDE for exploring GraphQL API's | ||||||||||
Wp Graphiql | 275 | 1 | 3 years ago | 4 | October 23, 2019 | 9 | gpl-3.0 | JavaScript | ||
GraphiQL IDE, fine tuned for use with WPGraphQL | ||||||||||
Graphiql Workspace | 210 | 6 | 4 | 5 years ago | 17 | July 20, 2018 | 8 | apache-2.0 | JavaScript | |
A graphical interactive in-browser GraphQL IDE enhanced with tabbed navigation, HTTP headers, arbitrary endpoints, etc. | ||||||||||
Graphiql Storm | 105 | 1 | 2 | 4 years ago | 25 | January 11, 2020 | 3 | mit | JavaScript | |
🌪 A GraphQl Web IDE | ||||||||||
Pathfinder | 92 | 13 days ago | 4 | mpl-2.0 | TypeScript | |||||
The missing GraphQL IDE | ||||||||||
Django Graphiql Debug Toolbar | 64 | 1 | 1 | 2 years ago | 9 | August 28, 2021 | 4 | mit | Python | |
Django Debug Toolbar for GraphiQL IDE and Graphene | ||||||||||
Graphiql | 49 | 1 | 12 | 4 years ago | 5 | June 02, 2019 | 3 | mit | Go | |
An adapter on GO to serve the GraphiQL in-browser IDE. |
GraphQLEditor makes it easier to understand GraphQL schemas. Create a schema by using visual blocks system. GraphQL Editor will transform them into code.
With GraphQL Editor you can create visual diagrams without writing any code or present your schema in a nice way!
Create GraphQL nodes and connect them to generate a database schema. You can also use builtin text IDE with GraphQL syntax validation
GraphQL Editor is a GraphQL visualizer and designer. It allows you to create and display GraphQL schemas as a visual graph.
MIT
npm i -D worker-loader css-loader file-loader webpack
npm i graphql-editor react react-dom monaco-editor @monaco-editor/react
import React, { useState } from 'react';
import { render } from 'react-dom';
import { GraphQLEditor, PassedSchema } from 'graphql-editor';
const schemas = {
pizza: `
type Query{
pizzas: [Pizza!]
}
`,
pizzaLibrary: `
type Pizza{
name:String;
}
`,
};
export const App = () => {
const [mySchema, setMySchema] = useState<PassedSchema>({
code: schemas.pizza,
libraries: schemas.pizzaLibrary,
});
return (
<div
style={{
flex: 1,
width: '100%',
height: '100%',
alignSelf: 'stretch',
display: 'flex',
position: 'relative',
}}
>
<GraphQLEditor
setSchema={(props) => {
setMySchema(props);
}}
schema={mySchema}
/>
</div>
);
};
render(<App />, document.getElementById('root'));
GraphQLEditor
property | type | description | required | default |
---|---|---|---|---|
schema | PassedSchema |
value of the schema | true | |
setSchema | (props: PassedSchema, isInvalid?: boolean) => void; |
Function to be called when schema is set by the editor | true | |
readonly | boolean |
lock editing | false | false |
diffSchemas | Record<string, string> |
Record containing graphql schemas with "name" as a key and graphql schema as a "value" | false | |
theme | EditorTheme |
current theme | MainTheme | |
routeState | EditorRoutes |
listen to route changes. Don't bind it with routeState though! | false | |
onStateChange | ( r: EditorRoutes ) => void; |
on route state changed | false | |
onTreeChange | (tree: ParserTree) => void |
Function that could be fired if tree changes | false | |
placeholder | string |
placeholder - empty editor | false |
PassedSchema
property | type | description |
---|---|---|
code | string |
value of the schema code |
libraries | string |
value of the current libraries |
ActivePane
"relation" | "diagram" | "diff"
import React, { useState } from 'react';
import { render } from 'react-dom';
import { GraphQLEditor, PassedSchema } from 'graphql-editor';
const schema = `
type Query{
pizzas: [Pizza!]
}
`;
export const App = () => {
const [gql, setGql] = useState('');
return ( ||
<div
style={{
flex: 1,
width: '100%',
height: '100%',
alignSelf: 'stretch',
display: 'flex',
position: 'relative',
}}
>
<GraphQLGqlEditor
gql={gql}
setGql={(gqlString) => setGql(gqlString)}
schema={{ code: schema }}
/>
</div>
);
};
render(<App />, document.getElementById('root'));
GraphQLEditor
property | type | description | required | default |
---|---|---|---|---|
schema | PassedSchema |
value of the schema | true | |
gql | string |
value of the gql | true | |
placeholder | string |
placeholder - empty editor | false | undefined |
setGql | (props: PassedSchema, isInvalid?: boolean) => void; |
set value of the gql | true | undefined |
readonly | boolean |
lock editing | false | false |
theme | EditorTheme |
current theme | false | MainTheme |
If you only want to view the schema and embed it somewhere in your app you can use our embedded editor for that reason
import React from 'react';
import { EmbeddedGraphQLEditor } from 'graphql-editor';
import * as schemas from '../schema';
export const embeddedEditor = () => {
return (
<div
style={{
flex: 1,
width: '100%',
height: '100%',
alignSelf: 'stretch',
display: 'flex',
position: 'relative',
}}
>
<EmbeddedGraphQLEditor
schema={{
code: schemas.googleDirectionsNew,
libraries: '',
}}
/>
</div>
);
};
Whole graphql-editor parsing stuff is based on underlying zeus technology.