Skip to main content
Version: v4 (current)

Omitting Plugins

Whilst graphile-build and graphile-build-pg come with a lot of useful plugins enabled by default, you might not want all of them. It's easy to remove one though - simply omit it from the list of plugins you pass to buildSchema. Here's some examples:

Building the basic Schema without the Node interface

It's possible to build an even more minimal schema without Relay Node specification support by omitting the NodePlugin plugin:

const { buildSchema, defaultPlugins, NodePlugin } = require("graphile-build");
const { printSchema } = require("graphql/utilities");

buildSchema(defaultPlugins.filter((plugin) => plugin !== NodePlugin)).then(
(schema) => {
console.log(printSchema(schema));
},
);

which generates this much simpler schema:

# The root query type which gives access points into the data universe.
type Query {
# Exposes the root query type nested one level down. This is helpful for Relay 1
# which can only query top level fields if they are in a particular form.
query: Query!
}