Pick the motion by what the viewer should learn
Each Code Animations block answers a different “what is the viewer supposed to notice.” Map the intent to the block:
The first four are the workhorses of a code walkthrough — they keep the code readable and the viewer oriented. The last three are entrance spectacle: they look great as an opener or a hero moment, but they trade legibility for motion, so don’t ask them to carry an explanation.
Prompting a typing reveal
code-typing reveals code character by character with a caret that tracks the frontier — no CSS animation, so it seeks cleanly. Give it the exact code and a pace; the agent re-bakes the block’s syntax tokens to your snippet.
/motion-graphics 6-second 1920x1080 video. A dark editor types this snippet, character by character, caret tracking the frontier, then holds on the blinking cursor for the final second:Rendered from the prompt above, unedited. Quote the code as a literal block. Prose descriptions of code get paraphrased.Use thecode-typingregistry block. No narration, no image or media files.
- ❌
type out a function that seeks to zero and captures - ✅ paste the actual snippet in a fenced block — it renders verbatim
- ❌
types the code and ends - ✅
types the code, then holds on the blinking cursor for the final second
Prompting a diff or a highlight
For “here’s what changed,” handcode-diff the before and after and let it color the delta. For “look at this line,” give code-highlight the full context and name the target line.
/motion-graphics 6-second 1920x1080 video. Show this edit toRendered from the prompt above, unedited.api.tsas a colored diff — the removed line collapses in red, the added line expands in green: removed:const res = await fetch(url)added:const res = await fetch(url, { signal })Use thecode-diffregistry block. No audio.
/motion-graphics 5-second 1920x1080 video. Show a 12-line config file; a highlight band sweeps to line 7 (Rendered from the prompt above, unedited — the agent authors plausible surrounding config lines; paste all 12 if the exact file matters. Name the target line unambiguously. The block dims context around one line — tell it which.timeout: 30_000) while the surrounding lines dim. Hold with line 7 lit. Use thecode-highlightregistry block. No audio.
- ❌
highlight the important line - ✅
highlight line 7 (timeout: 30_000)
Prompting a scroll-through
code-scroll moves the camera down a long file to bring a target line to center and spotlights it — the block for walking real modules, not toy snippets.
/motion-graphics 6-second 1920x1080 video. Scroll a ~60-line source file so line 44 (Ask the scroll to ease and settle, not snap. A linear scroll that stops dead reads mechanical.return dedupeFrames(frames)) arrives at center and gets spotlighted; ease the scroll and let it settle without snapping. Use thecode-scrollregistry block. No audio.
- ❌
scroll straight to the line - ✅
ease the scroll and let it settle— pair with the motion grammar
Choosing a theme by name
The Code Snippets blocks are pre-styled shells with per-character typing already built in. There are two families, and you select one by asking for it in plain language — the exact block name is the theme name. macOS Terminal.app profiles — a real terminal window chrome. Say “apple terminal, ocean profile” →code-snippet-apple-terminal-ocean. The full set of profiles:
VS Code workbench themes — full editor chrome (activity bar, sidebar, tabs, terminal, status bar). Say “monokai” or “visual studio dark”:
/motion-graphics 5-second 1920x1080 video. A macOS Terminal window in the Ocean profile typesMatch the theme to the surface you’re claiming to show. A terminal command in a VS Code editor chrome reads wrong; a source file in Terminal.app reads wrong.npx skills add heygen-com/hyperframescharacter by character, then holds on the prompt. Use thecode-snippet-apple-terminal-oceanregistry block. No narration.
- ❌
monokai theme typing a shell command - ✅
apple terminal homebrew profile typing a shell command
Pairing with a pull request
When the code you’re animating comes from a real PR, don’t hand-write the beats — the/pr-to-video workflow reads the diff and composes code-diff, code-highlight, and code-scroll around the actual changed hunks. Use the blocks on this page directly when you’re illustrating a concept; route through the PR workflow when you’re narrating a specific change set.
Where to go next
- Anatomy of a one-shot prompt — the skeleton every prompt above uses.
- Copy-paste examples — full prompts you can adapt.
- Code and PRs — turning a GitHub PR into a code-change video.
- Motion that reads premium — the hold-and-settle rules the code blocks still need from you.