animation-systems
3
总安装量
3
周安装量
#58756
全站排名
安装命令
npx skills add https://github.com/mengto/skills --skill animation-systems
Agent 安装分布
opencode
3
gemini-cli
3
antigravity
3
claude-code
3
codex
3
kiro-cli
3
Skill 文档
Animation Systems (Stripe à Linear à Apple à Vercel)
This skill helps you ship tasteful, product-grade motion. Not âmore animation.â Better animation: clarity, hierarchy, feedback, and delightâwithout jank.
The goals (why motion exists)
Use animation to:
- Explain hierarchy (what matters)
- Confirm action (feedback)
- Guide attention (where to look next)
- Maintain continuity (spatial relationships)
- Add polish (craft signals)
If an animation doesnât serve one of these, delete it.
The Stripe/Linear/Apple/Vercel style (shared traits)
1) Restraint
- Fewer animations, better chosen.
- One strong hero moment; the rest is supporting motion.
2) Clear choreography
- Primary element moves first.
- Secondary elements follow with small stagger.
- Motion establishes a âreading order.â
3) Physical but not cartoony
- Use easing that feels human (soft acceleration + gentle settle).
- Avoid bouncy defaults for serious product UI.
4) Texture + depth (subtle)
- Small parallax, soft shadows, blur fades, light beams.
- Avoid heavy 3D unless itâs the hero.
Motion primitives (build these first)
Think in primitives you can reuse everywhere.
A) Fade + rise (default entrance)
Use for: text blocks, cards, modals.
- Opacity: 0 â 1
- Y: 12â24px â 0
- Duration: 300â700ms depending on size
B) Scale + fade (micro emphasis)
Use for: popovers, toasts, selected states.
- Scale: 0.98 â 1
- Opacity: 0 â 1
C) Slide (navigation)
Use for: drawers, step transitions.
- Use transform translate; avoid animating layout.
D) Morph / shared element (high craft)
Use for: tab indicators, expanding cards.
- Requires consistent geometry + measured layout.
Defaults (practical numbers)
Use these as a starting system.
Durations (rule of thumb)
- Micro (hover/press): 120â200ms
- UI state change (toggle, select): 180â260ms
- Small transitions (popover, toast): 220â320ms
- Page section entrance: 400â800ms
- Hero sequences: 800â1600ms (with internal beats)
Easing (safe set)
Pick a small set and reuse.
- UI: ease-out with gentle settle
- Emphasis: slightly stronger ease
- Entering: ease-out
- Exiting: ease-in (faster)
If implementing:
- Use your animation libraryâs âpower2.out / expo.outâ equivalents.
- Avoid elastic/bounce unless brand is playful.
Stagger
- 40â90ms per element (text lines/cards)
- Use smaller stagger on mobile
Choreography patterns
1) âHero â supporting elementsâ
- Hero visual animates in first.
- Headline appears next.
- CTA appears last.
2) âSection reveal on scrollâ
- Trigger when section is ~20â30% visible.
- Animate once (donât replay on tiny scroll).
3) âHover: lift + glowâ
- Y: -2 to -6px
- Shadow: subtle increase
- Optional: border/gradient glow
4) âFocus ring + micro shiftâ
- For form fields: focus ring + tiny scale/translate for responsiveness.
Performance rules (nonânegotiable)
Animate the right properties
Prefer:
transform(translate/scale/rotate)opacity
Avoid (unless necessary):
- width/height/top/left
- expensive filters on large areas
Respect the GPU
- Clamp device pixel ratio in heavy canvases (1â2)
- Keep blur subtle and small
- Avoid many simultaneous animated shadows
Reduce reflows
- Donât measure layout every frame.
- For scroll effects, use a library that batches reads/writes.
Accessibility: Reduced Motion
Always support prefers-reduced-motion.
Policy:
- Keep content visible.
- Replace motion with instant state + subtle opacity.
- Disable scroll-scrub/pin.
Ask the user:
- âDo you want a reduced-motion mode that disables all non-essential motion?â
Implementation guidance (library-agnostic)
For simple sites
- CSS transitions for small hovers/toggles.
- Use a single motion library (GSAP or Framer Motion) for complex sequences.
For product sites
- Create a motion token set:
- durations
- easing curves
- standard offsets (8/16/24px)
- stagger defaults
For hero moments
- Use timelines (or keyframes) with labeled beats.
- Lock camera/scene movement first, then layer text.
What to ask the user
- Whatâs the brand lane: Stripe (polished), Linear (minimal), Apple (cinematic), Vercel (developer/product)?
- What are the key moments? (hero, scroll story, hover cards, nav transitions)
- Any performance constraints? (mobile, low-end devices)
- Reduced motion requirements?
Output format (when asked to âadd Stripe/Linear-style animationâ)
Return:
- Motion goals (what weâre trying to communicate)
- Motion tokens (durations + easing + offsets)
- A choreography plan (timeline beats)
- Implementation notes (perf + reduced motion)
- A small code recipe (CSS or GSAP/Framer depending on stack)