Metacore SDK
The declarative addon framework — manifests, dynamic UI, and a typed runtime for building modular React hosts.
The Metacore SDK is a TypeScript monorepo published as @asteby/metacore-* npm packages. You declare an addon in a manifest.json, and the SDK provides everything needed to render it inside a host app: a federated loader, a metadata-driven <DynamicTable>, an auth kit, an i18n bundle, a UI library, themes, real-time WebSocket plumbing, and a scaffolder that wires it all together.
Quick links
- Quickstart — your first addon in 5 minutes.
- Dynamic UI — every component the runtime ships, with props.
- Cookbook — recipes for common patterns.
- Manifest Spec — every field of
manifest.json. - Capabilities — the declarative sandbox.
- Consumer Guide — wiring the SDK into a host app.
- Publishing — npm release flow for the SDK packages.
- WASM ABI — when you need server-side logic with TinyGo.
Packages
The SDK ships 16 packages under the @asteby scope. Most apps consume runtime-react, ui, auth, theme, and starter-config; the rest are opt-in.
| Package | What it does |
|---|---|
@asteby/metacore-sdk | Federated addon loader, slot registry, typed manifest and API client. |
@asteby/metacore-runtime-react | React runtime — <DynamicTable>, <DynamicModal>, capability gates, action dispatcher. |
@asteby/metacore-ui | UI kit — data-table, layout shell, command-menu, hooks and shadcn primitives. |
@asteby/metacore-auth | Auth kit — Zustand store, API client factory, login/signup/forgot pages, route guards. |
@asteby/metacore-theme | Design tokens and Tailwind 4 preset (oklch, shadows, fonts, dark mode). |
@asteby/metacore-i18n | i18next factory, base ES/EN bundles, language switcher, RTL provider. |
@asteby/metacore-lib | Utilities — date/currency/number formatting, error handling, cookies. |
@asteby/metacore-app-providers | Reusable providers (direction, font, layout, search). |
@asteby/metacore-starter-core | Shared providers, stores, hooks and context consumed by every Vite+React app. |
@asteby/metacore-starter-config | Shared build/lint configs (Vite + React + Tailwind 4 + TanStack Router + ESLint + TS). |
@asteby/metacore-websocket | WebSocket provider — auto-reconnect, typed messages, channel subscriptions. |
@asteby/metacore-notifications | Notifications dropdown, app badge, WebSocket-driven real-time updates. |
@asteby/metacore-webhooks | Webhooks management UI — list, create, logs, test/replay, signing secrets. |
@asteby/metacore-pwa | PWA helpers — vite plugin wrapper, install/update prompts, push notifications, offline indicator. |
@asteby/metacore-tools | TypeScript client for the kernel Tools runtime — execution, registration, client-side validation. |
create-metacore-app | Scaffolder. npx create-metacore-app my-app. |
Repository
Source, issues and releases live at asteby/metacore-sdk. The SDK is Apache-2.0.
Pair with the kernel
The SDK speaks the metadata contract served by the Metacore Kernel. One repo declares the contract, the other enforces it — both ship independently.