Home Sitemap

v0.1 · 2026-04-29

Motion

Motion is when and how a surface changes in response to input. One easing curve, two durations, three values.

What motion is

Motion is when and how a surface changes in response to input. The parameter takes three values: still, responsive, and animated. Each value fixes its own duration, easing, allowed properties, and triggers. Motion never fires on page load and never fires on a timer; every animation is bound to a user-initiated trigger — hover, focus, click, a state change, or (for animated surfaces) a panel reveal.

Three values

valuedurationeasingallowed propertiestriggers
stillnonenone
responsive120 mscubic-bezier(.2, .6, .2, 1)color · border-color · background-color · opacityhover · focus · click · state change
animated120 or 220 mscubic-bezier(.2, .6, .2, 1)color · border-color · background-color · transform · opacityhover · focus · click · state change · panel reveal

A still surface has no motion — no transitions, no animations, and no visible change on interaction. A responsive surface permits 120 ms transitions on four colour and opacity properties, triggered by user interaction only. An animated surface adds 220 ms motion on transform and extends triggers to include panel reveals.

Easing

One curve governs all motion. The easing is fixed at cubic-bezier(.2, .6, .2, 1) across responsive and animated values. It accelerates into motion and decelerates out, crossing halfway of the output before halfway of the duration. The exhibit below renders the curve read directly from the motion parameter’s declaration in @vaquum/face/parameters/motion.

Triggers

Allowed triggers are hover, focus, click, state change, and — for animated surfaces — panel reveal. Page load and timer-fired events are both forbidden as motion triggers. The firm’s surfaces do not draw the reader’s eye toward motion that fires without the reader’s action.

responsive · 120 ms · cubic-bezier(.2, .6, .2, 1)

0 0.5 1 0 0.5 1 time output
The responsive easing accelerates into motion and decelerates out, crossing the halfway output before time reaches halfway.