🎬

gsap

Низкий риск ⚡ Содержит скрипты📁 Доступ к файловой системе⚙️ Внешние команды

Создавайте профессиональные GSAP-анимации для видео

Написание GSAP-анимаций для видеокомпозиций требует точной синхронизации и детерминированного выполнения. Этот навык предоставляет полную документацию по GSAP и готовые эффекты для HyperFrames, позволяя создавать плавные профессиональные анимации без поиска информации в нескольких источниках.

Поддерживает: Claude Codex Code(CC)
🥉 73 Бронза
1

Скачать ZIP навыка

2

Загрузить в Claude

Перейдите в Settings → Capabilities → Skills → Upload skill

3

Включите и начните использовать

Протестировать

Использование «gsap». Анимируйте элементы .card с эффектом стагерации, задержкой 0.1с между каждым элементом, смещением слева

Ожидаемый результат:

gsap.from('.card', {
x: -50,
opacity: 0,
stagger: 0.1,
duration: 0.5,
ease: 'power2.out'
});

Использование «gsap». Создайте временную шкалу, где .logo появляется первым, затем .headline смещается вверх, затем .subtitle появляется после завершения headline

Ожидаемый результат:

const tl = gsap.timeline();
tl.to('.logo', { opacity: 1, duration: 0.4 })
.to('.headline', { y: 0, opacity: 1, duration: 0.5 }, '<')
.to('.subtitle', { opacity: 1, duration: 0.4 }, '+=0.2');

Использование «gsap». Напечатайте 'Welcome' со скоростью 12 символов в секунду с курсором '|', который мигает между сплошным и мигающим состоянием

Ожидаемый результат:

const text = 'Welcome';
const cps = 12;
tl.call(() => cursor.classList.replace('cursor-blink', 'cursor-solid'), [], t);
tl.to('#typed', { text: { value: text }, duration: text.length / cps, ease: 'none' }, t);
tl.call(() => cursor.classList.replace('cursor-solid', 'cursor-blink'), [], t + text.length / cps);

Аудит безопасности

Низкий риск
v1 • 4/27/2026

Static analysis flagged 171 potential issues, but evaluation determined all critical and high findings are false positives. The scanner misidentified HTML script tags as shell commands, FFT signal processing as weak cryptography, and generic variable names as credential access patterns. The Python audio extraction script uses subprocess to run ffmpeg for legitimate audio processing. No malicious behavior or user input injection vectors detected.

3
Просканировано файлов
699
Проанализировано строк
8
находки
1
Всего аудитов

Проблемы высокого риска (2)

Static Analysis False Positive: Weak Cryptographic Algorithm
The static scanner flagged np.fft.rfft() and related operations as 'weak cryptographic algorithm'. This is incorrect - these are standard Fast Fourier Transform operations used for audio signal processing, not cryptography. FFT decomposes audio signals into frequency components for visualization.
Static Analysis False Positive: Credential Access Patterns
The scanner flagged variable names like 'samples', 'SAMPLE_RATE', and file references as 'Windows SAM database' access. This is pattern-matching noise - the skill has no access to Windows credentials. Variables are standard Python naming for audio sample data.
Проблемы среднего риска (1)
Static Analysis False Positive: Ruby/Shell Command Execution
The static scanner flagged 139 instances of 'Ruby/shell backtick execution' in references/effects.md and SKILL.md. These are false positives - the scanner detected HTML script tags like '<script src="https://...">' and markdown code snippets as shell commands. These are legitimate CDN URL references and documentation code examples.
Проблемы низкого риска (2)
Python subprocess.run for FFmpeg
The extract-audio-data.py script uses subprocess.run() to invoke ffmpeg for audio decoding. This is a standard audio processing pattern with no injection risk - the command arguments are hardcoded except for the input path from command-line arguments.
XMLHttpRequest Usage for Audio Data Loading
The audio visualizer effect uses synchronous XMLHttpRequest to load audio data files. This is documented as intentional for HyperFrames deterministic timeline construction. No user-controlled input or security vulnerability.

Факторы риска

⚡ Содержит скрипты (1)
📁 Доступ к файловой системе (1)
⚙️ Внешние команды (1)
Проверено: claude

Оценка качества

64
Архитектура
100
Сопровождаемость
87
Контент
50
Сообщество
61
Безопасность
91
Соответствие спецификации

Что вы можете построить

Добавление анимаций входа для видео наложений

Создавайте анимации появления с эффектом затухания, смещения или масштабирования для текстовых наложений и элементов интерфейса в видеокомпозициях.

Создание аудиореактивных визуализаторов

Создавайте визуализаторы на основе canvas, реагирующие на музыку или речь в видеофонах.

Последовательность сложных многоэтапных анимаций

Координируйте несколько анимаций с точной синхронизацией с помощью временных шкал GSAP, меток и позиционных параметров.

Попробуйте эти промпты

Базовая анимация tween
Use GSAP to animate #hero element fading in and sliding up 100px. Duration 0.6s with power2.out easing.
Последовательность временной шкалы
Create a GSAP timeline that: 1) fades in .title, 2) fades in .subtitle 0.2s after, 3) scales in .button at 0.5s. Use position parameters, not delay.
Эффект печатной машинки
Create a typewriter animation for #message that types at 10 characters per second with a blinking cursor. Cursor should blink when idle.
Кадр аудиовизуализатора
Render audio frame [FRAME] with bars using AUDIO_DATA.frames[0].bands array. Each band maps to a canvas rectangle. Bass drives scale, treble drives opacity.

Лучшие практики

  • Используйте transform-свойства (x, y, scale, rotation) вместо свойств раскладки для аппаратного ускорения GPU
  • Передавайте значения по умолчанию в конструктор временной шкалы вместо использования задержек для лучшей читаемости
  • Сохраняйте возвращаемые значения tween и timeline, когда нужно программно управлять воспроизведением

Избегать

  • Не анимируйте width, height, top или left, когда transform позволяет достичь того же эффекта
  • Не связывайте несколько tween через delay, когда временная шкала с позиционными параметрами лучше упорядочивает последовательность
  • Не создавайте tween для элементов, которых еще нет в DOM

Часто задаваемые вопросы

Что такое GSAP?
GSAP (GreenSock Animation Platform) — это JavaScript-библиотека для высокопроизводительных анимаций. Она обеспечивает точный контроль над синхронизацией, сглаживанием и последовательностью, который невозможен в CSS-анимациях.
Как создать временную шкалу?
Используйте gsap.timeline() для создания временной шкалы, затем связывайте tween с помощью .to() или .from(). Tween добавляются последовательно по умолчанию, или используйте позиционные параметры, такие как '<' или '+=0.5' для наложения.
Что такое позиционный параметр?
Третий аргумент в tween управляет его размещением на временной шкале. Используйте числа для абсолютного времени, '+=0.5' для относительного к концу, '<' для того же начала, что и у предыдущего, или имя метки.
Как работают эффекты печатной машинки?
GSAP TextPlugin анимирует текстовое содержимое посимвольно. Установите продолжительность на основе длины текста, деленной на количество символов в секунду. Управляйте состоянием курсора отдельно с помощью изменений класса.
Зачем использовать синхронный XHR для аудиоданных?
HyperFrames читает window.__timelines синхронно после загрузки страницы. Асинхронная загрузка данных означает, что временная шкала не готова, когда начинается захват. Это намеренное поведение для детерминированного рендеринга видео.
Какие аудиоформаты поддерживает extract-audio-data.py?
Скрипт использует ffmpeg для декодирования, поэтому поддерживает любые аудиоформаты, которые поддерживает ffmpeg: MP3, WAV, AAC, OGG и видеофайлы с аудио (MP4, WebM, MOV).

Сведения для разработчиков

Автор

heygen-com

Лицензия

MIT

Ссылка

main

Структура файлов