Skip to content

Client Schema

Next-gql provides wrapper around graphql-codegen. Options to createCodegenConfig can override any graphql-codegen setting.

create a codegen.ts config file

import createCodegenConfig from '@enalmada/next-gql-codegen';
const config = createCodegenConfig();
export default config;

create a script to run graphql-codegen-wrapper

"codegen": "bun graphql-codegen-wrapper --watch",

run concurrently with dev server

start-server-and-test is one option to wait for server to be up to collect current schema from.

"dev": "start-server-and-test dev http-get://localhost:3000/api/graphql codegen",

Notice when queries and mutation change, client schema is updated. Default assumptions:

  • server url is http://localhost:3000/api/graphql
  • server relevant files: src/server/graphql/(builder|schema).ts, src/server/**/*.model.ts,
  • query file src/client/gql/queries-mutations.ts
  • generated directory src/client/gql/generated/

These can be overwritten with options and someday will be more specifically configurable.