Plotbeat Data Videos
Unclecheng-li/AI_Animation
Turns a local CSV or JSON file, or data fetched from an approved source, into an editable data-visualization video by adapting HyperFrames templates.
A ready-made HyperFrames video block where an orbiting camera follows an ice logo that shatters, reforms into two text lines and fades, at 1920×1080.
$ npx skills add heygen-com/hyperframes --skill frost-sequence-camera-orbit -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install heygen-com/hyperframes frost-sequence-camera-orbit --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/heygen-com/hyperframes.git skills-src && mkdir -p .claude/skills && cp -r skills-src/registry/blocks/frost-sequence-camera-orbit .claude/skills/frost-sequence-camera-orbit && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "frost-sequence-camera-orbit" agent skill from https://github.com/heygen-com/hyperframes/tree/main/registry/blocks/frost-sequence-camera-orbit into .claude/skills/frost-sequence-camera-orbit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "frost-sequence-camera-orbit", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/heygen-com/hyperframes/tree/main/registry/blocks/frost-sequence-camera-orbitType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add heygen-com/hyperframes --skill frost-sequence-camera-orbit -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install heygen-com/hyperframes frost-sequence-camera-orbit --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/heygen-com/hyperframes.git skills-src && mkdir -p .agents/skills && cp -r skills-src/registry/blocks/frost-sequence-camera-orbit .agents/skills/frost-sequence-camera-orbit && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "frost-sequence-camera-orbit" agent skill from https://github.com/heygen-com/hyperframes/tree/main/registry/blocks/frost-sequence-camera-orbit into .agents/skills/frost-sequence-camera-orbit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "frost-sequence-camera-orbit", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add heygen-com/hyperframes --skill frost-sequence-camera-orbit -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install heygen-com/hyperframes frost-sequence-camera-orbit --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/heygen-com/hyperframes.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/registry/blocks/frost-sequence-camera-orbit .cursor/skills/frost-sequence-camera-orbit && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "frost-sequence-camera-orbit" agent skill from https://github.com/heygen-com/hyperframes/tree/main/registry/blocks/frost-sequence-camera-orbit into .cursor/skills/frost-sequence-camera-orbit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "frost-sequence-camera-orbit", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/heygen-com/hyperframes.git --path registry/blocks/frost-sequence-camera-orbit--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add heygen-com/hyperframes --skill frost-sequence-camera-orbit -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install heygen-com/hyperframes frost-sequence-camera-orbit --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/heygen-com/hyperframes.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/registry/blocks/frost-sequence-camera-orbit .gemini/skills/frost-sequence-camera-orbit && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "frost-sequence-camera-orbit" agent skill from https://github.com/heygen-com/hyperframes/tree/main/registry/blocks/frost-sequence-camera-orbit into .gemini/skills/frost-sequence-camera-orbit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "frost-sequence-camera-orbit", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install heygen-com/hyperframes frost-sequence-camera-orbitInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add heygen-com/hyperframes --skill frost-sequence-camera-orbit -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/heygen-com/hyperframes.git skills-src && mkdir -p .github/skills && cp -r skills-src/registry/blocks/frost-sequence-camera-orbit .github/skills/frost-sequence-camera-orbit && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "frost-sequence-camera-orbit" agent skill from https://github.com/heygen-com/hyperframes/tree/main/registry/blocks/frost-sequence-camera-orbit into .github/skills/frost-sequence-camera-orbit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "frost-sequence-camera-orbit", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add heygen-com/hyperframes --skill frost-sequence-camera-orbit -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install heygen-com/hyperframes frost-sequence-camera-orbit --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/heygen-com/hyperframes.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/registry/blocks/frost-sequence-camera-orbit .opencode/skills/frost-sequence-camera-orbit && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "frost-sequence-camera-orbit" agent skill from https://github.com/heygen-com/hyperframes/tree/main/registry/blocks/frost-sequence-camera-orbit into .opencode/skills/frost-sequence-camera-orbit/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "frost-sequence-camera-orbit", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
frost-sequence-camera-orbitA ready-made HyperFrames video block where an orbiting camera follows an ice logo that shatters, reforms into two text lines and fades, at 1920×1080.
This is a finished 22.5-second ice animation rather than an instruction set: logo, first text, second text, breakup and fade, rendered at 30 fps with the composition id `frost-sequence-rig`. The camera orbits fixed objects and slows into front-facing passes so the text stays readable, and one particle field drives every transition. You replace the two text moments and the SVG logo; camera and assembly timing are editable in the source.
Install it with `npx hyperframes add frost-sequence-camera-orbit`, which places the files under `compositions/frost-sequence-camera-orbit/`, then mount it from your host `index.html` using the composition id and source attributes. Rendering with custom values goes through `npx hyperframes render` and a `--variables` JSON string; the 216 variables are read at runtime through `window.__hyperframes.getVariables()`. The package bundles `frost.js`, GSAP, Geist fonts and licence notices, and two textures are fetched from a CDN at install.
3 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 0c76e52. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships script files (JavaScript, from the files we listed), which the agent can run.
Shell commands in SKILL.md call:
npxFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use npx, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Frost Sequence Camera Orbit loads about 9.6k tokens when it runs. Until then it costs about 45 tokens; SKILL.md has 2,341 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from heygen-com/hyperframes at commit 0c76e52, republished under its Apache-2.0 licence (© heygen-com). 2,341 words, ~9,628 tokens.
.claude/skills/frost-sequence-camera-orbit/SKILL.md (or your agent's skills folder). This skill also uses 98 other files; get the full folder from GitHub.A complete 22.5-second ice sequence: logo, first text, second text, breakup, and fade. The camera orbits the fixed objects with slower front-facing passes for reading. The same particle field carries each transition. Customize the two text moments and SVG logo; the source includes editable camera and assembly timing.
Composition id: frost-sequence-rig. Duration 22.5 s at 30 fps, 1920×1080.
frost-sequence-camera-orbit.html (131 KB)assets/example-logo.svg (1 KB)assets/fonts/Geist-Bold.ttf (65 KB)assets/fonts/Geist-OFL.txt (4 KB)assets/fonts/Geist-Regular.ttf (65 KB)assets/fonts/Geist-SemiBold.ttf (65 KB)assets/frost.js (1.5 MB)assets/Three-LICENSE.txt (1 KB)assets/ThreeMeshBVH-LICENSE.txt (1 KB)assets/OpentypeJS-LICENSE.txt (1 KB)assets/Clipper-LICENSE.txt (3 KB)assets/gsap-3.14.2.min.js (128 KB)assets/GSAP-NOTICE.txt (1 KB)assets/logo.svg (1 KB)assets/shards-atlas.png (fetched from the CDN at install)assets/test-mark.svg (1 KB)assets/textures/bluenoise64.png (12 KB)assets/textures/ice-inclusions-generated.png (fetched from the CDN at install)Install with npx hyperframes add frost-sequence-camera-orbit; by default the files above land under compositions/frost-sequence-camera-orbit/. Then mount the block from the host index.html:
<div
data-composition-id="frost-sequence-rig"
data-composition-src="compositions/frost-sequence-camera-orbit/frost-sequence-camera-orbit.html"
data-start="0"
data-duration="22.5"
data-track-index="1"
data-width="1920"
data-height="1080"
></div>Render with custom values by targeting the composition file directly:
npx --yes hyperframes@0.8.12 render 'compositions/frost-sequence-camera-orbit/frost-sequence-camera-orbit.html' --variables '{"headline1":"Hard to|break.","headline2":"Easy to|remember."}'Read at runtime via window.__hyperframes.getVariables(); declared on the composition root as data-composition-variables (single-quoted attribute, plain JSON).
| id | type | default | label / range |
| --------------------------- | ------- | ------------------- | --------------------------------------------------------------------------------------------- | ------------- | -------------------------- | ------- | ------- |
| headline1 | string | "Hard to | break." | First text ( | = line break) max 60 chars |
| headline2 | string | "Easy to | remember." | Second text ( | = line break) max 60 chars |
| logoUrl | string | "assets/logo.svg" | Logo SVG asset path (upload in Assets, then paste path) max 200 chars |
| assemblyMode | enum | "hybrid" | Assembly response (physical | directed | hybrid) |
| materialBaseColor | color | "#ffffff" | Base color |
| baseRoughness | number | 0.31 | Base roughness 0–0.5 step 0.005 |
| materialTransmission | boolean | true | Transmission |
| materialBacklight | number | 0.27 | Backlight through ice 0–2 step 0.01 |
| ior | number | 1.675 | Index of refraction 1–2 step 0.005 |
| thicknessScale | number | 2.04 | Thickness scale 0.1–3 step 0.01 |
| materialAbsorption | boolean | true | Absorption / tint |
| attenuationColor | color | "#d5f4ff" | Attenuation colour (white = no absorption, clear glass) |
| attenuationDistance | number | 6.54 | Attenuation distance 0.05–12 step 0.01 |
| materialDispersion | boolean | false | Dispersion |
| dispersion | number | 0.12 | Dispersion (0 = off; on/off reloads) 0–0.3 step 0.005 |
| materialReflections | boolean | true | Reflections |
| envIntensity | number | 2.04 | Environment intensity 0–3 step 0.01 |
| specularIntensity | number | 1.44 | Specular intensity 0–2 step 0.01 |
| materialFrost | boolean | true | Frost |
| materialInteriorFrost | number | 0 | Uniform frost 0–1 step 0.01 |
| frostScale | number | 0.7 | Scale 0.2–6 step 0.05 |
| frostThreshold | number | 0.62 | Threshold (1 = no frost, clear glass) 0–1 step 0.01 |
| frostSoftness | number | 0.24 | Softness 0.01–1 step 0.01 |
| frostRoughness | number | 0.73 | Roughness 0–1 step 0.01 |
| frostDiffuse | number | 0.11 | Diffuse (how much light frosted areas catch) 0–1 step 0.01 |
| materialSurfaceBumps | boolean | false | Object surface bumps / crack notches |
| materialCrystals | boolean | true | Crystal bumps |
| crystalBump | number | 0.01 | Crystal bump 0–1 step 0.01 |
| crystalScale | number | 4 | Crystal scale 4–80 step 1 |
| materialGrain | boolean | true | Grain bumps |
| materialGrainAmount | number | 0.47 | Grain strength 0–2 step 0.01 |
| materialGrainScale | number | 150 | Grain scale 1–150 step 1 |
| materialCutNormals | boolean | true | Fracture normals |
| materialMicro | boolean | true | Micro bumps |
| microBump | number | 0.445 | Micro bump 0–1 step 0.005 |
| microScale | number | 10 | Micro scale 10–200 step 1 |
| microCoverage | number | 0.25 | Micro coverage 0–1 step 0.01 |
| bumpMaskScale | number | 1.45 | Mask scale 0.1–6 step 0.05 |
| materialRipples | boolean | true | Ripples |
| rippleBump | number | 0.22 | Ripple bump 0–1 step 0.01 |
| rippleScale | number | 23 | Ripple scale 2–30 step 0.5 |
| materialSmudges | boolean | true | Smudges |
| smudgeAmount | number | 0.78 | Amount 0–1 step 0.01 |
| smudgeCoverage | number | 0.58 | Coverage 0–1 step 0.01 |
| smudgeMaskScale | number | 1.85 | Mask scale 0.1–6 step 0.05 |
| smudgeAnisotropy | number | 16.5 | Anisotropy 1–20 step 0.5 |
| smudgeRoughness | number | 0.75 | Roughness 0–1 step 0.01 |
| smudgeWhiteness | number | 0.035 | Whiteness 0–0.5 step 0.005 |
| smudgeScale | number | 1.3 | Scale 0.5–10 step 0.1 |
| materialCracks | boolean | true | Cracks |
| crackLargeScale | number | 2.45 | Large scale 0.3–8 step 0.05 |
| crackWarp | number | 0.22 | Warp 0–1.5 step 0.01 |
| crackCoverage | number | 0.19 | Coverage 0–1 step 0.01 |
| crackRegionScale | number | 1.8 | Region scale 0.1–4 step 0.05 |
| crackRegionCoverage | number | 0.6 | Region coverage 0–1 step 0.01 |
| veinScale | number | 8 | Vein scale 1–20 step 0.25 |
| veinContrast | number | 0.55 | Vein contrast 0–1 step 0.01 |
| crackWidth | number | 0.0025 | Width 0.0005–0.02 step 0.0005 |
| crackBrightness | number | 0.65 | Brightness 0–3 step 0.01 |
| crackDarkness | number | 0.69 | Darkness 0–1 step 0.01 |
| crackRefraction | number | 0.076 | Refraction 0–0.1 step 0.001 |
| crackSurfaceStrength | number | 0.16 | Surface strength 0–1 step 0.01 |
| fineScale | number | 18.4 | Fine scale 2–20 step 0.1 |
| fineAmount | number | 0.52 | Fine amount 0–1 step 0.01 |
| fineCoverage | number | 1 | Fine coverage 0–1 step 0.01 |
| materialScatter | boolean | true | Internal scattering |
| materialInclusionScale | number | 0.05 | Inclusion scale 0.05–3 step 0.01 |
| materialInclusionAmount | number | 2 | Photographic inclusions 0–2 step 0.01 |
| interiorScatter | number | 0.09 | Interior scatter 0–1 step 0.01 |
| materialClearcoat | boolean | true | Clearcoat |
| clearcoat | number | 0 | Clearcoat 0–1 step 0.01 |
| clearcoatRoughness | number | 0 | Clearcoat roughness 0–1 step 0.005 |
| materialShardNormals | boolean | true | Shard normals |
| spriteNormal | number | 0.15 | Sprite normal strength 0–2.5 step 0.05 |
| materialShardFrost | boolean | true | Shard frost |
| materialShardTransmission | boolean | true | Shard transparency |
| spriteSeeThrough | number | 1 | See-through (0 = off; on/off reloads) 0–1 step 0.01 |
| materialShardReflections | boolean | true | Shard reflections |
| minPixelSize | number | 0.25 | Minimum pixel size 0–4 step 0.05 |
| grainSizeMultiplier | number | 1.05 | Grain size multiplier 0.2–4 step 0.05 |
| spriteSize | number | 1.9 | Sprite size 0.3–4 step 0.05 |
| spriteTilt | number | 12 | Sprite tilt 0–70 step 1 |
| spriteAlphaCut | number | 0.6 | Alpha cut 0.05–0.6 step 0.01 |
| fontWeight | enum | "600" | Type · Weight (Geist) (400 | 600 | 700) |
| letterSpacing | number | 0.01 | Type · Letter spacing -0.1–0.4 step 0.005 |
| shardAmount | number | 0.44 | Shards · Visible fraction of the broken volume (Powder amount) 0.02–1 step 0.01 |
| strayDust | number | 24 | Shards · Ambient dust motes around the object (the experiment had 40) 0–200 step 1 |
| sliceRadius | number | 0.6 | Break · First (diagonal) slice radius 0.05–1.5 step 0.01 |
| sliceStrength | number | 21.5 | Break · First slice strength 1–40 step 0.5 |
| finalEjectBoost | number | 2.5 | Break · Last break: eject speed and speed cap multiplier 1–6 step 0.1 |
| shatterRadius | number | 0.45 | Break · Follow-up slice radius (sets their spacing too) 0.1–1.5 step 0.01 |
| shatterStrength | number | 32.5 | Break · Follow-up slice strength 1–40 step 0.5 |
| cutThreshold | number | 0.3 | Tune break · Cut threshold (surface gone above this erosion) 0.3–0.98 step 0.01 |
| cutSoftness | number | 0.19 | Tune break · Cut softness 0.005–0.3 step 0.005 |
| edgeWidth | number | 0.19 | Tune break · Crumbly edge band width 0.05–0.8 step 0.01 |
| edgeInset | number | 0 | Tune break · Edge inset 0–0.3 step 0.005 |
| brushSoftness | number | 0.15 | Tune break · Brush softness (edge falloff of a slice) 0.02–1 step 0.01 |
| brushNoise | number | 0.4 | Tune break · Brush noise (ragged boundary) 0–1 step 0.01 |
| crumbleRate | number | 4.3 | Tune break · Crumble rate along cracks (high = the whole shape goes at once) 0–6 step 0.05 |
| crumbleCrackBias | number | 5.1 | Tune break · Crumble crack bias 0–6 step 0.05 |
| crumbleDuration | number | 0.35 | Tune break · Crumble duration after a stroke 0–2 step 0.01 |
| ejectSpeed | number | 0.91 | Flight · Eject speed 0–4 step 0.01 |
| ejectSpread | number | 0.48 | Flight · Eject spread along the normal 0–3 step 0.01 |
| ejectTurbulence | number | 4 | Flight · Eject turbulence 0–4 step 0.01 |
| drag | number | 0 | Flight · Drag (speed decays by this per second) 0–8 step 0.01 |
| gravity | number | 0 | Flight · Gravity (0 = shards never fall) 0–2 step 0.005 |
| turbulence | number | 4 | Flight · Turbulence strength (curl noise) 0–4 step 0.01 |
| turbulenceScale | number | 2.65 | Flight · Turbulence scale 0.2–8 step 0.05 |
| turbulenceDecay | number | 3.65 | Flight · Turbulence decay with age (low = keeps swirling) 0.05–4 step 0.01 |
| clumpCohesion | number | 0.9 | Flight · Clump cohesion (shards orbit a leader; 0 = none) 0–10 step 0.05 |
| followObject | number | 30 | Flight · Shards follow the object motion for (s; 30 = whole flight) 0–30 step 0.5 |
| settleTime | number | 2.2 | Flight · Settle time (velocity is killed after this; 12 = never) 0.3–12 step 0.05 |
| settledDrift | number | 1 | Flight · Organic drift once settled (curl noise) 0–1 step 0.005 |
| maxSpeed | number | 26.3 | Flight · Speed cap 1–40 step 0.1 |
| repelStrength | number | 30 | Flight · Push out of the solid shape while it breaks 0–30 step 0.1 |
| repelRange | number | 0.97 | Flight · Push range outside the surface 0.02–2 step 0.01 |
| repelRadial | number | 17.5 | Flight · Push away from the shape centre (clears pockets and the hole) 0–60 step 0.5 |
| repelRadialRange | number | 3.3 | Flight · Radial push range (object radii) 1–4 step 0.05 |
| tumble | number | 1.05 | Flight · Tumble rate 0–12 step 0.05 |
| returnGroupStagger | number | 1.35 | Assembly · Regional delay (seconds) 0–1.5 step 0.05 |
| returnGroupScale | number | 2.55 | Assembly · Region / noise size 0.1–3 step 0.05 |
| returnGroupSeed | number | 60765 | Return · Group timing seed 0–65535 step 1 |
| formSpread | number | 0 | Return · Wave spread (nearest shards leave first, seconds) 0–4 step 0.05 |
| waveReach | number | 10 | Return · Distance over which the wave spreads 0.2–10 step 0.1 |
| formJitter | number | 2.8 | Return · Per-shard stagger (random delay up to this) 0–3 step 0.05 |
| formFill | number | 3 | Return · Fill-in rate for voxels no shard returns to 0.05–3 step 0.05 |
| returnSpring | number | 29.9 | Return · Spring stiffness 0.5–40 step 0.1 |
| returnDamping | number | 1.34 | Return · Spring damping 0.2–2 step 0.01 |
| returnRamp | number | 0.45 | Return · Spring ramp-in (seconds until it pulls at full strength) 0–3 step 0.05 |
| returnMaxSpeed | number | 60 | Return · Speed cap on the way home 1–60 step 0.5 |
| alignToSurface | number | 1 | Return · Shards turn to lie on the surface (0 = keep tumbling) 0–1 step 0.01 |
| alignCurve | number | 3.75 | Return · Alignment curve over the flight home (1 linear, higher = later) 0.2–4 step 0.05 |
| healRate | number | 3 | Return · Neighbour heal rate 0.02–3 step 0.01 |
| cellRestore | number | 60 | Return · Cell restore rate 0–60 step 0.5 |
| landedFade | number | 1.65 | Return · Landed shard fade 0–2 step 0.01 |
| refrostTime | number | 10.6 | Return · Refrost time 0.2–12 step 0.1 |
| keyColor | color | "#f0f7ff" | Light · Key colour |
| keyIntensity | number | 5.05 | Light · Key intensity 0–12 step 0.05 |
| keyElevation | number | 42 | Light · Key elevation 10–89 step 0.5 |
| keyAzimuth | number | -38 | Light · Key azimuth -90–90 step 0.5 |
| keySize | number | 1.25 | Light · Key size (softbox) 0.2–3 step 0.01 |
| fill | number | 0.18 | Light · Fill intensity (hemisphere, diffuse only: barely shows on clear ice) 0–1.5 step 0.005 |
| fillColor | color | "#cadde9" | Light · Fill sky colour |
| fillGroundColor | color | "#172635" | Light · Fill ground colour |
| rim | number | 2.5 | Light · Rim spot intensity 0–5 step 0.01 |
| rimColor | color | "#d9f1ff" | Light · Rim colour |
| rimElevation | number | 20 | Light · Rim elevation (0 = straight behind) 0–89 step 0.5 |
| swayAmplitude | number | 0 | Light · Key sway amplitude 0–0.15 step 0.001 |
| swayPeriod | number | 35 | Light · Key sway period 2–40 step 0.5 |
| envSoftbox | number | 1.1 | Light · Environment softbox (the main light on glass) 0–3 step 0.01 |
| envRim | number | 1.4 | Light · Environment rim strip 0–3 step 0.01 |
| envFill | number | 0.22 | Light · Environment front fill 0–1 step 0.005 |
| backdropTop | color | "#050505" | Backdrop · Top colour |
| backdropMid | color | "#050505" | Backdrop · Mid colour |
| backdropBottom | color | "#050505" | Backdrop · Bottom colour |
| backdropCenterX | number | 0.73 | Backdrop · Bloom centre X 0–1 step 0.005 |
| backdropCenterY | number | 0.22 | Backdrop · Bloom centre Y 0–2 step 0.005 |
| backdropRadius | number | 0.8 | Backdrop · Bloom radius 0.1–2 step 0.005 |
| backdropFalloff | number | 0.85 | Backdrop · Bloom falloff 0.5–6 step 0.01 |
| backdropNoise | number | 0 | Backdrop · Dither noise 0–3 step 0.05 |
| bloomThreshold | number | 3 | Post · Bloom threshold 0–3 step 0.01 |
| bloomIntensity | number | 0.04 | Post · Bloom intensity 0–1.5 step 0.005 |
| bloomRadius | number | 1 | Post · Bloom radius 0–1 step 0.005 |
| monochrome | number | 0.04 | Post · Monochrome 0–1 step 0.01 |
| tonemap | enum | "aces" | Post · Tonemap (agx | aces | neutral | linear) |
| exposure | number | 1 | Post · Exposure 0.1–4 step 0.01 |
| contrast | number | 1.03 | Post · Contrast 0.6–1.6 step 0.005 |
| blackLift | number | 0 | Post · Black lift 0–0.1 step 0.001 |
| vignetteStrength | number | 0.14 | Post · Vignette strength 0–1 step 0.005 |
| vignetteSoftness | number | 1.2 | Post · Vignette softness 0.1–1.5 step 0.005 |
| vignetteRadius | number | 1.2 | Post · Vignette radius 0.2–1.6 step 0.005 |
| grainStrength | number | 0 | Post · Film grain 0–0.15 step 0.001 |
| quality | enum | "full" | Performance · Quality profile (full | lite) |
| upscaler | enum | "fsr1" | Performance · Upscaler (fsr1 | taau | bilinear | native) |
| renderScale | number | 1 | Performance · Scene resolution scale (upscaled to 1080p) 0.35–1 step 0.05 |
| shapeResolution | enum | "256" | Shape voxel resolution (128 | 256 | 384) |
| erosionResolution | enum | "96" | Performance · Erosion field resolution (voxels per axis) (64 | 96 | 128 | 192) |
| particleCount | enum | "100k" | Performance · Powder particles (100k | 250k | 500k | 1M) |
| logoMeshDetail | number | 2 | Shape · Logo mesh detail (1-4; higher = finer surface) 1–4 step 1 |
| deformStrength | number | 0 | Geometry · Ice deformation strength (0 = original) 0–0.08 step 0.001 |
| deformScale | number | 0.41 | Geometry · Noise feature size (larger = broader) 0.001–0.5 step 0.001 |
| deformSeed | number | 7 | Geometry · Deformation seed 0–65535 step 1 |
| rimAzimuth | number | -146 | Light · Rim azimuth -180–180 step 1 |
| rimAngle | number | 26 | Light · Rim beam angle 10–89 step 1 |
| rimSize | number | 0.45 | Light · Rim reflection size 0.1–3 step 0.05 |
| fillReflectionStrength | number | 0.3 | Light · Fill reflection strength 0–2 step 0.01 |
| accentCoolIntensity | number | 3.71 | Studio Cool accent · intensity 0–4 step 0.01 |
| accentCoolReflection | number | 2.31 | Studio Cool accent · reflection 0–3 step 0.01 |
| accentCoolElevation | number | 63 | Studio Cool accent · elevation -85–85 step 1 |
| accentCoolAzimuth | number | 22 | Studio Cool accent · azimuth -180–180 step 1 |
| accentCoolSize | number | 2.65 | Studio Cool accent · size 0.1–3 step 0.05 |
| accentCoolColor | color | "#ff5900" | Studio Cool accent · color |
| accentWarmIntensity | number | 2.99 | Studio Warm accent · intensity 0–4 step 0.01 |
| accentWarmReflection | number | 0.34 | Studio Warm accent · reflection 0–3 step 0.01 |
| accentWarmElevation | number | 30 | Studio Warm accent · elevation -85–85 step 1 |
| accentWarmAzimuth | number | -30 | Studio Warm accent · azimuth -180–180 step 1 |
| accentWarmSize | number | 1.2 | Studio Warm accent · size 0.1–3 step 0.05 |
| accentWarmColor | color | "#75aaff" | Studio Warm accent · color |
| returnNoiseAmount | enum | "2" | Assembly · Regional pattern (2 | 1 | 0) |
| assemblyFrontDuration | number | 3.2 | Assembly · Growth duration (seconds) 0–6 step 0.05 |
| assemblyOriginX | number | -0.65 | Assembly · Growth start X -1–1 step 0.01 |
| assemblyOriginY | number | 0.55 | Assembly · Growth start Y -1–1 step 0.01 |
| assemblyAngle | number | -35 | Assembly · Seam direction (degrees) -180–180 step 1 |
| assemblySpread | number | 0.65 | Assembly · Outward spread vs seam travel 0–1 step 0.01 |
| assemblyFrontNoise | number | 0.35 | Assembly · Growth edge irregularity 0–1 step 0.01 |
| assemblySpeedVariation | number | 0.65 | Assembly · Return speed variation 0–1 step 0.01 |
| assemblyBend | number | 1.2 | Assembly · Approach path bend 0–3 step 0.05 |
| assemblySwirl | number | 1.1 | Assembly · Approach twist 0–3 step 0.05 |
| assemblyLandingVariation | number | 0.8 | Assembly · Landing transition variation 0–1 step 0.01 |
| rendererProfile | enum | "studio" | Renderer experiment (reload required) (original | lookup | mesh | studio | matcap) |
| textWidth | number | 6.5 | Type · Headline block width (the mark is 2.6 wide) 1.2–9 step 0.05 |
| textLineHeight | number | 0.95 | Type · Line height 0.7–1.4 step 0.01 |
| textDepth | number | 0.16 | Type · Extrusion depth (fraction of the font size) 0.05–0.8 step 0.01 |
| textBevel | number | 0.04 | Type · Bevel (fraction of the font size) 0–0.12 step 0.005 |
| textCorner | number | 0.008 | Type · Corner rounding (fraction of the font size) 0–0.06 step 0.002 |
| textMeshDetail | number | 4 | Type · Text mesh detail (1-4; higher = smoother deformation) 1–4 step 1 |
window.__timelines["frost-sequence-rig"].hf-seek CustomEvent; every frame is a closed-form function of time (seeded PRNG only, no rAF loops, no Date.now).data-composition-variables a single-quoted attribute with plain " JSON. Never save it through Studio's Design panel.<canvas> in static markup; create it at runtime.© heygen-com, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 98 other files (assets) in registry/blocks/frost-sequence-camera-orbit of heygen-com/hyperframes.
Open the folder on GitHubat commit 0c76e52
We found 1 copy of this SKILL.md (exact, near-identical or edited) in other folders, from 1 other GitHub owner. This page covers the copy in heygen-com/hyperframes, which our catalogue first saw on October 7, 2026.
Frost Sequence Camera Orbit next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Frost Sequence Camera Orbit this skillheygen-com/hyperframes | 59k | 1 repos | ~9.6k | Automated safety check: Pass | Apache-2.0 | |
| Plotbeat Data VideosUnclecheng-li/AI_Animation | 1.5k | — | ~2.6k | Automated safety check: Pass | MIT | |
| Yuv Viral Videohoodini/ai-agents-skills | 281 | — | ~7.5k | Automated safety check: Notes | None | |
| Duo Foldable Phone Comparisonheygen-com/hyperframes-community-skills | 178 | 1 repos | ~2k | Automated safety check: Pass | Apache-2.0 | |
| Talking-Head Video Pipelinenaive-kun/naive-video-skill | 132 | — | ~3.3k | Automated safety check: Pass | MIT | |
| X Posting License Videoheygen-com/hyperframes-community-skills | 178 | 1 repos | ~1.2k | Automated safety check: Pass | Apache-2.0 |
Unclecheng-li/AI_Animation
Turns a local CSV or JSON file, or data fetched from an approved source, into an editable data-visualization video by adapting HyperFrames templates.
hoodini/ai-agents-skills
Edit any selfie or screen-share footage into a viral short-form video in YUV.AI's signature style — Apple-style liquid-glass cards (real CSS backdrop-filter), dark-mode polish, MrBeast-paced cuts…
heygen-com/hyperframes-community-skills
Builds side-by-side comparison and meme videos on a fixed photo of hands holding an open foldable phone, with your own HTML playing in each screen.
naive-kun/naive-video-skill
Turns raw or rough-cut talking-head footage into a captioned, animated final video through a staged, resumable production pipeline.
heygen-com/hyperframes-community-skills
Builds a short animated posting-license card video from an X profile's name, handle, counters and avatar, using a fixed template that the agent only fills in and renders.
notivn/AIEV
Build a Vietnamese vertical TikTok explainer in the "MỔ XẺ PAPER AI" (AI paper dissection) format with HyperFrames (HTML/CSS/GSAP → MP4), Noti.vn style.
heygen-com/hyperframes
Collects motion rules, scene blueprints, transitions and runtime adapters for HyperFrames video compositions, with GSAP as the default animation runtime.
heygen-com/hyperframes
Adds captions to a single-subject talking-head video without editing the footage, from plain subtitles to cinematic text placed behind the speaker.
heygen-com/hyperframes
Turns a weekly changelog markdown file into a branded HyperFrames video with voiceover, animated mock-UI scenes and captions, using fonts, background and scripts bundled in the skill.
heygen-com/hyperframes
Turns an article, notes or a topic brief into an explainer video whose visuals are invented per scene, built frame by frame in HyperFrames with no footage.
heygen-com/hyperframes
Imports Figma assets, brand tokens, components and motion into a HyperFrames video composition, using the Figma REST API with a connector or native export for shaders.
heygen-com/hyperframes
Finds, generates and edits media for HyperFrames video projects: music, sound effects, images, icons, logos, voiceovers, captions and color grades.
Categories
A ready-made HyperFrames video block where an orbiting camera follows an ice logo that shatters, reforms into two text lines and fades, at 1920×1080. 5-second ice animation rather than an instruction set: logo, first text, second text, breakup and fade, rendered at 30 fps with the composition id `frost-sequence-rig`. The camera orbits fixed objects and slows into front-facing passes so the text stays readable, and one particle field drives every transition.
Frost Sequence Camera Orbit fits situations like: adding a branded ice-logo intro or outro to a HyperFrames video; rendering a 22.5-second title sequence with two customizable text lines; starting from an editable camera-orbit and particle-breakup composition.
Run `npx skills add heygen-com/hyperframes --skill frost-sequence-camera-orbit -a claude-code`. Or copy the skill folder (registry/blocks/frost-sequence-camera-orbit in heygen-com/hyperframes) into .claude/skills/frost-sequence-camera-orbit in your project. Claude Code loads it when a task matches its description.
Run `npx skills add heygen-com/hyperframes --skill frost-sequence-camera-orbit -a codex`. Or copy the skill folder (registry/blocks/frost-sequence-camera-orbit in heygen-com/hyperframes) into .agents/skills/frost-sequence-camera-orbit in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add heygen-com/hyperframes --skill frost-sequence-camera-orbit -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/frost-sequence-camera-orbit, .gemini/skills/frost-sequence-camera-orbit, .github/skills/frost-sequence-camera-orbit and .opencode/skills/frost-sequence-camera-orbit in your project.
Going by SKILL.md and its folder, Frost Sequence Camera Orbit needs JavaScript for the scripts in its folder and the command-line tools its instructions call (npx). Our summary lists: Node.js with npx to run the hyperframes CLI; A HyperFrames project with a host index.html; Network access at install to fetch two CDN textures.
SKILL.md contains no URLs. Its commands use npx, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Frost Sequence Camera Orbit is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 9.6k tokens (SKILL.md is roughly 39k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Frost Sequence Camera Orbit: Plotbeat Data Videos (Unclecheng-li/AI_Animation, 1.5k stars), Yuv Viral Video (hoodini/ai-agents-skills, 281 stars), Duo Foldable Phone Comparison (heygen-com/hyperframes-community-skills, 178 stars) and Talking-Head Video Pipeline (naive-kun/naive-video-skill, 132 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
heygen-com (a GitHub organization) maintains it in heygen-com/hyperframes, which has 58,669 GitHub stars. The repository holds 32 skills in this directory. The repository was last updated on October 8, 2026.
Source: heygen-com/hyperframes on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.