Motion vocabulary · Text input typing
Paste-in
⌘V lands the whole text at once with a selection flash, then the send press and the result.
Live loop · 6 s · 1920×1080 at 24 fps
Parameters
| Parameter | Type | What it does |
|---|---|---|
| text (required) | string | what is typed (or pasted) |
| placeholder | string | grey text in the empty field |
| result | string | string[] | what flips in after the submit: a title line, then up to 3 lines |
| resultSrc | "/assets/<screen>.jpg" | a real screen as the result card instead of lines |
| cps | numberDefault: 15 | characters per second (a person types 8-20) |
| mistype | {at, wrong} | false | a typo and its fix at char index `at` |
| x / y / width | px | field centre x, top y, width |
| ease | {"<move>": ease} | retune any named move (see the entry's moves): a preset name ("out-expo"), a cubic-bezier [x1, y1, x2, y2], {spring: [hz, damping]} or {trapezoid: [accel, decel]}. A wrong move name or curve throws, it never falls back. A move measured from a reference clip (the replica workbench's measure/*.json, frame-keyed) becomes a curve without conversion: MV.fitEase(doc, "x", {from: 133, to: 142}) or `motion-fit <file> --measure x --from 133 --to 142 --ease` |
| brand | hexDefault: #6B5BFF | the site's brand colour; the component derives its accent (>= 3:1 on the stage), surfaces and ink from it |
| stage | "dark" | "light"Default: "dark" | the stage the component sits on |
| display | font stemDefault: "Inter-Bold" | headline stem; name it in the call so the runtime loads it |
| body | font stemDefault: "Inter-Regular" | UI / body stem; name it in the call so the runtime loads it |
| start_ms | msDefault: 300 | when the component starts, ms into the shot |
| background | booleanDefault: false | draw the stage background (off: transparent over the shot's own stage) |
| place | {x, y, w, h, z?} | the component's place in the shot's layout: it fits its 1920x1080 composition into this stage rect (centred, aspect kept); z orders components front to back. Default: the whole stage |
Moves and their curves
Every move is eased on its own. Retune one with ease: { "<move>": <curve> }, a curve name or cubic-bezier handles.
| Move | Curve | What it does |
|---|---|---|
| chip.in | {"spring":[2.22,0.85]} | the paste chip popping up above the field |
| chip.out | linear | the chip fading after the paste |
| paste.highlight | out-quad | the pasted text's highlight fading |
| send.on | linear | the send button turning to the brand colour at the first key |
| send.down | out-quad | the send button pressing down to 0.84x |
| send.release | {"spring":[2.38,0.82]} | the send button springing back after the press |
| ripple | out-cubic | the ring spreading from the send button |
| submit.rise | out-quint | after the submit, the field rising out of the way |
| card.flip | {"spring":[1.33,0.88]} | each result card flipping down into place (110 ms apart) |
This demo
| variant | "paste" |
|---|---|
| text | "LaunchReel turns a product page into a launch film." |
| result | ["Script ready","Six shots planned"] |
| brand | #E0563B |
| stage | dark |
<script src="/vendor/motion-vocab.js"></script>
MV.bind("s3", MV.typeInput(el, {"variant":"paste","text":"LaunchReel turns a product page into a launch film.","result":["Script ready","Six shots planned"],"brand":"#E0563B","stage":"dark","display":"Inter-Bold","body":"Inter-Regular"}));When to use it in a launch film
When the input is long (a paragraph, a document, a link) and typing it would waste the viewer's time.
Why it works
A paste is faster than typing and still shows the input; the flash says the text arrived.
Do not combine with
- another typing component on screen at the same time (one caret per frame)
- a line longer than about 60 characters (it reads as a wall of text at 720p)
Job in the film
Natural length
3.0–5.0 s
More text input typing
URL bar typing
A URL is typed into an address bar, autocompletes, Enter is pressed and the site flips in.
AI prompt box
A prompt is typed with a human rhythm, the send button lights up and is pressed, the answer cards flip in.
Search with typo and fix
A search pill: the query is typed with one typo that is noticed and fixed, suggestions follow, the first one is picked.