Agent Skills: Joy & Delight Animation

Use when creating animations that evoke happiness, surprise, or delightful moments in the user experience.

UncategorizedID: dylantarre/animation-principles/joy-delight

Install this agent skill to your local

pnpm dlx add-skill https://github.com/dylantarre/animation-principles/tree/HEAD/skills/06-by-emotional-outcome/joy-delight

Skill Files

Browse the full folder contents for joy-delight.

Download Skill

Loading file tree…

skills/06-by-emotional-outcome/joy-delight/SKILL.md

Skill Metadata

Name
joy-delight
Description
Use when creating animations that evoke happiness, surprise, or delightful moments in the user experience.

Joy & Delight Animation

Create animations that spark happiness, pleasant surprise, and memorable delight.

Emotional Goal

Joy emerges from unexpected pleasures, playful movements, and moments that exceed expectations. Delight comes from animations that feel alive, responsive, and genuinely fun.

Disney Principles for Joy

Squash & Stretch

Exaggerate bouncy, elastic movements. Objects that squash 30-40% on impact feel alive and playful. Use for success states, rewards, and celebrations.

Anticipation

Build excitement before reveals. A slight pullback (100-150ms) before a pop-in creates satisfying payoff. Perfect for notifications and achievements.

Staging

Draw focus to joyful moments. Clear visual hierarchy ensures the delightful element gets full attention. Dim surroundings during celebration animations.

Straight Ahead Action

Create spontaneous, organic movements for confetti, particles, and celebration effects. Randomized paths feel natural and exciting.

Follow Through & Overlapping Action

Let elements overshoot and settle with bouncy secondary motion. Hair, ribbons, and decorative elements should continue moving after main action.

Slow In & Slow Out

Use asymmetric easing—quick starts with slow, satisfying landings. cubic-bezier(0.34, 1.56, 0.64, 1) creates playful overshoot.

Arc

Bouncing, curved trajectories feel more joyful than linear paths. Elements should travel in parabolic arcs during celebrations.

Secondary Action

Add sparkles, particles, or wobbles to primary animations. A "like" heart that radiates small hearts amplifies joy.

Timing

Fast, snappy timing (150-250ms) feels energetic. Quick bursts with micro-pauses create rhythm. Success animations: 200-400ms.

Exaggeration

Push proportions and movements 20-30% beyond realistic. Oversized bounces, stretched smiles, and amplified reactions.

Solid Drawing

Maintain volume during stretchy movements. Squashed elements should expand horizontally to preserve mass—this reads as physicality.

Appeal

Round shapes, bright colors, and smooth curves. Asymmetry in timing and position adds character and charm.

Timing Recommendations

| Element | Duration | Easing | |---------|----------|--------| | Pop-in | 200-300ms | ease-out-back | | Bounce | 300-500ms | spring(1, 80, 10) | | Confetti | 800-1200ms | ease-out | | Celebration | 400-600ms | ease-out-elastic |

CSS Easing

--joy-bounce: cubic-bezier(0.34, 1.56, 0.64, 1);
--joy-pop: cubic-bezier(0.175, 0.885, 0.32, 1.275);
--joy-elastic: cubic-bezier(0.68, -0.55, 0.265, 1.55);

When to Use

  • Success confirmations and completions
  • Achievement unlocks and rewards
  • Onboarding celebrations
  • Easter eggs and surprises
  • Positive feedback states
  • Welcome animations