@octokit/graphql-schema

GitHub’s GraphQL Schema with validation. Automatically updated.

Stats

stars 🌟issues ⚠️updated 🛠created 🐣size 🏋️‍♀️
1221Jun 22, 2021Dec 10, 2017Minified + gzip package size for @octokit/graphql-schema in KB

Readme

graphql-schema

GitHub’s GraphQL Schema with validation. Automatically updated.

Test

Usage

Validation

const { validate } = require("@octokit/graphql-schema");
const errors = validate(`
{
  viewer {
    login
  }
}
`);

// errors is array. Contains errors if any

You can also load the current Schema directly as JSON or IDL.

const { schema } = require("@octokit/graphql-schema");
schema.json; // JSON version
schema.idl; // IDL version

Schema as Types

import { graphql } from "@octokit/graphql";
import { Repository } from "@octokit/graphql-schema";

const { repository } = await graphql<{ repository: Repository }>(
  `
    {
      repository(owner: "octokit", name: "graphql.js") {
        issues(last: 3) {
          edges {
            node {
              title
            }
          }
        }
      }
    }
  `,
  {
    headers: {
      authorization: `token secret123`,
    },
  }
);

Local setup

git clone https://github.com/octokit/graphql-schema.git
cd graphql-schema
npm install
npm test

Update schema files (GITHUB_TOKEN requires no scope)

GITHUB_TOKEN=... npm run update

See also

LICENSE

MIT

If you find any bugs or have a feature request, please open an issue on github!

The npm package download data comes from npm's download counts api and package details come from npms.io.