2026-04-12
Animation as a language, not a layer
Treating motion as part of the typography system instead of a coat of polish you sprinkle on at the end.
Motion is too often the last thing teams ship. Pages get built, then a sprint is set aside to "polish the animations." That order is the bug.
The Lando Norris site, the awwwards-tier portfolios that go viral every month, the websites of certain publications — they treat motion as part of the typographic system. Reveal timing is as load-bearing as line-height. The power3.out curve that pulls a headline into view is communicating something about how confident the brand is.
The pattern that works
- Decide on motion tokens at the same time as color and type.
- Write reusable primitives (
<RevealText>,<MagneticButton>) before you write a single page. - Always implement
prefers-reduced-motionin the same commit as the animation, not later.
Motion that respects users is motion you can ship.