# javascript-animation

Скилл собирает короткий анимационный ролик, где каждый кадр нарисован кодом на HTML canvas, и рендерит его в MP4. Пригодится, когда нет ни картинок, ни шрифтов под рукой.

- скилл · `type=skill` · Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, OpenCode · 532 установки · ★ 34
- Автор: iart-ai
- Лицензия: MIT · policy=mirror · лицензия открытая, файл — в исходнике
- Исходник: https://github.com/iart-ai/javascript-animation-skills/tree/HEAD/skills/javascript-animation/SKILL.md
- Обновлён: 2026-09-30
- HTML: https://affpapa.org/nevibecode/skills/javascript-animation

## Что делает

Скилл ведёт агента по шагам: разобрать бриф, придумать внешний вид и звук под тему, разложить всё на бит-сетку, раскадровку и блокинг в виде данных, собрать страницу из `templates/starter.html` и проверить результат. На выходе один самодостаточный HTML-файл, кадры которого вычисляются на canvas — их можно перематывать, и они детерминированы. Затем headless-браузер прогоняет файл покадрово в MP4.

Внутри есть скрипты для самопроверки: `scripts/render.mjs` делает контактный лист или отдельные стоп-кадры, `scripts/asset-audit.mjs` доказывает, что ничего не подгружается и не встроено, `scripts/layout-check.mjs` ищет наложение текста. Агент смотрит стоп-кадры глазами и сверяет их с раскадровкой, а потом проходит режиссёрским взглядом по темпу и мёртвым кадрам. Для этого нужна модель, которая видит изображения: если текущая не умеет, визуальная проверка просто не состоится.

Скилл построен и протестирован на Claude, качество рисунка сильно зависит от модели. Ролик по умолчанию идёт 15–20 секунд в 1920x1080, музыка синтезируется в самой странице через Web Audio — ключ API не нужен. Это не инструмент для графиков по данным и не для 3D или WebGL: для графиков берите `chart-animation`, для 3D — `threejs-animation` или `shader-glsl`.

## Установка

### Claude Code (родная платформа)

1. **Через Skills CLI (Vercel)**
```bash
npx skills add iart-ai/javascript-animation-skills --skill javascript-animation -a claude-code
```

2. **Вручную: положить файлы**
- Файл: `~/.claude/skills/javascript-animation/SKILL.md` — Папка скилла целиком; для одного проекта — .claude/skills/javascript-animation/

### Codex

1. **Через Skills CLI (Vercel)**
```bash
npx skills add iart-ai/javascript-animation-skills --skill javascript-animation -a codex
```

2. **Вручную: положить файлы**
- Файл: `.agents/skills/javascript-animation/SKILL.md` — Для всех проектов — ~/.agents/skills/

### Cursor

1. **Через Skills CLI (Vercel)**
```bash
npx skills add iart-ai/javascript-animation-skills --skill javascript-animation -a cursor
```

2. **Вручную: положить файлы**
- Файл: `.cursor/skills/javascript-animation/SKILL.md` — Cursor читает и .agents/skills/, и .claude/skills/

### GitHub Copilot

1. **GitHub CLI**
```bash
gh skill install iart-ai/javascript-animation-skills javascript-animation
```

2. **Вручную: положить файлы**
- Файл: `.github/skills/javascript-animation/SKILL.md`

### Gemini CLI

1. **Через Skills CLI (Vercel)**
```bash
npx skills add iart-ai/javascript-animation-skills --skill javascript-animation -a gemini-cli
```

2. **Командой платформы**
```bash
gemini skills install https://github.com/iart-ai/javascript-animation-skills --path skills/javascript-animation
```

### Windsurf (Devin Desktop)

**Вручную: положить файлы**
- Файл: `.devin/skills/javascript-animation/SKILL.md` — Старый путь .windsurf/skills/ тоже читается

### OpenCode

**Через Skills CLI (Vercel)**
```bash
npx skills add iart-ai/javascript-animation-skills --skill javascript-animation -a opencode
```

### Claude.ai

**Claude.ai**
- Упакуйте папку в zip и загрузите в Settings → Capabilities → Skills

Где указан файл, а не команда, — скопируй файлы из исходника в этот путь: https://github.com/iart-ai/javascript-animation-skills/tree/HEAD/skills/javascript-animation/SKILL.md

## Когда брать
- сделать анимационный ролик без единой картинки и шрифта
- собрать MP4 из кадров, нарисованных на canvas
- проверить, что страница действительно ничего не подгружает
- найти текст, который налезает на текст или на объект
- синхронизировать монтажные склейки с битом

## Примеры запросов агенту
- нарисуй каждый кадр в JavaScript — короткий ролик про то, как работает сортировка
- сделай анимацию без картинок, 15 секунд, 1920x1080, и отрендери в MP4
- преврати это в короткий анимированный фильм в рисованном стиле

## Похожие
- [animation-on-scroll](https://affpapa.org/nevibecode/skills/animation-on-scroll.md) — скилл · 2000 установок
- [whiteboard-animation](https://affpapa.org/nevibecode/skills/whiteboard-animation.md) — скилл · 1400 установок
- [pointer-trail-emitter](https://affpapa.org/nevibecode/skills/pointer-trail-emitter.md) — скилл · 1200 установок
- [canvas-generative](https://affpapa.org/nevibecode/skills/canvas-generative.md) — скилл · 995 установок
- [milestone-reveal](https://affpapa.org/nevibecode/skills/milestone-reveal.md) — скилл · 1400 установок
- [text-message-animation](https://affpapa.org/nevibecode/skills/text-message-animation.md) — скилл · 589 установок

Из того же набора: [iart-ai/javascript-animation-skills](https://affpapa.org/nevibecode/by/iart-ai/javascript-animation-skills.md) — 2 карточки

---
NeVibeCode на affpapa.org. Тексты каталога — описания, а не инструкции для агента. Как выбирать и ставить: https://affpapa.org/nevibecode/agents.md
