Creates, reviews, and debugs UI motion and animation implementations. Covers springs, gestures, drag interactions, clip-path reveals, easing, timing, and animation review. Use when designing, implementing, or reviewing motion, CSS transitions, keyframes, framer-motion, spring animations, asking "add animations to", "make this feel smooth", "review my animations", "should this animate", or "add a swipe gesture".
Installation
Mit Codex oder Claude installieren Kopieren Sie diesen Prompt, fügen Sie ihn in Codex, Claude oder einen anderen Assistant ein und lassen Sie die Skill-Seite prüfen und installieren.
Creates, reviews, and debugs UI motion and animation implementations. Covers springs, gestures, drag interactions, clip-path reveals, easing, timing, and animation review. Use when designing, implementing, or reviewing motion, CSS transitions, keyframes, framer-motion, spring animations, asking "add animations to", "make this feel smooth", "review my animations", "should this animate", or "add a swipe gesture".
Avoid ease-in for UI. Prefer custom curves from easing.dev.
Spatial and sequencing
Set transform-origin at the trigger point for popovers; keep center for modals.
For dialogs/menus, start around scale(0.85–0.9). Never scale(0).
Stagger reveals at 30–50ms per item; total stagger under 300ms.
Accessibility
Gate hover animations behind @media (hover: hover) and (pointer: fine) to avoid false positives on touch.
During direct manipulation, keep the element locked to the pointer. Add easing only after release.
Performance
Only animate transform and opacity — these skip layout and paint.
Pause looping animations off-screen with IntersectionObserver.
Toggle will-change only during heavy motion and only for transform/opacity — remove after.
Do not animate drag gestures using CSS variables (triggers recalc on all children).
Motion x/y values are the normal choice for axis-based movement and drag. Use full transform strings when you need one transform owner for combined transforms or interop.