Lines typed out character by character on seeded irregular timing, led by a block caret that blinks on a fixed frame cycle
This is the format it was composed for. Switch above to see it lay itself out for another: same animation, re-arranged for the frame.
Everything below can be changed without touching the animation. Hand the list to an agent, or edit the values at the bottom of the component file.
Lines typed one after another, in order, with a beat between them. One to four. The type scale shrinks to fit the longest line, so keep each one to a single measure, 25–40 characters reads best at 16:9.
now: 2 items
Mono prompt glyph set in front of the first line, terminal style. '›', '$' and '/' all work. Empty string for none; later lines indent to stay aligned either way.
now: ›
Small mono label anchored top-left, preceded by an accent dash. Empty string for none.
now: Motionstash
Footer note under a hairline, drawn in only after typing finishes. Empty string for none.
now: Seeded per-character jitter — the same take on every render
'display' reads as an editorial statement being written; 'mono' as a terminal session.
now: display
Frames in one full blink cycle. 20 is ~1.5 blinks per second at 30fps. The caret crossfades rather than hard-cutting, and holds solid while keys are landing.
now: 20
Seeds the per-keystroke jitter. Change it for a differently-fumbled take of identical duration; the same seed always renders the same frames.
now: caret-01
Brand token id, one of the keys of BRANDS.
now: slate
No Tailwind, no CSS, no asset files. Inline styles only.
Text typed out character by character with a blinking block caret, left-aligned on a generous margin with a mono prompt glyph in front of the first line. Make the per-character timing slightly irregular so it reads as a person typing rather than a metronome, pause between lines, and have the caret fade in and out on a fixed cycle instead of hard-cutting.