hyperframes-cli
CLI toolkit for scaffolding, validating, previewing, and rendering HyperFrames video compositions.
- Scaffolds projects with
init(9 templates available), lints compositions for structural errors, and visually inspects layouts for text overflow and clipping issues across the timeline - Preview mode hot-reloads on file changes; render supports quality tiers (draft/standard/high), multiple formats (MP4/WebM), frame rates, and parametrized variable overrides
- Includes environment troubleshooting commands (
doctor,browser,info) and requires Node.js >= 22 and FFmpeg - For audio preprocessing (TTS, transcription, background removal), use the
hyperframes-mediaskill instead
HyperFrames CLI
Everything runs through npx hyperframes unless project instructions specify a local wrapper. Obey the local wrapper exactly. Requires Node.js >= 22 and FFmpeg.
Workflow
- Scaffold —
npx hyperframes init my-video(orcapturefrom a URL) - Write — author HTML composition (see the
hyperframes-coreskill) - Lint —
npx hyperframes lint - Validate —
npx hyperframes validate(runtime errors + contrast) - Visual inspect —
npx hyperframes inspect - Preview —
npx hyperframes previewopens Studio, the timeline editor where the user can manually edit anything (not just watch). Review there, then ask before rendering. - Render — pick the variant:
- Iterate:
npx hyperframes render --quality draft - Deliver:
npx hyperframes render --quality high --output out.mp4 - CI / cross-host repro:
npx hyperframes render --docker --strict --output out.mp4 - Cloud (long / large):
npx hyperframes lambda render ./my-project --width 1920 --height 1080 --wait(see Lambda below)
- Iterate:
Run lint, validate, and inspect before preview. lint catches missing data-composition-id, overlapping tracks, and unregistered timelines. validate loads the composition in headless Chrome and reports runtime console errors plus WCAG contrast issues. inspect seeks through the timeline and reports text spilling out of bubbles/containers or off the canvas — and, when a *.motion.json sidecar is present, verifies motion intent (entrances firing under seek, stagger order, in-frame, liveness) against that same seeked timeline.