Topic

Demos as Code

Treating the demo as a committed artifact: agent-authored storyboards, deterministic browser replay, multi-language and per-prospect renders from one recording.

More on Demos as Code
A row of evenly spaced sturdy brass wall hooks mounted on a horizontal rail
Demos as Code

Agent-friendly app instrumentation: data-testid and beyond

Whether an agent can script your UI is decided in your codebase. The instrumentation playbook that pays off for tests, agents, and demo capture at once.

July 18, 20267 min read
A diagram splitting demo creation into an agent's exploratory authoring on the left and a deterministic engine's locked capture pipeline on the right, divided by a line labeled no LLM past this line
Demos as Code

Letting a coding agent make your demo video

A coding agent can explore your app and write the demo storyboard. Driving the browser live is the one thing it must not do, and here is exactly why.

July 18, 20268 min read
Two stacked filmstrips of one demo flow, the pinned one identical frame for frame, the unpinned one drifting on a spinner, a font swap, and a layout column
Demos as Code

Deterministic browser automation for video capture

A test that flakes just reruns. A demo that flakes ships the stutter. The eight-variable checklist for making one browser flow render the same pixels twice.

July 18, 20268 min read
A cylindrical pneumatic-tube carrier capsule with rounded brass end caps standing upright on a plain surface
Demos as Code

MCP servers for media generation: the agent-to-render interface

A media render runs for minutes; an MCP tool call times out in sixty seconds. How to design the agent-to-render interface so the video survives the gap.

July 18, 20268 min read
One recorded demo take branching into five language versions that share identical footage but differ in voiceover and captions
Demos as Code

Multi-language product demo videos from one recording

Localizing a demo doesn't mean re-shooting it five times. Keep one recorded take, swap the words, and do the honest math on where each locale really costs you.

July 18, 20268 min read
One parameterized demo storyboard rendering into a grid of prospect-specific videos, each showing a different company account and data
Demos as Code

Personalized demo videos at scale: the template-render pattern

A merge field with the prospect's name is not a demo that shows their data. Three depths of personalization, priced honestly for a fifty-prospect batch.

July 18, 20268 min read
A fluted copper jelly mould resting upside down on a small round plate
Demos as Code

Reproducible demo renders: byte-for-byte, on purpose

You pinned the browser so it paints the same pixels every run. The MP4 still differs. Here is why, and the reproducible-builds discipline that closes it.

July 18, 20267 min read
A brass jeweler's loupe standing open on its folding hinge
Demos as Code

Reviewing video and media diffs in pull requests

A pull request has nothing to say about a video: git renders it as 'Binary files differ.' Here is how to make a media change a reviewer can actually approve.

July 18, 20268 min read
A heavy cast-iron ship's anchor resting on its two curved flukes
Demos as Code

Selectors that survive a redesign

A demo pinned to nth-child and hashed CSS classes breaks the day a designer touches the layout. Here are the selectors that outlast a redesign.

July 18, 20267 min read
A short wall of interlocking toy building bricks stacked together with studs on top
Demos as Code

Storyboard design patterns for demos as code

When the demo is a JSON file, authoring becomes a design-patterns problem: the moves that keep a storyboard readable, and the smells that wreck it.

July 18, 20268 min read
A polished brass calibration weight resting in a felt-lined case slot
Demos as Code

Testing demos like code: golden files and drift gates

Your code has a test suite; the demo video of it has a filename and a vibe. Golden-file testing closes that gap, once you pick the right layer to freeze.

July 18, 20268 min read
A heavy round stone millstone with a center hole standing upright on its edge
Demos as Code

Versioning media assets in git: LFS, committed, or external

Git can diff a storyboard forever for free and chokes on the MP4 it renders. Where that binary lives — committed, LFS, or nowhere — is a real decision.

July 18, 20267 min read
Five video-as-code source files — Remotion, Revideo, editly, vhs, and a browser action-spec — each rendering to a video frame
Demos as Code

Video-as-code tools: Remotion, Revideo, editly, vhs — and real-UI capture

Remotion and Revideo draw every frame, editly stitches clips, vhs replays a terminal, real-UI capture films your product. Five models, one map.

July 18, 20266 min read