almilo / gql-tools

GraphQL Tools for schema handling.
21 stars 3 forks source link

gql-tools

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

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