Skip to main content
skill CX Codex

icons-badges — Claude Code skill: animate icons and badges

A skill for animating icons, badges, avatars and status indicators. Useful when small UI elements need to feel responsive and give feedback.

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

What icons-badges does

The skill maps Disney's 12 animation principles onto small UI elements: icons, badges, avatars, status indicators. A heart squashes and stretches on a like tap, a notification badge bounces on arrival, a bell swings along a pendulum arc. Your agent gets a set of rules for picking motion per element instead of guessing.

Inside are the principles with timings plus ready CSS snippets. Icon hover uses ease-out, click uses ease-in-out, badge bounce uses cubic-bezier(0.68, -0.55, 0.27, 1.55) for overshoot. There are @keyframes for the badge bounce, a status pulse and a bell ring. It works through transform, opacity, animation, and for SVG through fill, stroke and filter.

One limit worth knowing: this is principles and examples, not a component library. Functional icons like menu and close should stay subtle, while celebratory ones — confetti, hearts — can go big. If your SVGs have heavy strokes, check that the icon stays crisp on every frame; the solid drawing principle is exactly about that.

What it helps with

  • make a like icon react on tap
  • add a bounce to a notification counter
  • pulse a status indicator
  • pick timing and easing for icon hover
  • sync motion across a multi-part icon

Example prompts for the agent

  • Animate the like icon with a squash on press and a springy bounce back
  • Give the notification badge a bounce with overshoot when it appears
  • Set up a pulsing status indicator and a bell ring along an arc

How to install icons-badges

1Skills CLI (Vercel)

npx skills add dylantarre/animation-principles --skill icons-badges -a claude-code

2Manually: put the files in place

~/.claude/skills/icons-badges/SKILL.md

Copy the whole skill folder; for one project use .claude/skills/icons-badges/

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

Questions about icons-badges

How do I install icons-badges in Claude?

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

What does icons-badges do?

It gives your agent rules for animating small UI elements: icons, badges, avatars, status indicators. It ships the 12 animation principles with timings and CSS examples.

Which platforms does the skill support?

Claude, Codex, Cursor, GitHub Copilot, Gemini CLI and OpenCode. Each platform has its own install command and skill file path.

Source text

SKILL.md · MIT
---
name: icons-badges
description: Use when animating icons, badges, avatars, status indicators, or small visual elements to add personality and feedback
---

# Icon & Badge Animation Principles

Apply Disney's 12 principles to small UI elements for personality and meaningful feedback.

## Principles Applied to Icons

### 1. Squash & Stretch
Heart icons can squash/stretch on "like" tap. Notification badges can bounce with squash on arrival. Adds life to small elements.

### 2. Anticipation
Before icon action, brief scale down (0.9) for 50ms. Bell can tilt back before ringing forward. Prepares for action.

### 3. Staging
Active/important icons should be visually prominent: color, size, or animation. Badges use contrasting colors to stand out.

### 4. Straight Ahead & Pose to Pose
Simple icons use pose-to-pose (two states). Complex icon animations (morphing) can use straight-ahead for organic transitions.

### 5. Follow Through & Overlapping Action
Bell ring continues after user interaction stops. Badge number updates before badge bounce settles. Multi-part icons offset timing.

### 6. Ease In & Ease Out
Icon hover: `ease-out`. Icon click: `ease-in-out`. Bounce: `cubic-bezier(0.68, -0.55, 0.27, 1.55)` for overshoot.

### 7. Arcs
Bell swinging follows pendulum arc. Refresh icons spin in true circular arcs. Arrows can arc during state changes.

### 8. Secondary Action
While icon scales (primary), color changes (secondary), glow pulses (tertiary). Badge count changes while badge bounces.

### 9. Timing
- Hover scale: 100-150ms
- Click feedback: 50-100ms
- Badge bounce: 300-400ms
- Bell ring: 400-600ms
- Status pulse: 1500-2500ms
- Morph transition: 250-350ms

### 10. Exaggeration
Celebratory icons (confetti, hearts) can be very animated. Functional icons (menu, close) should be subtle. Match purpose.

### 11. Solid Drawing
Icons must remain crisp at all animation frames. Maintain stroke consistency. Badge numbers should be legible during motion.

### 12. Appeal
Animated icons add personality. A bouncing notification feels alive. A pulsing status feels responsive. Small touches matter greatly.

## CSS Implementation

```css
.icon-btn:hover .icon {
  transform: scale(1.15);
  transition: transform 150ms ease-out;
}

.icon-btn:active .icon {
  transform: scale(0.9);
  transition: transform 50ms ease-in;
}

.badge {
  animation: badgeBounce 400ms cubic-bezier(0.68, -0.55, 0.27, 1.55);
}

@keyframes badgeBounce {
  0% { transform: scale(0); }
  50% { transform: scale(1.2); }
  100% { transform: scale(1); }
}

.status-indicator {
  animation: pulse 2000ms ease-in-out infinite;
}

@keyframes pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.6; transform: scale(1.1); }
}

.bell-icon:hover {
  animation: ring 500ms ease-in-out;
}

@keyframes ring {
  0%, 100% { transform: rotate(0); }
  20%, 60% { transform: rotate(15deg); }
  40%, 80% { transform: rotate(-15deg); }
}
```

## Key Properties
- `transform`: scale, rotate
- `opacity`: pulse effects
- `animation`: complex sequences
- `fill`/`stroke`: SVG color changes
- `filter`: glow effects

© 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