Design, implement, and review UI animations with accessibility and performance best practices.
Works with
Covers CSS transitions, keyframes, Framer Motion, and spring animations with guidance on easing curves, timing (200โ300ms standard), and transform-based motion
Enforces prefers-reduced-motion support, touch-device hover handling, and keyboard interaction rules to ensure accessible motion
Provides anti-patterns to avoid: transition: all , layout property animation, permanent will-change , an
AI-first code editor with Composer
Before installing skills in Cursor, ensure your development environment meets these requirements:
node --versionui-animationExecute the skills CLI command in your project's root directory to begin installation:
Fetches ui-animation from mblode/agent-skills and configures it for Cursor.
The CLI shows a list of agents. Use arrow keys and space to select Cursor:
Confirm successful installation by checking the skill directory location:
Restart Cursor to activate ui-animation. Access via /ui-animation in your agent's command palette.
We perform automated surface-level scans (Gen AI Scanner, Socket, Snyk) during installation. These checks detect common vulnerabilities but do not guarantee complete security. Always review skill source code and verify the publisher's reputation before production use.
Skills execute code in your environment. Always review source, verify the publisher, and test in isolation before production.
Submit your Claude Code skill and start earning
Automate repetitive workflows and reduce manual effort
Example
Generate reports, summarize documents, draft communications
Save 3-5 hours per week on routine tasks
Learn new skills, understand complex topics, get expert guidance
Example
Explain concepts, provide examples, suggest learning resources
Accelerate learning and skill development by 2x
Enhance output quality through reviews, suggestions, and refinements
Example
Review drafts, suggest improvements, catch errors
Improve work quality by 30-40% with less effort
181
total installs
181
this week
22
GitHub stars
0
upvotes
Run in your terminal
181
installs
181
this week
22
stars
| File | Read when |
|---|---|
| references/decision-framework.md | Default: animation decisions, easing, and duration |
| references/spring-animations.md | Using spring physics, framer-motion useSpring, configuring spring params |
| references/component-patterns.md | Building buttons, popovers, tooltips, drawers, modals, toasts with animation |
| references/clip-path-techniques.md | Using clip-path for reveals, tabs, hold-to-delete, comparison sliders |
| references/gesture-drag.md | Implementing drag, swipe-to-dismiss, momentum, pointer capture |
| references/performance-deep-dive.md | Debugging jank, CSS vs JS, WAAPI, CSS variables trap, Framer Motion caveats |
| references/review-format.md | Reviewing animation code โ Before/After/Why table and issue checklist |
| references/contextual-animations.md | Implementing contextual icon swaps, word-level stagger entrances, or fixed-offset exit animations |
@starting-style for DOM entry animations; fall back to data-mounted.filter: blur(2px) can hide rough crossfades.transform and opacity only.color, background-color, and opacity are acceptable.width, height, top, left); never use transition: all.filter animation for core interactions; keep blur <= 20px if unavoidable.<g> wrapper with transform-box: fill-box; transform-origin: center.[data-theme-switching] * { transition: none !important }).| Element | Duration | Easing |
|---|---|---|
| Button press feedback | 100โ160ms | cubic-bezier(0.22, 1, 0.36, 1) |
| Tooltips, small popovers | 125โ200ms | ease-out or enter curve |
| Dropdowns, selects | 150โ250ms | cubic-bezier(0.22, 1, 0.36, 1) |
| Modals, drawers | 200โ350ms | cubic-bezier(0.22, 1, 0.36, 1) |
| Move/slide on screen | 200โ300ms | cubic-bezier(0.25, 1, 0.5, 1) |
| Simple hover (colour/opacity) | 200ms | ease |
| Illustrative/marketing | Up to 1000ms | Spring or custom |
Named curves
cubic-bezier(0.22, 1, 0.36, 1) โ entrances and transform-based hovercubic-bezier(0.25, 1, 0.5, 1) โ slides, drawers, panelscubic-bezier(0.32, 0.72, 0, 1)Avoid ease-in for UI. Prefer custom curves from easing.dev.
transform-origin at the trigger point for popovers; keep center for modals.scale(0.85โ0.9). Never scale(0).@media (hover: hover) and (pointer: fine) to avoid false positives on touch.transform and opacity โ these skip layout and paint.IntersectionObserver.will-change only during heavy motion and only for transform/opacity โ remove after.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.transition: all โ triggers layout recalc and animates unintended properties.width, height, top, left) for interactive feedback.ease-in for UI entrances โ feels sluggish.scale(0) โ nothing in the real world appears from nothing. Use scale(0.85โ0.95).will-change โ toggle it only during heavy motion.x/y props with a handwritten transform string on the same element.Copy and track this checklist:
Animation progress:
- [ ] Step 1: Decide whether the interaction should animate
- [ ] Step 2: Choose purpose, easing, and duration
- [ ] Step 3: Pick the implementation style
- [ ] Step 4: Load the relevant component or technique reference
- [ ] Step 5: Validate timing, interruption, and device behavior
width, height, top, left).will-change is toggled only during animation, not permanently set.Prerequisites
Time Estimate
15-45 minutes depending on use case complexity
Steps
Common Pitfalls
โ Do
โ Don't
๐ก Pro Tips
โ Use when
Use when skill capabilities match your task, clear ROI on time saved, and you can validate outputs. Best for repetitive tasks, learning, and quality improvement.
โ Avoid when
Avoid when task requires deep expertise you can't validate, involves sensitive decisions, or when learning process is more valuable than speed of completion.
diffusionstudio/lottie
anthropics/claude-code
github/awesome-copilot
leonxlnx/taste-skill
sickn33/antigravity-awesome-skills
erichowens/some_claude_skills
ui-animation fits our agent workflows well โ practical, well scoped, and easy to wire into existing repos.
Useful defaults in ui-animation โ fewer surprises than typical one-off scripts, and it plays nicely with `npx skills` flows.
I recommend ui-animation for anyone iterating fast on agent tooling; clear intent and a small, reviewable surface area.
ui-animation is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.
ui-animation is among the better-maintained entries we tried; worth keeping pinned for repeat workflows.
We added ui-animation from the explainx registry; install was straightforward and the SKILL.md answered most questions upfront.
Keeps context tight: ui-animation is the kind of skill you can hand to a new teammate without a long onboarding doc.
Registry listing for ui-animation matched our evaluation โ installs cleanly and behaves as described in the markdown.
ui-animation fits our agent workflows well โ practical, well scoped, and easy to wire into existing repos.
Solid pick for teams standardizing on skills: ui-animation is focused, and the summary matches what you get after install.
showing 1-10 of 42