Getting started

From web app to AppC.

Keep your normal static web build. AppC adds a manifest, capability contract and deterministic package step around it.

Pre-release toolchain.

The public @application-console/* packages are release-qualified but have not completed their first npm registry publication. The commands below are the stable candidate contract and become directly installable after the npm bootstrap release.

1. Build a static distribution

Your distribution should have a real HTML entrypoint and all runtime assets inside the build directory.

npm run build
# dist/index.html
# dist/assets/...

2. Add an AppC manifest

{
  "appc": 1,
  "id": "com.example.my-app",
  "name": "My App",
  "version": "1.0.0",
  "entrypoint": "/index.html",
  "runtime": { "minimum": "0.1.0" },
  "capabilities": {
    "runtime": { "required": true },
    "storage": { "required": true }
  }
}

3. Package and verify

npx appc pack dist --manifest appc.manifest.json -o my-app.appc
npx appc verify my-app.appc
npx appc inspect my-app.appc --json
Package state is immutable.

Application state lives outside the AppC package in host-managed storage, databases, files and grants.

4. Use the SDK when you need host capabilities

import { runtime, storage } from "@application-console/appc-sdk";

await runtime.requireCapability("storage");
await storage.set("theme", "dark");