- UI primitives: cards, rows, badges, app icons, metrics, and action buttons.
- Theme primitives: room-managed tokens, primitive hooks, app icon families, widget surfaces, wall frames, note presets, and score evidence.
- Surface primitives: widget, fullscreen, dock, overlay, and chat panel.
- Capability primitives: host data, connector reads, room state, safe actions, collaboration presence, and sandboxed code.
- Safety primitives: permission boundary, renderer boundary, provenance, network policy, write policy, and review report.
- Distribution primitives: saved widget, published widget, published wall, full app, sandbox project, and developer-owned repo.
SDK_PRIMITIVE_LAYER_CATALOG. Each layer points to
the concrete catalogs used by validation:
- UI:
SDK_JSON_RENDER_COMPONENT_ALLOWLIST - Theme:
BUDSCOLLAB_ROOM_THEME_COMPONENT_PRIMITIVES,BUDSCOLLAB_ROOM_THEME_DESIGN_SYSTEM_REPORT, andBUDSCOLLAB_ROOM_THEME_NOTION_BENCHMARK_REPORT - Surfaces:
APP_CREATOR_SURFACE_CATALOG - Capabilities:
APP_CREATOR_CAPABILITY_CATALOG - Safety:
APP_CREATOR_SANDBOX_SAFETY_GATESplus package validation. - Distribution:
APP_CREATOR_DISTRIBUTION_TARGET_CATALOGandSDK_DISTRIBUTION_LIFECYCLE_CATALOG.
How to use it
Start with the smallest primitive set that can express the app:- Pick surfaces: widget, fullscreen, dock, overlay, or chat panel.
- Pick UI primitives: cards, rows, badges, metrics, forms, and action buttons.
- Bind Theme primitives: inherit room tokens, use host card and app-icon hooks, and preserve widget, wall, and note preset controls.
- Pick capabilities: host data, connector reads, room state, safe actions, or collaboration presence.
- Pick safety gates: permission boundary, renderer boundary, provenance, network policy, write policy, and review report.
- Pick distribution target: personal widget, full app, sandbox project, or developer-owned repo.