Build interface motion that would pass a strict review. Decides whether something should animate at all, names its purpose, picks the cheapest tool, the right properties, the curve, the duration or spring, the origin, how it interrupts and how it exits, then writes the implementation with reduced-motion built in. Use when asked to animate, add motion, add a transition, make something feel alive, or when building any component that enters, exits, moves or changes state. For scroll-driven and WebGL work use scroll-and-webgl.