What problem does it solve? Deciding whether and how to animate a UI element is error-prone: wrong easings, sluggish durations, layout-thrashing properties, and missing reduced-motion support make interfaces feel cheap. This Skill turns a motion request into a reviewed implementation by walking a fixed decision sequence — should it animate, what purpose, which tool, which properties, which curve and duration, how it interrupts and exits. ## Core Features & Use Cases - Gated decision sequence: Rejects animations for high-frequency or keyboard-triggered actions before writing any code, and names the purpose (feedback, spatial consistency, state indication) before choosing ingredients. - Opinionated implementation rules: Enforces transform/opacity-only properties, strong custom cubic-bezier curves, sub-300ms UI durations, transform-origin at the trigger, and springs for interruptible gestures. - Ready-to-build recipes: RECIPES.md provides implementations for button press, dropdown, tooltip, modal, drawer, toast, accordion, stagger, hold-to-confirm, tab indicator, scroll reveal, and drag-to-dismiss. - Use Case: Ask to animate a dropdown menu, and receive CSS using var(--transform-origin), a 200ms strong ease-out, scale(0.95) entry, plus reduced-motion and hover gating shipped together. ## Quick Start Ask the agent to animate a component, for example: add an entrance animation to my modal dialog with a backdrop fade.