Envelop
Installation
Terminal
yarn add @graphql-hive/client
We recommend installing Hive Client package as a direct dependency of your project, because it includes a runtime to send usage reports and schemas to Hive registry.
The @graphql-hive/client
package exports an
Envelop plugin (opens in a new tab), that can be used directly with any server
that supports Envelop.
Publishing Schemas
You can report schemas to Hive registry by using the reporting
section of the configuration:
import { createServer } from 'node:http'
import { createYoga } from 'graphql-yoga'
import { useHive } from '@graphql-hive/client'
import { schema } from './schema'
const plugin = useHive({
enabled: true, // Enable/Disable Hive Client
debug: true, // Debugging mode
token: 'YOUR-TOKEN',
// Schema reporting
reporting: {
// feel free to set dummy values here
author: 'Author of the schema version',
commit: 'git sha or any identifier'
}
})
// Now use `plugin` with your server, pass it as Envelop plugin.
Usage Reporting
You can send usage reporting to Hive registry by using the usage
section of the configuration:
import { createServer } from 'node:http'
import { createYoga } from 'graphql-yoga'
import { schema } from './schema'
const plugin = useHive({
enabled: true, // Enable/Disable Hive Client
token: 'YOUR-TOKEN',
reporting: { ... },
usage: true
})