Configuration Reference
All configuration is done through baeta.ts using defineConfig.
GraphQL Options
Only schemas is required:
import { defineConfig } from "@baeta/cli";
export default defineConfig({
graphql: {
// Glob pattern(s) to locate GraphQL schema files (required)
schemas: ["src/**/*.gql"],
// Root directory where GraphQL modules are defined (default: "src/modules")
modulesDir: "src/modules",
// Output path for generated type files (default: "${modulesDir}/../__generated__/")
typesDir: "src/__generated__",
// Filename for the generated module definition file (default: "typedef")
moduleDefinitionName: "typedef",
// File extension for generated imports (default: ".ts")
// Set to ".js" for bundler compatibility or false to omit
importExtension: ".ts",
// Options for generated files
fileOptions: {
disableEslintHeader: true,
disableBiomeV1Header: true,
},
},
});
For all available options, see the GeneratorOptions and FileOptions API references.
Plugins
Add plugins to extend the build process:
import { defineConfig } from "@baeta/cli";
import { federationPlugin } from "@baeta/plugin-federation";
import { prismaPlugin } from "@baeta/plugin-prisma";
export default defineConfig({
graphql: {
schemas: ["src/**/*.gql"],
},
plugins: [
federationPlugin(),
prismaPlugin({ prismaSchema: "schema.prisma" }),
],
});
See the Plugins section for available plugins and their options.