timing-principle-mastery — Claude Code skill: what it does & setup
Provides duration systems and pacing rules for interface transitions and character movement. Ideal when motion feels sluggish, abrupt, or lacks physical weight.
npx skills add dylantarre/animation-principles --skill timing-principle-mastery -a claude-codeWhat timing-principle-mastery does
This skill equips your coding agent with animation pacing rules rooted in physics and perception. It translates mass into duration, ensuring heavier elements build and lose momentum slowly while lightweight components react instantly. It also converts 24fps cinematic timing to 60fps real-time environments using a 2.5 multiplier.
The framework establishes distinct duration tiers for interface states. Instant button feedback falls into 0-100ms, while standard modal transitions target 200-300ms. Complex onboarding reveals use 300-500ms. When motion feels awkward, the guide advises testing durations that are 50% shorter or longer before rewriting transition curves.
Arbitrary duration values make interfaces feel erratic: the skill anchors movement to a 200ms base unit, applying 0.5, 1.5, and 2 multipliers to preserve visual hierarchy.
What it helps with
- calculate transition durations for modals and sidebars
- establish cohesive pacing around a 200ms base unit
- set instant feedback times for buttons within 0-100ms
- convert 24fps frame counts to 60fps animation durations
Example prompts for the agent
- Calculate the opening duration for a slide-over panel using the 200ms base unit.
- Suggest timing values for button click feedback and hover tooltips.
- Set character walk cycle frame counts for a 60fps game.
How to install timing-principle-mastery
1Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill timing-principle-mastery -a claude-code2Manually: put the files in place
~/.claude/skills/timing-principle-mastery/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/timing-principle-mastery/
1Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill timing-principle-mastery -a codex2Manually: put the files in place
.agents/skills/timing-principle-mastery/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill timing-principle-mastery -a cursor2Manually: put the files in place
.cursor/skills/timing-principle-mastery/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install dylantarre/animation-principles timing-principle-mastery2Manually: put the files in place
.github/skills/timing-principle-mastery/SKILL.md1Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill timing-principle-mastery -a gemini-cli2Platform CLI
gemini skills install https://github.com/dylantarre/animation-principles --path skills/11-by-principle-focus/timing-principle-masteryManually: put the files in place
.devin/skills/timing-principle-mastery/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill timing-principle-mastery -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 timing-principle-mastery
How to install timing-principle-mastery in Claude Code?
Run npx skills add dylantarre/animation-principles --skill timing-principle-mastery -a claude-code in your terminal.
What does the timing-principle-mastery skill do?
It provides animation timing standards that help agents determine accurate frame counts and millisecond durations for UI and motion design.
What is the recommended default duration for standard UI interactions?
The skill suggests starting with 200-300ms for common interactions like page transitions and modals.
Source text
SKILL.md · MIT
--- name: timing-principle-mastery description: Use when determining animation durations, controlling pacing, establishing rhythm, or making motion feel appropriately weighted and emotionally resonant. --- # Timing Mastery ## The Weight of Time Timing is the number of frames (or milliseconds) an action takes. It's deceptively simple—just duration—yet it communicates weight, emotion, and energy more powerfully than any other principle. Change the timing, change the meaning. ## Core Theory **Physical communication**: Timing tells us about mass and force. Heavy objects start slow, stop slow. Light objects respond instantly. A bowling ball and a balloon falling the same distance—timing alone differentiates them. **Emotional communication**: Timing tells us about character state. Sluggish timing reads as tired, depressed, or massive. Snappy timing reads as alert, nervous, or lightweight. ## The Frame Rate Foundation At 24fps (film standard): - 1-2 frames: Instantaneous (impacts, pops) - 4-6 frames: Quick (snappy responses) - 8-12 frames: Standard (natural movement) - 16-24 frames: Deliberate (weighted, considered) - 24-48 frames: Slow (dramatic, heavy) - 48+ frames: Very slow (massive, underwater, dream-like) At 60fps (UI/games), multiply by 2.5 for equivalent feels. ## Timing Categories **Physical timing**: Governed by mass, gravity, and force (objective) **Theatrical timing**: Governed by story needs and emotional beats (subjective) **Musical timing**: Governed by rhythm and tempo (structural) **UI timing**: Governed by responsiveness and user perception (functional) ## Interaction with Other Principles **Slow in/slow out is timing's texture**: The overall duration and the internal spacing work together. **Anticipation affects timing perception**: A long wind-up makes subsequent action feel faster. **Staging uses timing for hierarchy**: Important elements move on different timing than subordinate ones. **Exaggeration often means timing exaggeration**: Stretched holds, compressed actions. ## Domain Applications ### UI/Motion Design - **Instant (0-100ms)**: Button feedback, toggle switches—no perceptible delay - **Quick (100-200ms)**: Micro-interactions, hover states—responsive but visible - **Standard (200-300ms)**: Page transitions, modals—comfortable, comprehensible - **Deliberate (300-500ms)**: Complex transitions, onboarding—time to absorb - **Slow (500ms+)**: Dramatic reveals, ambient animation—contemplative ### Character Animation - **Personality through timing**: Bouncy = fast timing; grumpy = slow timing - **Mass through timing**: Elephant walk = 24+ frames per step; mouse = 4-6 frames - **Emotional state**: Depression slows timing; excitement speeds it - **Age indication**: Young = snappy recovery; old = slow, deliberate ### Motion Graphics - **Rhythm establishment**: Consistent timing creates beat - **Contrast through timing**: Slow builds, fast reveals - **Musical sync**: Animation locked to audio tempo ### Game Design - **Responsiveness**: Input-to-response timing defines "game feel" - **Hit stop**: Momentary pause on impact (adds weight) - **Juice**: Quick, satisfying timing on feedback events ## Common Mistakes 1. **Uniform timing**: Everything same duration feels monotonous 2. **Too fast**: Motion becomes invisible, jerky, unpleasant 3. **Too slow**: Interface feels sluggish, unresponsive 4. **Ignoring context**: Casual game timing in enterprise software ## The Timing Contrast Principle Timing gains meaning through contrast. A fast action feels fast because something before it was slow. A held pose feels dramatic because motion surrounds it. Monotonous timing lacks emphasis. ## The Duration Hierarchy Create timing systems where relationships are consistent: - Base unit (e.g., 200ms) - Quick = base × 0.5 (100ms) - Slow = base × 1.5 (300ms) - Dramatic = base × 2 (400ms) Systematic timing feels cohesive; random durations feel chaotic. ## The Hold One of timing's most powerful tools is the absence of motion. Held poses create: - Emphasis (letting a moment land) - Anticipation (pregnant pause before action) - Readability (time for audience to register) Never underestimate the power of stillness. ## Implementation Heuristic Start with 200-300ms as default duration for standard interactions. Adjust based on: mass (heavier = longer), distance (further = longer), importance (crucial = longer to register), emotional tone (playful = snappier). When something feels "off," timing is often the culprit—experiment with 50% shorter and 50% longer before other adjustments.
© dylantarre · MIT · dylantarre/animation-principles