Build for production
Build the current desktop target without an installer:
carbon buildCarbon runs the frontend build, verifies index.html, embeds the frontend and effective manifest,
publishes the .NET host, removes symbols, and validates that the target output contains the expected
executable. Output is written to out/<target>/.
Desktop targets
Section titled “Desktop targets”carbon build --target osx-arm64carbon build --target osx-x64carbon build --target win-x64carbon build --target linux-x64The regular build is trimmed, self-contained, and compressed. No separate .NET installation or Vite server is required on the destination machine.
NativeAOT is available for smaller startup and runtime overhead:
carbon build --aotNativeAOT currently retains the Photino native library as a sidecar. Libraries that require dynamic code or unsupported reflection may need the regular self-contained build.
Bundles
Section titled “Bundles”carbon bundle desktopcarbon bundle android --apkcarbon bundle android --aabcarbon bundle ios --simulatorcarbon bundle ios --devicecarbon bundle ios --archivecarbon build --bundle is the desktop-compatible alias for producing a native package. Use
carbon bundle ... --dry-run to inspect the planned work without changing output.
Every successful production build writes a manifest under out/manifests/ with the artifact path,
type, size, SHA-256, application identity, icons, native integrations, and updater metadata.
