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.
