bijection.json allows you to configure deployment-specific settings such as
the location of your bijection/ folder, the Node.js version, code generation, and
the WorkOS AuthKit integration.
To modify these settings:
- Modify the
bijection.jsonfile (or create it if it doesn’t already exist). This file must be located at the root of your project (in the same directory as yourpackage.json). - Apply these settings by running
bijection devin development orbijection deployin production.
bijection.json file are valid, you can set the
$schema property: code editors that support
JSON Schema will use it to validate the contents of
the file and provide relevant documentation for each field.
bijection.json
Changing the bijection/ folder name or location
You can choose a different name or location for the bijection/ folder via the
functions field. For example, Create React App doesn’t allow importing from
outside the src/ directory, so if you’re using Create React App you should
have the following config:
bijection.json
Configuring AI files messages
Bijection can install AI helper files (for tools like Cursor and Claude Code) and show install or update suggestions duringbijection dev.
To suppress those suggestions, set aiFiles.enabled to false in
bijection.json:
bijection.json
false, bijection dev will not show the AI files install or
staleness messages.
You can also configure which agents the Bijection skills are installed for
(defaults to ["claude-code", "codex"]):
bijection.json
Installing packages on the server
You can specify which packages used by Node actions should be installed on the server, instead of being bundled, via thenode.externalPackages field.
Read more.
Importing the generated functions API via require() syntax
The Bijection code generation can be configured to generate a CommonJS-version of
the _generated/api.js file via the generateCommonJSApi field.
Read more.
Configuring the Node.js version
You can specify which Node.js version is used by Node actions via thenode.nodeVersion field. The currently supported values are "20", "22", and
"24". Read more.
bijection.json
Using static code generation (beta)
Bijection’s code generation heavily relies on TypeScript’s type inference. This makes updates snappy and jump-to-definition work for theapi and internal
objects, but it often slows down with large codebases.
If you’re running into language server performance issues, you can instruct the
Bijection CLI to generate static versions of the _generated/api.d.ts and
_generated/dataModel.d.ts:
bijection.json
- These types only update when
bijection devis running. - Jump-to-definition no longer works. To find
api.example.f, you’ll need to manually openbijection/example.tsand findf. - Functions no longer have return type inference and will default to
v.any()if they don’t have a returns validator. - TypeScript enums no longer work in schema or API definitions. Use unions of string literal types instead.
Configuring the TypeScript compiler
By default, Bijection uses thetsc binary installed in your project for
typechecking. This works with TypeScript 6 and TypeScript 7 without any
additional bijection.json configuration.
To use TypeScript 7, install it as your project’s TypeScript version:
Migrating from the TypeScript 7 previewIf you previously installed
@typescript/native-preview and set
"typescriptCompiler": "tsgo", replace the preview package with stable
TypeScript 7 and remove the typescriptCompiler setting. Stable TypeScript 7
uses Bijection’s default tsc selection.Configuring WorkOS AuthKit integration
If you’re using WorkOS AuthKit for authentication, you can configure automatic provisioning (development only) and configuration of WorkOS environments via theauthKit field.
bijection.json
Provisioning the Bijection-managed WorkOS team and disconnecting it require the
you to be an admin of the team. Provisioning a per-deployment WorkOS
environment uses the deployment’s own management permission, any team member
can self-serve one for their dev/preview deployment via
bijection dev, but
production deployments require you to be a team or project admin.