icons-badges — скилл для Claude Code: анимация иконок и бейджей
Скилл для анимации иконок, бейджей, аватаров и статус-индикаторов. Пригодится, когда мелкие элементы интерфейса должны давать отклик и характер.
npx skills add dylantarre/animation-principles --skill icons-badges -a claude-codeЧто делает icons-badges
Скилл берёт 12 принципов анимации Диснея и раскладывает их по маленьким элементам интерфейса: иконкам, бейджам, аватарам, индикаторам статуса. Сердце на лайке сжимается и растягивается, счётчик уведомлений подпрыгивает с squash при появлении, колокольчик качается по дуге маятника. Агент получает набор правил, по которым выбирает движение под конкретный элемент, а не наугад.
Внутри — разбор принципов с таймингами и готовые CSS-примеры. Ховер иконки: ease-out, клик: ease-in-out, отскок бейджа: cubic-bezier(0.68, -0.55, 0.27, 1.55) для перелёта. Есть заготовки @keyframes для отскока бейджа, пульсации статуса и звона колокольчика. Работает с transform, opacity, animation, а для SVG — с fill, stroke и filter.
Ограничение простое: скилл задаёт принципы и примеры, а не готовую библиотеку компонентов. Функциональные иконки вроде меню и закрытия он советует держать сдержанными, а праздничные — конфетти, сердца — можно анимировать смелее. Если у вас тяжёлые SVG с толстой обводкой, проверьте, что иконка остаётся чёткой на всех кадрах: принцип solid drawing прямо про это.
Какие задачи решает
- оживить иконку лайка при нажатии
- сделать отскок счётчика уведомлений
- добавить пульсацию индикатору статуса
- подобрать тайминг и кривую для ховера иконки
- согласовать движение многосоставной иконки
Примеры запросов агенту
- Сделай анимацию иконки лайка: сжатие при нажатии и упругий отскок
- Добавь бейджу уведомлений bounce с overshoot при появлении
- Настрой пульсацию статус-индикатора и звон колокольчика по дуге
Как установить icons-badges
1Через Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill icons-badges -a claude-code2Вручную: положить файлы
~/.claude/skills/icons-badges/SKILL.mdПапка скилла целиком; для одного проекта — .claude/skills/icons-badges/
1Через Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill icons-badges -a codex2Вручную: положить файлы
.agents/skills/icons-badges/SKILL.mdДля всех проектов — ~/.agents/skills/
1Через Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill icons-badges -a cursor2Вручную: положить файлы
.cursor/skills/icons-badges/SKILL.mdCursor читает и .agents/skills/, и .claude/skills/
1GitHub CLI
gh skill install dylantarre/animation-principles icons-badges2Вручную: положить файлы
.github/skills/icons-badges/SKILL.md1Через Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill icons-badges -a gemini-cli2Командой платформы
gemini skills install https://github.com/dylantarre/animation-principles --path skills/07-by-ui-element/icons-badgesВручную: положить файлы
.devin/skills/icons-badges/SKILL.mdСтарый путь .windsurf/skills/ тоже читается
Через Skills CLI (Vercel)
npx skills add dylantarre/animation-principles --skill icons-badges -a opencodeClaude.ai
Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills
По шагам, с командами для каждой платформы: Как установить скилл в Claude Code: пять способов
Из того же набора86
Похожие
Рядом в теме «Фронтенд и UI»
Всё по теме «Фронтенд и UI» →Вопросы о icons-badges
Как установить icons-badges в Claude?
Выполните npx skills add dylantarre/animation-principles --skill icons-badges -a claude-code. Файл скилла окажется по пути ~/.claude/skills/icons-badges/SKILL.md.
Что делает icons-badges?
Даёт агенту правила анимации мелких элементов интерфейса: иконок, бейджей, аватаров, индикаторов статуса. Внутри — 12 принципов анимации с таймингами и CSS-примерами.
С какими платформами работает скилл?
Claude, Codex, Cursor, GitHub Copilot, Gemini CLI и OpenCode. Для каждой платформы своя команда установки и свой путь к файлу скилла.
Исходный текст
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