Activity Presentation
A bounded semantic projection for rich players and useful overlays without moving domain meaning into the host.
Prop
Type
Activity Presentation describes the member's goal, current status, stakes, meaningful change, next milestone, connection/evidence quality, and terminal outcome. Packages decide what those fields mean; generic hosts decide only how to isolate and deliver them.
Why it is separate from state
Engine state is sufficient for deterministic continuation and replay. A presentation projection is the bounded, intentionally shareable subset that a player or viewer needs. Do not send an entire reducer state to an OBS overlay.
Surface states
Every player and overlay should explicitly handle ready, live, terminal, disconnected/stale, replay, reduced-motion, compact, and broadcast-safe states. Connection quality is evidence quality—not a license to fabricate progress.
packages/contracts/src/presentation.tsExact semantic projection schema.
packages/presentation-kitAuthority-free build-time tokens and overlay primitives.
packages/darts-core/src/presentation.tsA complex domain projected into the public vocabulary.