Components
The React layer is deliberately small. Most of the work happens in the engine; these components decide when to animate, when to share an animation, and when not to animate at all.
Core
Avatars
Activity and effects
HUD
Agent
Editing and templates
Scenes
Other
How they relate
Four tiers. The engine knows nothing about React; the core wraps it in components and decides when to share an animation; the agent layer feeds protocol ids into that core; everything else is composed from the two.
Choosing a component
One character, on its own. CharacterMark.
Many characters, most of them alike. MarkStageProvider plus StagedMark. One engine per distinct shape-and-state pair, mirrors for the rest.
An avatar for a user or agent. AgentAvatar. It picks between a picture, a group cluster and a character for you, and derives a stable appearance from an id so you do not have to store one.
An agent that reports what it is doing. AgentStateProvider plus CharacterMark. Hooks and a relay speak the emotion protocol; the arbiter decides which session the face shows.
A number next to the face. hud on any character, from a spec the protocol carries; HudPlate when it needs a title and a value beside it, AgentHud when the provider should supply both.
One agent drawn in several places at once. Mark commands — publish facts once, and every roster row, avatar and activity line for that agent follows.
Letting someone choose or edit an appearance. CharacterPicker in a settings form; AgentCharacterPicker in a dialog; CompactCharacterPicker beside a sign-up form; AvatarEditor when a picture is also allowed; TemplateDialog when the appearance belongs to a template being created.
A whole scene. RestrictedScene for a dead end, BootLoop for an indeterminate wait, CastStage for a scripted piece, the walkthrough parts for an onboarding flow.
A painted mascot instead of a generated one. SpriteMark, keyed by the same protocol ids.
Hundreds, in a virtualised list. Neither — use renderAvatarDataUrl and render images.
Every export
Reachable in one page: the API index.
Next
- CharacterMark — the single animated character
- API index — every export in one place
- Chat stream — a status line with a face