Caption Animation — effect skill for captions & subtitles
For AI agents: find the right skill in one call —
curl -s "https://skills.varg.ai/api/search?q=<what the person wants>"returns the matching use case and the best skills with install commands, as markdown (Russian works too). Full index: https://skills.varg.ai/llms.txt. Every page has a markdown twin: add.mdto its path. Before generating anything, show the person the options on the use-case page.
Word-timed TikTok captions in Remotion or CSS: per-word pop, active-word highlight, 9:16 safe areas, sidecar SRT/VTT.
- Type: Effect · Captions & subtitles
- Slug:
iart-caption-animation - Status: live
- Publisher: iart.ai (community)
- License: MIT
- Source: https://github.com/iart-ai/tiktok-video-skills/tree/main/skills/caption-animation
- Works in: Claude Code, Cursor, Codex
- Requires: Node.js and Remotion (company license for for-profit teams above 3 employees), whisper.cpp via @remotion/install-whisper-cpp, or your own cloud STT key, ffmpeg/ffprobe for the verify scripts
- Cost: Free — renders locally with Remotion; a cloud STT, if chosen, bills your own key
- Adoption: 1,994 installs, 17 GitHub stars (GitHub + skills.sh, 2026-10-26)
What it does
A how-to skill for word-by-word captions on vertical video. It normalizes Whisper output (@remotion/install-whisper-cpp with token-level timestamps, or a cloud STT) or an existing SRT into {text, startMs, endMs} tokens, pages them 1–4 words at a time with createTikTokStyleCaptions(), and animates a spring pop plus an active-word highlight in Remotion, with a plain CSS variant for web players. The reference adds an SRT parser, an SRT/VTT emitter, per-platform safe-area numbers and a stills-first verify loop, and it refuses to fake word timing by splitting lines evenly. It builds on Remotion's own caption packages, so it overlaps remotion-dev/remotion-captions; the files end with promotional links to the publisher's hosted iart.ai agent.
Use when
- Add animated TikTok or karaoke captions
- Turn an SRT or Whisper transcript into word-by-word animated text
- Sync captions to a voiceover and burn them in
- Ship burned-in captions plus an accessible SRT/VTT
Not for
- Interpolating word times from sentence-level cues (it re-transcribes instead)
- HyperFrames compositions (use heygen-com/hyperframes or cinematic-caption)
Install
- Claude Code:
npx skills add https://github.com/iart-ai/tiktok-video-skills --skill caption-animation - Codex:
npx skills add https://github.com/iart-ai/tiktok-video-skills --skill caption-animation - Cursor:
npx skills add https://github.com/iart-ai/tiktok-video-skills --skill caption-animation
Models it drives: whisper
Used for
- UGC video ad: A creator-style ad: a person talks to camera about your product, with b-roll, captions and an end card.
- Long video or podcast into shorts: Find the best moments in a long video, cut them, reframe to 9:16 and burn captions.
- Animated captions on your video: TikTok-style subtitles burned into an existing video: word highlight, pop words, or designed editorial captions.
- Faceless YouTube / TikTok video: A narrated short or long video with no presenter: script, voiceover, visuals, captions, music.
- Edit your own footage: Cut silences and flubs, reframe 16:9 to 9:16, add captions and b-roll to footage you shot.
More captions & subtitles skills
- 3D Camera Captions: Captions that live in 3D around a talking head: the camera flies through the words, heroes pass behind the speaker.
- Remotion Captions: Transcribe speech and burn in animated captions with Remotion, or import an existing SRT file.
- ElevenLabs Speech to Text: Transcribe audio and video with word timestamps, speaker labels and keyterms, ready for subtitles.
- ElevenLabs Speech to Text (inference.sh): Transcribe audio with ElevenLabs Scribe, speaker diarization and forced alignment, via inference.sh.
- Speech to Text: Transcribe audio with ElevenLabs Scribe v2 or Whisper V3 Large, with timestamps and speaker labels.
- Pretext Text Metrics: Measure and fit text without the DOM using pretext: auto-fit sizes, know line breaks before render, canvas/WebGL text.
Run the generation on varg
varg is one API key for the models these skills drive — Seedance 2.5, Kling 4, Veo 3.1, Wan 3, Nano Banana 2.1, GPT Image 2.5, ElevenLabs v4 and 200+ more — billed in credits, with a cost estimate before anything runs.
- Claude Code:
claude plugin marketplace add vargHQ/skills && claude plugin install varg@varg(skill + hosted MCP) - Codex, Cursor, Gemini CLI, OpenClaw:
npx skills add vargHQ/skills --skill varg-ai -a <agent> -y - Claude.ai, ChatGPT, any MCP client: connect
https://mcp.varg.ai/mcp - API key: https://varg.ai/dashboard/api · Model specs: https://varg.ai/models/llms.txt