Files
agent-skills/skills/ui-animation/SKILL.md
Jason Woltje 861b28b965 feat: Expand fleet to 23 skills across all domains
New skills (14):
- nestjs-best-practices: 40 priority-ranked rules (kadajett)
- fastapi: Pydantic v2, async SQLAlchemy, JWT auth (jezweb)
- architecture-patterns: Clean Architecture, Hexagonal, DDD (wshobson)
- python-performance-optimization: Profiling and optimization (wshobson)
- ai-sdk: Vercel AI SDK streaming and agent patterns (vercel)
- create-agent: Modular agent architecture with OpenRouter (openrouterteam)
- proactive-agent: WAL Protocol, compaction recovery, self-improvement (halthelobster)
- brand-guidelines: Brand identity enforcement (anthropics)
- ui-animation: Motion design with accessibility (mblode)
- marketing-ideas: 139 ideas across 14 categories (coreyhaines31)
- pricing-strategy: SaaS pricing and tier design (coreyhaines31)
- programmatic-seo: SEO at scale with playbooks (coreyhaines31)
- competitor-alternatives: Comparison page architecture (coreyhaines31)
- referral-program: Referral and affiliate programs (coreyhaines31)

README reorganized by domain: Code Quality, Frontend, Backend,
Auth, AI/Agent Building, Marketing, Design, Meta.

Mosaic Stack is not limited to coding — the Orchestrator serves
coding, business, design, marketing, writing, logistics, and analysis.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-02-16 16:22:53 -06:00

2.3 KiB

name, description
name description
ui-animation Guidelines and examples for UI motion and animation. Use when designing, implementing, or reviewing motion, easing, timing, reduced-motion behaviour, CSS transitions, keyframes, framer-motion, or spring animations.

UI Animation

Core rules

  • Animate to clarify cause/effect or add deliberate delight.
  • Keep interactions fast (200-300ms; up to 1s only for illustrative motion).
  • Never animate keyboard interactions (arrow-key navigation, shortcut responses, tab/focus).
  • Prefer CSS; use WAAPI or JS only when needed.
  • Make animations interruptible and input-driven.
  • Honor prefers-reduced-motion (reduce or disable).

What to animate

  • For movement and spatial change, animate only transform and opacity.
  • For simple state feedback, color, background-color, and opacity transitions are acceptable.
  • Never animate layout properties; never use transition: all.
  • Avoid filter animation for core interactions; if unavoidable, keep blur <= 20px.
  • SVG: apply transforms on a <g> wrapper with transform-box: fill-box; transform-origin: center.
  • Disable transitions during theme switches.

Spatial and sequencing

  • Set transform-origin at the trigger point.
  • For dialogs/menus, start around scale(0.85-0.9); avoid scale(0).
  • Stagger reveals <= 50ms.

Easing defaults

  • Enter and transform-based hover: cubic-bezier(0.22, 1, 0.36, 1).
  • Move: cubic-bezier(0.25, 1, 0.5, 1).
  • Simple hover colour/background/opacity: 200ms ease.
  • Avoid ease-in for UI (feels slow).

Accessibility

  • If transform is used, disable it in prefers-reduced-motion.
  • Disable hover transitions on touch devices via @media (hover: hover) and (pointer: fine).

Performance

  • Pause looping animations off-screen.
  • Toggle will-change only during heavy motion and only for transform/opacity.
  • Prefer transform over positional props in animation libraries.
  • Do not animate drag gestures using CSS variables.

Reference

Workflow

  1. Start with the core rules, then pick a reference snippet from examples.md.
  2. Keep motion functional; honor prefers-reduced-motion.
  3. When reviewing, cite file paths and line numbers and propose concrete fixes.