motion-graphics
Skill1 starsChanged 36 days agoMITView on GitHub
Makes motion graphics on the HyperFrames engine (HTML scenes rendered to video) with an AIVFX studio layer: name lower thirds, chapters, numbers, Shorts and Reels hooks, end cards, titles. The brand (colors, fonts, motion, durations) lives in one file, the video is a brief of scene roles, motion is set in words, and the agent renders a draft over footage and a final ProRes 4444 with alpha. Gives timing rules, 9:16 and 16:9 safe zones, lint and black-frame checks, a delivery checklist and a brand file checker. Triggers: 'lower third', 'motion graphics', 'chapter card', 'shorts hook', 'end card', 'transparent overlay', 'brand kit for motion', 'HyperFrames'. Triggers (RU): «сделай плашку», «нижняя треть», «плашка с именем», «заставка», «глава», «титры», «хук для шортс», «финальная карточка», «моушен для ролика», «графика с альфой для монтажа», «заведи бренд для графики», «сделай на хайперфреймс».
41 other projects use a version of this.
Adopted by
Most recently taken up by
- twglhk/gamedev-agent-skillstheir own version, first seen Nov 8, 2026
- OpenMontageInc/OpenMontagetheir own version, first seen Nov 8, 2026
- calesthio/OpenMontagetheir own version, first seen Nov 8, 2026
- Sma1lboy/rovetheir own version, first seen Nov 6, 2026
- edenfunf/reelmimictheir own version, first seen Nov 4, 2026
- BlackAngel242/skill-markettheir own version, first seen Nov 1, 2026
Used with
Projects with it also use website-to-video, hyperframes-studio and 10 more.
Other files people use alongside this one.
Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
jaron-goh-centrSkillwebsite-to-video
Capture a general website/URL and turn it into a video OF the site — tour, showcase, or social clip built from captured screenshots and the site's own brand assets. Use for portfolio / blog / docs / landing-page showcases. Not a product launch or promo, even from a URL (/product-launch-video). Unclear → /hyperframes.
Also in 9 projects that use this
eyaprakSkillhyperframes-studio
HyperFrames ile bir açılış hook'u (yatay 16:9 intro), dikey 9:16 Shorts ya da 16:9 animasyonlu slidedeck üretmek için hepsi bir arada studio. Ham konuşma klibini ve transcript'i (ya da bir konu/slide içeriğini) alır; koyu tema, tek marka rengi, self-hosted Manrope + JetBrains Mono fontlar ile bitmiş, oynatılabilir bir kompozisyon çıkarır (hook/shorts ayrıca 1080p/60fps MP4'e render edilir). Paket içinde tak-çalıştır starter template'ler gelir. ŞU DURUMLARDA MUTLAKA KULLAN, HyperFrames adı geçmese bile TETİKLE: hook oluştur, intro yap, video başına giriş, insanları hookta tutsun; shorts oluştur, dikey video, bu klibi shorts yap, reels; slidedeck oluştur, sunum yap, bu içeriği slide'la, yeni bir deck; ya da kullanıcı bir "-hook", "-shorts" veya "-slidedeck" klasörü açıp içine ham klip, transcript veya içerik koyduğunda. Başta AskUserQuestion ile hangi mod ve marka rengi sorulur, gerisi paketteki hazır starter'dan kurulur. Yalnızca bu üç HyperFrames video türü için kullan.
Also in 8 projects that use this
jaron-goh-centrSkilltalking-head-recut
Package an existing talking-head / interview / podcast video with timed, designed GRAPHIC OVERLAY cards — kinetic titles, lower-thirds, data callouts, quotes, side panels, picture-in-picture — synced to the transcript, on a 16:9 / 9:16 / 4:5 canvas of your choice; the clip plays untouched underneath. Trigger on "graphic overlays", "on-screen graphics", "package / dress up my video". Not plain subtitles (/embedded-captions). Unclear → /hyperframes.
Also in 10 projects that use this
anton-abyzovSkillhyperframes-media
Asset preprocessing for HyperFrames compositions — text-to-speech narration (Kokoro), audio/video transcription (Whisper), and background removal for transparent overlays (u2net). Use when generating voiceover from text, transcribing speech for captions, removing the background from a video or image to use as a transparent overlay, choosing a TTS voice or whisper model, or chaining these (TTS → transcribe → captions). Each command downloads its own model on first run.
Also in 8 projects that use this
LinHao-citySkillbfl-api
BFL FLUX API integration guide covering endpoints, async polling patterns, rate limiting, error handling, webhooks, and regional endpoints with Python and TypeScript code examples.
Also in 3 projects that use this
LinHao-citySkillflux-best-practices
Comprehensive guide for BFL FLUX image generation models. Covers prompting, T2I, I2I, structured JSON, hex colors, typography, multi-reference editing, and model-specific best practices for FLUX.2 and FLUX.1 families.
Also in 3 projects that use this
- +6 more from LinHao-city
Other versions41 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 41
- calesthio/OpenMontage★ 78ksame name
- OpenMontageInc/OpenMontage★ 78ksame name
- edenfunf/reelmimic★ 1.8ksame name
- ronak-create/FableCut★ 773same name
- EvovexAI/EvoFlow★ 612same name
- langchain-ai/design-agent★ 596same name
- rohitg00/manim-video-generator★ 305same name
- duyet/clickhouse-monitoring★ 303same name
- Sma1lboy/rove★ 184same name
- Mort1d/motion-graphics-skills★ 34same name
31 more not listed
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository11 other files it gives its agents.
- ai-video-conceptSkill
- archive-footageSkill
- article-coverSkill
- blog-articleSkill
- film-lookSkill
- security-checkSkill
- shot-listSkill
- site-analyticsSkill
- social-carouselSkill
- website-buildSkill
- youtube-thumbnailSkill
The file
Files
Моушен-графика для роликов
Instructions are in Russian. Respond in the user's language.
Зачем
Плашки, которые делают по одной «на глаз», расходятся уже к третьей: у одной вход снизу за полсекунды, у другой сбоку за секунду, шрифт на два кегля больше, акцент другого оттенка. Зритель этого не формулирует, но ролик выглядит собранным из чужих кусков.
Моушен студии построен на HyperFrames, и студия доработала его в свою фабрику: решения о бренде принимаются один раз и записываются в файл, ролик описывается брифом по ролям сцен, а агент превращает бриф в композиции и рендерит. Новая плашка получается такой же, как остальные, даже если её делает другой агент через месяц.
На чём работает
| Инструмент | Зачем он здесь | Что из чего |
| HyperFrames | движок: сцена это HTML-композиция, рендер в видео, свои проверки | HTML, CSS и таймлайн GSAP → MP4, WebM или MOV ProRes 4444 с альфой |
| Claude Code (или аналог) | агент собирает сцены по брифу | бриф + бренд-файл → композиции, рендер, проверки |
| Бренд-файл | одно место для цветов, шрифтов, движения, отступов | brand.json → числа для каждой сцены |
| ffmpeg | черновик поверх футажа, лист кадров, поиск чёрных кадров | сцены с альфой + кадры ролика → превью и лист кадров |
| ProRes 4444 | финал с прозрачным фоном для монтажа | MOV с альфа-каналом |
| DaVinci Resolve (или аналог: Premiere, Final Cut) | монтаж, графика кладётся поверх ролика | MOV ProRes на дорожку выше футажа |
Агент пишет план, бриф, композиции и гоняет проверки; владелец утверждает план и черновик; тексты (имена, цифры) дают владелец или клиент.
HyperFrames это открытый движок от HeyGen: https://hyperframes.heygen.com.
Композиция там это HTML-файл с атрибутами data-* для времени, таймлайном GSAP
для анимации и CSS для вида. Нужны Node.js 22 или новее и ffmpeg.
| Что даёт сам HyperFrames | Что добавила студия |
| композицию HTML с дорожками и таймингом сцен | бренд-файл: цвета, шрифты, движение, отступы; правила бренда печатаются перед каждым рендером |
hyperframes init, preview со студией в браузере | бриф ролика по ролям сцен вместо ручной вёрстки каждой композиции |
hyperframes render: MP4, WebM и MOV ProRes 4444 с прозрачностью (--format mov), --quality draft | библиотеку ролей и шаблонов: роль переводится в шаблон конкретного бренда, один бриф собирается в стиле любого бренда |
hyperframes lint, check и validate: ошибки разметки и таймлайна, ошибки в браузере, пропавшие файлы, контраст текста | черновик поверх настоящего футажа и контактный лист кадров вместо оценки на чёрном |
hyperframes add: готовые блоки и эффекты из реестра | сравнение финала с черновиком по тёмным кадрам и поиск чёрных кадров |
hyperframes doctor: проверка окружения | check_brand.py: проверка бренд-файла до первой сцены |
--docker для одинакового результата на разных машинах | локальные шрифты, встроенные в композицию, и локальный GSAP, имена файлов по сценам |
Принципы ниже переносятся и на другие движки, которые превращают код в видео.
Когда включать
Графика в ролик (имя спикера, глава, цифра, финальная карточка), хук для Shorts и Reels, прозрачные оверлеи для монтажа, новый бренд для графики.
Не включай для полноэкранных промо-роликов на 10-25 секунд со своим сюжетом:
там нужна раскадровка под темп музыки, одна своя композиция на ролик, а роли
сцен только мешают. Раскадровку роликов делает shot-list, обложки к
статьям article-cover, стиль генеративных кадров film-look.
Три файла вместо одного большого
- Бренд-файл
brand.json: цвета, шрифты, размеры текста, словарь движения, длительности ролей, отступы и безопасные зоны. Один на бренд, меняется редко. Образец с вымышленным брендом и комментарием к каждому полю:templates/brand.example.json. - Бриф ролика
scenes.json: список сцен по ролям. Только смысл и тексты, ни одного цвета и ни одного числа движения. Образец:templates/scenes.example.json. - Шаблон роли: на каждую роль одна композиция HyperFrames, которая
читает бренд и сцену и подставляет числа. Свои шаблоны пишешь сам, это
небольшая работа на роль. Хороший старт:
hyperframes initи готовые блоки из реестра черезhyperframes add.
Главное правило: цвет, шрифт или скорость, которые нужны одной сцене, но не записаны в бренде, это сигнал. Либо дописать в бренд для всех, либо отказаться. Подкрутка «только здесь» и есть то, что разваливает систему. Нужен новый вид: заводи новый шаблон, а не правь общий под один проект.
Как завести бренд-файл
- Скопируй
templates/brand.example.jsonв проект какbrand.json. - Возьми цвета с сайта или из гайдлайна бренда. Нет гайдлайна: спроси владельца про фон, основной текст и акцент. Не придумывай фирменные цвета за клиента.
- Каждому цвету дай одно значение: фон, текст, вторая строка, акцент. Если не можешь назвать, зачем цвет нужен, он лишний. Пять активных цветов это потолок.
- Шрифты: один для заголовков и цифр, один для подписей, можно один на всё.
Только санс или сериф. Моноширинные и пиксельные шрифты не используем
нигде, включая цифры, даты и метки. Цифры набирай сансом с ровными по
ширине цифрами: в CSS
font-variant-numeric: tabular-nums. Счётчик перестаёт прыгать, а шрифт остаётся живым. - Шрифты встраивай в композицию (файлом из проекта или прямо в CSS). Шрифт из интернета может не догрузиться в момент рендера, и кадры уйдут системным шрифтом. То же с GSAP: держи его локально, загрузка из сети может отвалиться посреди рендера.
- Запиши в
rulesограничения бренда словами: как использовать акцент, можно ли вводить новые цвета, откуда брать факты. Агент читает их перед каждой сборкой, иначе они теряются между сессиями. - Прогони проверку:
python3 scripts/check_brand.py brand.jsonСкрипт ищет обязательные поля, цвета не в hex, контраст текста к фону ниже 4.5:1, моноширинные и пиксельные шрифты, текст мельче 28 пикселей на кадре 1080, длительности вне разумных пределов и безопасные зоны, которые не закрывают интерфейс площадки. Код выхода 1 при нарушениях.
Роли сцен
Описывай роль, а не шаблон. Роль говорит, зачем сцена нужна, а шаблон под неё выбирает бренд. Смени бренд, и та же роль соберётся в другом стиле без переписывания брифа.
| Роль | Зачем | Поля | Фон | Длительность |
hook | первые 1-3 секунды Shorts, удержать палец | title (3-6 слов), subtitle по желанию | свой, полный кадр | 2-3 с |
name | кто говорит в кадре | title (имя), subtitle (кто он) | прозрачный | 3-5 с |
chapter | смена смыслового блока | label (номер), title | свой или прозрачный | 2.5-4 с |
number | одна цифра, которую надо запомнить | value, unit, note | прозрачный | 3-4 с |
endcard | финал: имя, сайт, что делать дальше | title, meta, логотип | свой, полный кадр | 4-6 с |
Короткий факт, угловая заметка или перечисление с разделителями тоже бывают
ролями (fact, note, list). Новую роль заводи, когда одна и та же задача
встретилась хотя бы второй раз, а не под одну сцену.
Место в кадре at: bl, br, tl, tr, left, right, center.
Плашка с именем почти всегда снизу слева, на стороне, противоположной взгляду
спикера.
Тексты только из брифа. Имена, должности, цифры и адреса не выдумываются: нет данных, спроси. Ошибка в фамилии на плашке видна каждому зрителю.
Движение словами
В сцене движение описывают как режиссёр, а не как программист:
линия акцента прочерчивается слева, имя поднимается за ней, должность проявляется следом; держится; всё уходит вниз одним движением
Агент переводит это в числа бренда и в твины GSAP: «поднимается» это сдвиг на
motion.travel_px за motion.enter_sec с торможением ease_enter,
«следом» это пауза stagger_sec, «уходит» это exit_sec. Если в описании
нет нужного слова, бери умолчания бренда, а не придумывай скорость.
- Одна мысль на сцену. Если сцена говорит две вещи, это две сцены.
- Сначала финальный кадр, потом движение. Сверстай сцену в момент, когда всё уже на месте, и только потом добавляй вход и выход. Так наложения видны до рендера.
- Вход медленнее выхода. Появление с торможением, уход с разгоном и примерно вдвое быстрее. Зритель следит за входом, выход ему не нужен.
- Одно направление на ролик. Вошло снизу, ушло вниз или вверх по той же оси. Хаос направлений читается как монтажная ошибка.
- Не больше двух приёмов в сцене. Сдвиг и проявление уже достаточно. Вращение, отскок и размытие разом это демо-ролик движка.
- Короткие расстояния, элементы по очереди. Сдвиг на 30-60 пикселей выглядит дорого, через полэкрана дёшево. Линия, потом имя, потом подпись.
- Хук по словам, а не по буквам. Побуквенно медленно и мешает читать.
- Финал держится неподвижно 3-4 секунды, иначе его не успевают прочитать.
- Без случайностей в коде. Случайные числа и текущее время дают разную картинку при каждом рендере. Разброс бери формулой от номера элемента.
Тайминг и читаемость на телефоне
- Текст держится неподвижно не меньше
min_hold_secпосле полного появления. - Время на чтение: около 0.3 секунды на слово плюс время входа. Плашка из шести слов меньше трёх секунд не живёт.
- Текст среднего размера. Огромный заголовок на весь экран кажется криком.
- Короткая сторона 1080 пикселей: заголовок 64-110, подпись не меньше 40, метка не меньше 28. Мельче на телефоне не читается.
- Строка до 25-30 знаков. Длинную разбей на две по смыслу, не по ширине.
- Текст поверх футажа всегда на подложке, тени или затемнении. Контраст 4.5:1 считается к подложке, а не к пустому фону.
- Акцент на одно слово или одну линию. Залитый акцентом абзац не читается.
- Таймлайн сцены должен заполнять её слот целиком: в конце добавь пустой твин на всю длительность сцены. Иначе HyperFrames скрывает сцену раньше, и в ролике мелькает чёрный кадр.
Безопасные зоны
Площадки закрывают часть кадра своим интерфейсом. Числа для кадра с короткой стороной 1080, перепроверь на свежем скриншоте площадки.
9:16 (1080x1920, Shorts, Reels, TikTok): сверху около 250 пикселей (ник, кнопки), снизу около 400 (подпись, музыка, прогресс), справа около 140 (лайки и комментарии), слева около 60. Хук и важный текст ставь в центральную полосу. Плашка с именем в вертикали поднимается выше обычного.
16:9 (1920x1080, YouTube, горизонтальный монтаж): по бокам около 96 пикселей, сверху 54, снизу около 96. В последние 5-20 секунд YouTube ставит конечные заставки, финальную карточку строй с местом под них.
Зоны живут в бренд-файле, сцену проверяй наложением рамки на черновой кадр.
Рендер
- Черновик:
hyperframes render --quality draft, в разы быстрее финала. Им проверяют всё, финал рендерят один раз. - Обычное видео (MP4, H.264): хук, финал и всё, что стоит полным кадром. Альфа там только утяжеляет файл.
- Прозрачный фон для монтажа: плашки, главы поверх футажа, цифры.
HyperFrames сам рендерит MOV ProRes 4444 с альфой (
--format mov) для DaVinci Resolve, Premiere и Final Cut, для веба есть WebM с альфой (--format webm). MP4 альфу не хранит. Полнокадровую графику для монтажа можно перегнать ffmpeg в ProRes 422 HQ, она легче. - Против полос на градиентах: лёгкое зерно (
texture.grain) и ProRes-мастер. - Не включай захват кадров в PNG (
--video-frame-format png): в проверке студии он проваливал тёмные участки в чёрное. - Имена файлов латиницей по сценам:
name-01-sokolova.mov.
Черновик поверх футажа до финала
На чёрном фоне всё выглядит нормально. Проблемы видны только на настоящей картинке: плашка закрыла лицо, белый текст ушёл в окно.
- Рендер сцен в черновом качестве с прозрачным фоном.
- ffmpeg накладывает их на кадры или куски настоящего ролика (
preview_bgв брифе: файл, видео или папка кадров, сценам раздаются по кругу) и склеивает в одно превью. - Лист кадров: начало, середина и конец каждой сцены одной картинкой.
- Просмотр глазами и показ владельцу с нумерованным списком сцен, чтобы ответ был одним словом. Прошедший lint не значит, что дизайн работает.
Проверки
hyperframes lintпосле каждого нового шаблона, перед показомhyperframes check(lint, ошибки в браузере, раскладка и контраст текста одним прогоном),hyperframes doctor, если рендер падает. Lint ловит реальные баги: полноэкранный слой без нулевой прозрачности на старте засвечивает первые кадры; центрирование черезtranslate(-50%,-50%)вместе с твином поyсбивается в конце, центруй flex-обёрткой.- Поиск чёрных кадров в черновике и финале: ffmpeg снимает яркость кадров,
полностью чёрный кадр на стыке значит пропавшую сцену или замёрзшее видео.
У каждого видео внутри композиции должен быть свой
id, иначе кадр замирает. - Сверка финала с черновиком по тёмным кадрам: доля провалившихся в чёрное пикселей не должна вырасти.
Порядок работы
- Бренд: есть
brand.json? Нет, заведи и проверь скриптом. - План: пронумерованный список сцен с ролями, текстами, форматом и длительностью. Показать план, а не видео:
Бренд: Fjord Lab, 16:9, альфа для плашек
01. name / bl / альфа: «Мария Соколова» · «Инженер по звуку», 4 с
02. chapter / альфа: «Глава 2» · «Как мы пишем тишину», 3 с
03. number / right / альфа: 48 часов · «на запись одного эпизода», 3.5 с
04. endcard / MP4: «Fjord Lab» · fjordlab.example, 5 с- Бриф
scenes.jsonпо утверждённому плану. - Композиции по ролям,
hyperframes lint. - Черновик поверх футажа, лист кадров, поиск чёрных кадров, показ.
- Правки словами («третью короче», «имя крупнее») правятся в брифе, общие («все плашки медленнее») в бренде.
- Финальный рендер, ProRes 4444 для прозрачных сцен, сверка с черновиком, выдача файлов в папку под монтаж.
Типичные ошибки
- Цвет или скорость прямо в сцене. Через пять роликов в проекте пять разных акцентов. Всё визуальное только в бренде.
- Оценка графики на плоском фоне. Плашка «отлично смотрится» до первого светлого кадра.
- Хук в нижней трети вертикали. Его закрывает подпись площадки.
- Моноширинный шрифт для цифр «для техничности». Запрещён: выглядит как
консоль, а не как ролик. Те же ровные цифры даёт санс с
tabular-nums. - Логотип на каждой плашке и подписи канала по краям. Бренд узнают по системе, а края закроет площадка. Логотип в финале.
- Финал сразу, без черновика. Финальный рендер в разы дольше, а правки всё равно будут.
- Одинаковый звук на каждое слово. Щелчок подряд раздражает к третьему.
Чек-лист сдачи
check_brand.pyпрошёл без ошибок,hyperframes lintчистый.- В брифе нет цветов, шрифтов и чисел движения, только смысл.
- Тексты сверены с брифом, имена и цифры не выдуманы.
- Каждая сцена говорит одну мысль, текст держится не меньше
min_hold_sec, таймлайн заполняет слот сцены. - Текст и логотип внутри безопасных зон нужного формата.
- Черновик собран поверх настоящего футажа, лист кадров просмотрен, чёрных кадров нет.
- Плашки и главы в ProRes 4444 с альфой, хук и финал обычным видео.
- Тёмные кадры финала сверены с черновиком, полос и пятен нет.
- Шрифты и GSAP встроены локально, моноширинных шрифтов нет.
- Файлы названы латиницей по сценам, план и черновик утверждены владельцем. Отправка клиенту или публикация только по его прямому слову.
Первыми устаревают размеры интерфейса площадок, флаги HyperFrames и поддержка альфы в редакторах. Факты проверены на октябрь 2026.
Глубже
Код фабрики, библиотека шаблонов и бренд-паки студии не выложены. Полные шаблоны ролей, разборы реальных роликов и настройку системы под команду студия AIVFX показывает в работе и в обучении: https://aivfx.ru.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

