The IR
The document an agent writes, a person edits, the player plays and the exporter renders.
The IR is a JSON document, typed in TypeScript and versioned with SemVer. Its current version is 0.2; everything in 0.x may change, and every change bumps the minor version and ships a migration.
Four ideas shape it:
- Semantic time. Visuals are anchored to sentences and words of the narration, never to guessed frame numbers.
- One document, many outputs. Interactive playback and video export come from the same document and the same DOM renderer.
- Object identity. Objects persist across beats, and changes between beats interpolate by identity.
- Production built in. Text-to-speech and timing, captions with separate pronunciation, loudness, media licensing and attribution, and layout QA before rendering.