micro-100-200ms — Claude Code skill: 100–200ms micro-interactions
A skill for micro-interactions in the 100–200ms range: tooltips, dropdown opens, small feedback. Helps pick timing and easing.
npx skills add dylantarre/animation-principles --skill micro-100-200ms -a claude-codeWhat micro-100-200ms does
The skill treats 100–200ms as the working range for micro-interactions: fast enough to feel responsive, slow enough to read as deliberate motion. It walks through animation principles at that time scale. What holds up: light squash & stretch at 5–10%, micro-anticipation of 20–30ms before a 150ms action, a single focal element, minimal overshoot of 2–5% that settles quickly. What doesn't: long travel distances, complex choreography, heavy physics, multi-stage reveals.
The hands-on part covers easing and a CSS pattern. For a standard micro-interaction it suggests transition: all 150ms ease-out; for appearing elements, split opacity 120ms ease-out and transform 150ms ease-out; for bouncy feedback, cubic-bezier(0.34, 1.56, 0.64, 1) at 180ms. In the example a tooltip starts at scale(0.95) with a translateY(-4px) offset, and a dropdown item starts at translateY(-8px).
The skill stays with simple transforms: scale, opacity, short translations. If an animation needs a long path or several sequential stages, this range won't carry it — you need a different time scale.
What it helps with
- pick a duration for a tooltip appearing
- make a dropdown open smoothly without dragging
- add hover feedback that doesn't feel sluggish
- animate an icon state change
- time a notification badge pop-in
Example prompts for the agent
- Animate the tooltip appearance in the 100–200ms range
- Pick an easing curve for the dropdown open
- Add a hover micro-animation to the button so it reads as intentional
How to install micro-100-200ms
1Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill micro-100-200ms -a claude-code2Manually: put the files in place
~/.claude/skills/micro-100-200ms/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/micro-100-200ms/
1Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill micro-100-200ms -a codex2Manually: put the files in place
.agents/skills/micro-100-200ms/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill micro-100-200ms -a cursor2Manually: put the files in place
.cursor/skills/micro-100-200ms/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install dylantarre/animation-principles micro-100-200ms2Manually: put the files in place
.github/skills/micro-100-200ms/SKILL.md1Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill micro-100-200ms -a gemini-cli2Platform CLI
gemini skills install https://github.com/dylantarre/animation-principles --path skills/10-by-time-scale/micro-100-200msManually: put the files in place
.devin/skills/micro-100-200ms/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill micro-100-200ms -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about micro-100-200ms
How do I install micro-100-200ms in Claude?
Run npx skills add dylantarre/animation-principles --skill micro-100-200ms -a claude-code. The skill file lands at ~/.claude/skills/micro-100-200ms/SKILL.md.
What does micro-100-200ms do?
It covers animation principles for micro-interactions in the 100–200ms range and gives easing recommendations with CSS examples.
Which elements suit this range?
Tooltips, dropdown menus, icon state changes, small hover animations, notification badges, tab switches and accordion headers.
Source text
SKILL.md · MIT
---
name: micro-100-200ms
description: Use when building micro-interactions between 100-200ms - tooltips appearing, dropdown opens, small feedback animations that feel quick but perceptible
---
# Micro Animations (100-200ms)
The 100-200ms range is the **sweet spot for micro-interactions**. Fast enough to feel responsive, slow enough to be perceived as intentional motion.
## Disney Principles at Micro Speed
### Works Well
**Squash & Stretch**: Light application - 5-10% works for bouncy buttons, appearing elements.
**Anticipation**: Micro-anticipation possible - 20-30ms wind-up before 150ms action.
**Staging**: Single focal point - one element moving, rest static.
**Straight Ahead/Pose to Pose**: Either works - simple enough for straight ahead, controlled enough for poses.
**Follow Through**: Minimal overshoot - 2-5% past target, settle quickly.
**Slow In/Slow Out**: `ease-out` dominates - elements should arrive confidently.
**Arcs**: Slight curves possible - dropdown items can arc subtly rather than straight down.
**Secondary Action**: One secondary max - icon rotates while menu opens.
**Timing**: 6-12 frames at 60fps. Enough for smooth motion.
**Exaggeration**: Moderate - scale 0.9-1.1, rotation up to 30 degrees.
**Solid Drawing**: Simple transforms - scale, opacity, short translations.
**Appeal**: Quick animations feel modern and polished.
### Doesn't Work
- Long travel distances
- Complex choreography
- Heavy physics simulations
- Multi-stage reveals
- Elaborate anticipation sequences
## Easing Recommendations
```css
/* Standard micro-interaction */
transition: all 150ms ease-out;
/* Appearing elements - start fast, land soft */
transition: opacity 120ms ease-out, transform 150ms ease-out;
/* Bouncy micro-feedback */
transition: transform 180ms cubic-bezier(0.34, 1.56, 0.64, 1);
```
## Best Use Cases
- Tooltip appearance
- Dropdown menus opening
- Icon state changes
- Small hover animations
- Notification badges
- Tab switches
- Accordion headers
## Implementation Pattern
```css
.tooltip {
opacity: 0;
transform: translateY(-4px) scale(0.95);
transition: opacity 120ms ease-out,
transform 150ms ease-out;
}
.trigger:hover .tooltip {
opacity: 1;
transform: translateY(0) scale(1);
}
.dropdown-item {
opacity: 0;
transform: translateY(-8px);
transition: all 150ms ease-out;
}
```
## Key Insight
Micro-animations are **felt more than watched**. Users notice when they're missing but don't consciously observe them. This is where polish lives.
© dylantarre · MIT · dylantarre/animation-principles