Skip to content

Configuration

carbon.json is the application manifest. Keep the bundled schema reference for editor completion:

{
"$schema": "./carbon.schema.json",
"app": {
"name": "notes",
"displayName": "Carbon Notes",
"version": "0.1.0",
"identifier": "dev.dotcarbon.notes"
},
"window": {
"label": "main",
"title": "Carbon Notes",
"width": 1100,
"height": 760,
"center": true,
"capabilities": ["main"]
},
"build": {
"devCommand": "pnpm --dir ui dev",
"buildCommand": "pnpm --dir ui build",
"devUrl": "http://localhost:5173",
"frontendDist": "ui/dist",
"backendProject": "src-carbon"
}
}

The main sections are:

Section Purpose
app Name, display name, version, reverse-DNS identifier
window / windows Main and additional labeled windows
build Frontend commands, dev URL, output, backend project
security Capability enforcement, origins, CSP, bridge limits
plugins Namespace-specific plugin configuration and scopes
permissions Device permissions and usage descriptions
bundle Platform targets, resources, packaging, signing, updater

Run carbon doctor after editing configuration. See the complete carbon.json reference for every field.