agentsclimarketplace

Motion design

Skill bharat3645/The-Ideal-Harness/skills/motion-design

Judge or write UI motion (CSS/JS animation, Framer Motion / Motion, transitions, micro-interactions) against context-weighted designer philosophies instead of one universal taste. Use whenever adding, reviewing, or auditing any animation — a hover effect, a page transition, a loading state, a modal enter/exit.From its SKILL.md

Install
npx -y skills add bharat3645/The-Ideal-Harness --skill motion-design

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 5 stars5 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

4.3 KB, as published. Nobody here has run it

Motion design

Static-visual taste (layout, color, type, spacing) is design-critique's job. This skill is the motion-specific fourth axis that skill doesn't cover: should this animate at all, and if so, how — adapted from kylezantos/design-motion-principles (MIT), which distills the publicly published work of three designers. The three-lens framing below is that skill's interpretation, named in tribute — not authored or endorsed by the designers themselves.

Step 0 — pick a mode

  • Create: "build", "animate this", "add a transition", "make it feel..." → write motion.
  • Audit: "review", "is this motion good", "check the animations" → evaluate existing motion.
  • Ambiguous → ask which, don't guess.

The three lenses — weight by context, don't apply one universally

LensQuestion it asksBest for
Restraint & speed (Emil Kowalski's public work — Linear, ex-Vercel)"Should this animate at all?"Productivity tools, high-frequency interactions
Production polish (Jakub Krehel's public work)"Is this subtle enough for production?"Shipped consumer apps, professional refinement
Creative experimentation (Jhey Tompkins's public work)"What could this become?"Portfolios, kids' apps, marketing delight moments

A SaaS dashboard should default restraint-primary, polish-secondary, experimentation only for empty states. A kids' app inverts that — polish and delight lead, restraint only for high-frequency in-game interactions. State which lens leads before writing or judging a single animation; the same modal deserves a different verdict in each context.

The frequency gate (the one rule that's closer to universal)

Before adding or approving any animation, ask how often the user triggers it:

FrequencyRecommendation
Rare (monthly)Delightful, expressive motion welcome
Occasional (daily)Subtle, fast
Frequent (100s/day)No animation, or an instant transition
Keyboard-initiatedNever animate

Duration — context-dependent, not a universal cap

Restraint contexts: under 300ms, 180ms ideal. Production-polish contexts: 200–500ms for smoothness. Creative/playful contexts: whatever serves the effect. Do not flag a duration without first establishing which lens leads — a blanket "animations must be under 200ms" rule is exactly the false-precision this skill exists to avoid.

The golden rule

"The best animation is that which goes unnoticed."

If every interaction draws a comment ("nice animation!"), it's probably too prominent for production — outside kids'/playful contexts, where noticing is the goal.

Motion-specific slop (Audit mode, in addition to design-critique's general slop gates)

  • Decorative-by-default motion with no interaction to justify it (a hero element animating in for no reason a user would name).
  • Every element springing in from scale(0) or opacity: 0 uniformly — the tell of a template, not a decision.
  • Pulsing/breathing indicators applied everywhere as a default "liveliness" pass.
  • Hover-scale on every clickable element regardless of size or context ("hover-scale-spam").
  • Uniform stagger on every list, whether or not sequence carries meaning.

Accessibility — not optional, no exceptions

Every animation, Create or Audit, must respect prefers-reduced-motion — either by removing non-essential motion under that media query, or substituting an instant/cross-fade equivalent. This is a hard rule, not a taste call; the deterministic check for it is guard's checkDesignTokens-adjacent motion-lint (see decisions.md D033).

Boundary

Like design-critique, this is judgment applied through a stated framework, not a deterministic gate — most of what's above (which lens leads, whether a duration serves its context) resists scoring the same way color-token drift doesn't. Compose with design-critique for the rest of a component's taste; don't duplicate its slop-gate or token-contract sections here.

Keep looking

Skills are one crate of 627,801. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.