Skip to main content
skill CX Codex

playfulness-fun — Claude Code skill: playful animations

A skill for animations that entertain: exaggerated bounces, wiggles and springy easing. Useful for games, onboarding and empty states.

Install into Claude Code · Skills CLI (Vercel) All methods and platforms ↓
npx skills add dylantarre/animation-principles --skill playfulness-fun -a claude-code
Open on GitHub

What playfulness-fun does

The skill spells out how to build motion with personality: generous squash and stretch (25–40%), oversized wind-ups before an action, and plenty of secondary movement like wiggles and sparkles. Everything travels along arcs. Nothing moves in a straight line. A bounce should feel like a beach ball.

Inside you get a timing table and a set of CSS curves. Bounce suggests 400–600ms with spring(1, 60, 8), wiggle 300–400ms with ease-in-out, pop 150–250ms with ease-out-back. For elastic motion there are custom properties --play-bounce, --play-elastic, --play-wobble plus ready @keyframes for wiggle and boing.

The skill installs into Claude, Codex, Cursor, GitHub Copilot, Gemini CLI and OpenCode. Most platforms use npx skills add; GitHub Copilot goes through gh skill install. If your project already has a design system with tight timing rules, these exaggerated values will fight it, so plan to reconcile the two before shipping.

What it helps with

  • liven up an empty state screen
  • animate a like or follow reaction
  • add a character to an onboarding tour
  • build a bounce for a game button
  • hide an easter egg in the UI

Example prompts for the agent

  • Build a bounce animation for the like button using the playfulness-fun skill
  • Add a wiggle to the icon on hover, use the curves from playfulness-fun
  • Liven up the empty state with a pop and sparkles, as playfulness-fun suggests

How to install playfulness-fun

1Skills CLI (Vercel)

npx skills add dylantarre/animation-principles --skill playfulness-fun -a claude-code

2Manually: put the files in place

~/.claude/skills/playfulness-fun/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/playfulness-fun/

Step by step, with commands for each platform: How to install skills in Claude Code: five ways

Questions about playfulness-fun

How do I install playfulness-fun in Claude?

Run npx skills add dylantarre/animation-principles --skill playfulness-fun -a claude-code. The skill file lands at ~/.claude/skills/playfulness-fun/SKILL.md.

What does playfulness-fun do?

It sets rules for playful motion: exaggerated squash and stretch, long wind-ups, arcs instead of straight lines, and abundant secondary action. It ships a timing table plus CSS curves and @keyframes.

Which platforms does the skill support?

Claude, Codex, Cursor, GitHub Copilot, Gemini CLI and OpenCode. Each has its own install command, for example gh skill install dylantarre/animation-principles playfulness-fun for GitHub Copilot.

Source text

SKILL.md · MIT
---
name: playfulness-fun
description: Use when creating animations that entertain, engage with humor, or create lighthearted interactive experiences.
---

# Playfulness & Fun Animation

Create animations that entertain, surprise, and make interactions genuinely enjoyable.

## Emotional Goal

Playfulness invites interaction through unexpected, whimsical motion. Fun comes from animations that have personality, respond expressively, and make users smile.

## Disney Principles for Playfulness

### Squash & Stretch
Generous, exaggerated (25-40%). Rubbery, cartoon physics. Objects should feel alive and reactive. Bounce like a beach ball.

### Anticipation
Exaggerated wind-ups (150-250ms). Comic timing—big preparation for big payoff. Elements "think" before acting.

### Staging
Theatrical presentation. Clear setup and punchline. Give playful moments room to breathe and be noticed.

### Straight Ahead Action
Embrace spontaneity. Wobbly paths, unpredictable bounces. Characters and elements with minds of their own.

### Follow Through & Overlapping Action
Extensive, bouncy follow-through. Overshoots, wobbles, and settling. Like a cartoon character skidding to a stop.

### Slow In & Slow Out
Asymmetric with overshoot. Quick starts, bouncy landings. `cubic-bezier(0.68, -0.55, 0.265, 1.55)` for elastic effect.

### Arc
Exaggerated, bouncy curves. High arcs for jumps. Squiggly paths for personality. Nothing moves in straight lines.

### Secondary Action
Abundant! Wiggles, sparkles, expressions. Elements react to each other. The whole interface feels alive.

### Timing
Varied and expressive (100-500ms). Quick snaps, slow anticipation. Comic timing with beats and pauses.

### Exaggeration
High (30-50%). Push movements to cartoon levels. Impossible physics that feel emotionally true.

### Solid Drawing
Maintain appeal through deformation. Stretched elements stay charming. Volume shifts for effect.

### Appeal
Round, friendly shapes. Bright, saturated colors. Big eyes, expressive forms. Character in everything.

## Timing Recommendations

| Element | Duration | Easing |
|---------|----------|--------|
| Bounce | 400-600ms | `spring(1, 60, 8)` |
| Wiggle | 300-400ms | `ease-in-out` |
| Pop | 150-250ms | `ease-out-back` |
| Squash | 100-150ms | `ease-out` |

## CSS Easing

```css
--play-bounce: cubic-bezier(0.68, -0.55, 0.265, 1.55);
--play-elastic: cubic-bezier(0.34, 1.56, 0.64, 1);
--play-wobble: cubic-bezier(0.45, 0.05, 0.55, 0.95);
```

## Fun Animations

```css
@keyframes wiggle {
  0%, 100% { transform: rotate(0deg); }
  25% { transform: rotate(-5deg); }
  75% { transform: rotate(5deg); }
}

@keyframes boing {
  0% { transform: scale(1); }
  30% { transform: scale(1.25, 0.75); }
  50% { transform: scale(0.85, 1.15); }
  70% { transform: scale(1.05, 0.95); }
  100% { transform: scale(1); }
}
```

## When to Use

- Games and gamification
- Children's interfaces
- Social media reactions
- Onboarding tutorials
- Empty states
- Easter eggs
- Casual apps
- Entertainment platforms

© dylantarre · MIT · dylantarre/animation-principles

Similar skills

Everything for Frontend and UI →

From the same set86

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor