--- name: hyperframes description: Create video compositions, animations, title cards, overlays, captions, voiceovers, audio-reactive visuals, and scene transitions in HyperFrames HTML. Use when asked to build any HTML-based video content, add captions or subtitles synced to audio, generate text-to-speech narration, create audio-reactive animation (beat sync, glow, pulse driven by music), add animated text highlighting (marker sweeps, hand-drawn circles, burst lines, scribble, sketchout), or add transitions between scenes (crossfades, wipes, reveals, shader transitions). Covers composition authoring, timing, media, and the full video production workflow. For CLI commands (init, lint, preview, render, transcribe, tts) see the hyperframes-cli skill. triggers: - "hyperframes" - "html video" - "video composition" - "interactive video" - "captions" - "tts video" - "kinetic typography" - "html in canvas" - "drawElementImage" - "html shader" - "vfx-iphone-device" - "vfx-liquid-glass" - "vfx-portal" od: mode: video surface: video scenario: video preview: type: html design_system: requires: false example_prompt: | A 5-second product reveal: a minimal high-end product on a clean cream surface, soft side light, slow camera push-in, restrained motion, no text overlays. --- # HyperFrames HTML is the source of truth for video. A composition is an HTML file with `data-*` attributes for timing, a GSAP timeline for animation, and CSS for appearance. The framework handles clip visibility, media playback, and timeline sync. ## Open Design integration (load-bearing for this surface) When this skill runs inside Open Design (i.e. `$OD_PROJECT_DIR` is set), the output flow is fixed: only the rendered `.mp4` should land in the project root. Composition source files (`hyperframes.json`, `meta.json`, `index.html`, assets) belong inside a hidden cache directory so they don't clutter the user's FileViewer or the chat's "produced files" chips. **Render workflow inside OD — fast path**: For most OD requests ("test video", "5s product reveal", "demo clip"), do NOT write the composition HTML from scratch. Use HyperFrames' built-in scaffold and edit only what the prompt actually changes. The "author from scratch" path costs minutes of model output and silent chat-tool time; the scaffold path costs seconds. ```bash # 1. Pick a hidden cache slot. Dotfile prefix → OD's project file # listing skips it, so the source files never clutter the chat. COMP_REL=".hyperframes-cache/$(date +%s)-$(openssl rand -hex 2)" COMP="$OD_PROJECT_DIR/$COMP_REL" # 2. Get an immediately-renderable scaffold (hyperframes.json, # meta.json, index.html with GSAP CDN + window.__timelines.main # already registered). This runs in your shell — pure file copy, # no Chrome, no network beyond the npx cache. npx hyperframes init "$COMP" --example blank --skip-skills --non-interactive # 3. Edit ONLY $COMP/index.html — change `data-duration` on the root # if you need a non-default length, swap the placeholder palette # in ``` Load in root: `
` ## Video and Audio Video must be `muted playsinline`. Audio is always a separate `