Skip to content

Realtime Features

Sporades has two deliberately different realtime tools:

Journey state is not analytics, an audit log, durable preferences, or an authoritative server input. Choose it only when the question is “what are consenting users doing now?”

For App messages, declare a server message() handler and subscribe through the client SDK. For Journey state, first enable the Capsule declaration, then obtain page-runtime consent with journey.enable(). Publish semantic state with journey.set(), and call journey.disable() when consent ends. Never put form values, query strings, or sensitive DOM content into Journey metadata.

Released under the MIT License.