Skip to content
The shell hosting your app and others over live channels

@platform/sdk

The framework-agnostic client your Angular app uses to join the platform — one handshake, then intents, surfaces, modals, and a shared session.

@platform/sdk is the client an app installs to be loaded by the platform shell. Your app runs in its own iframe; the SDK performs an origin-validated handshake and hands you a small, promise-based client for everything cross-app: invoking and providing intents, hosting and exposing surfaces, opening shell-brokered modals, reading the session, and reporting telemetry.

You build an ordinary Angular app. The SDK never imports a UI framework — you wire it into Angular DI through an injection token and keep writing Angular.

import { bootstrap } from "@platform/sdk";
import { standalonePlatform } from "@platform/dev-harness";
void bootstrap({
contract,
app: () => import("./app/app").then((m) => m.App),
fallback: () => standalonePlatform({ appId: "my-app" }),
mountApp: (app, platform) =>
bootstrapApplication(app, { providers: [{ provide: PLATFORM, useValue: platform }] }),
});

Authentication appears here only as the SDK surfaces it — the advisory session snapshot and hasRole() for affordances. Your backend remains the gate; see Advisory auth vs the backend gate.