Skip to content

almilo/gql-tools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

40 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gql-tools

This package provides several command-line tools to work with GraphQL schemas:

  • generation of the introspection schema in JSON format based on a GraphQL schema file (schema language) or from a GraphQL endpoint (introspection query)
  • generation of the parsed AST in JSON format based on a GraphQL schema file (schema language) or from a GraphQL endpoint (introspection query)
  • generation of the schema language file from a GraphQL endpoint (introspection query)
  • generation of a real-time visualization graph based on a GraphQL schema file (schema language)

Installation

npm install --save gql-tools

Installs gql-tools locally and saves it as production dependency to the current package.

npm install -g gql-tools

Installs gql-tools globally.

Note: this package requires graphql as peer dependency (either global or local, depdending on the kind of installation).

npm install [-g] graphql

Commands

gqlschema

gqlschema <schema.txt | http://example.com/graphql> [-iatuov]
// schema.txt

type Person {
    name: String
}

type Query {
    people: [Person]
}

schema {
    query: Query
}
gqlschema <schema.txt | http://example.com/graphql> [-i]

Generates a JSON file with the introspection schema. The introspection schema is usually used by GraphQL tools to provide type support, code completion, query validation, etc.

gqlschema <schema.txt | http://example.com/graphql> -a

Generates a JSON file with the parsed AST of the schema. The AST can be useful for debugging when doing GraphQL language manipulation (i.e.: writing visitors).

gqlschema <schema.txt | http://example.com/graphql> -t

Generates a GraphQL file (schema language) with a schema language definition of the schema.

For more options, see the CLI help:

gqlschema -h

gqlgraph

gqlgraph <schema.txt> [-p]
// schema.txt

type Person {
    name: String
}

type Query {
    people: [Person]
}

schema {
    query: Query
}

Generates a livereload-enabled server with a graphic visualization of the GraphQL schema and opens it in the default browser. When the schema file is saved, the changes are reloaded.

For more options, see the CLI help:

gqlgraph -h

About

GraphQL Tools for schema handling.

Resources

Stars

Watchers

Forks

Packages

No packages published