Skip to content

Configuration Reference

Complete examples of both unimodular and multimodular project configurations can be found in the examples directory.


dependencies

An array of relative paths to dependency directories. This property is used in combination with depends_on.

{
  "dependencies": ["../lib"],
  "tasks": {
    "test": {
      "cmd": "bun test",
      "depends_on": ["#test"]
    }
  }
}

modules

A map from module names to arrays of glob patterns matching files and directories whose presence indicate the given module type is active. This property is used in combination with task-level modules.

{
  "modules": {
    "client": ["package.json"],
    "server": ["go.mod"]
  },
  "tasks": {
    "test": {
      "depends_on": ["#test"],
      "modules": {
        "client": "bun test",
        "server": "go test ./..."
      }
    }
  }
}

root

A boolean that when true, indicates that this file is the root for the project.

{
  "root": true
}

shell

The shell to use when executing commands. The possible values are ash, bash, powershell, sh, and zsh. The default is sh.

{
  "shell": "zsh"
}

tasks

A map from task names to task definitions.

{
  "tasks": {
    "test": "bun test"
  }
}

workspace

An array of glob patterns matching directories to include in the workspace. Traversal will stop when this property is encountered. See Workspaces for more information.

{
  "workspace": ["workspace/*"],
  "tasks": {
    "test": "bun test"
  }
}