make-video
Make videos drawn with code: motion graphics, launch and explainer videos, animated shorts, animated charts and data, logo…
Workflow for rendering a Helios composition to a video file. Use when you need to automate video production or export a high-quality animation.
Claude Code
$ npx -y skills add BintzGavin/helios --skill render-video --agent claude-code
Codex
$ npx skills add BintzGavin/helios --skill render-video -a codex -y
Cursor
$ npx skills add BintzGavin/helios --skill render-video -a cursor -y
Gemini CLI
$ npx skills add BintzGavin/helios --skill render-video -a gemini-cli -y
GitHub Copilot
$ npx skills add BintzGavin/helios --skill render-video -a github-copilot -y
OpenCode
$ npx skills add BintzGavin/helios --skill render-video -a opencode -y
Windsurf
$ npx skills add BintzGavin/helios --skill render-video -a windsurf -y
name: render-video description: Workflow for rendering a Helios composition to a video file. Use when you need to automate video production or export a high-quality animation.
Rendering is the process of capturing a composition frame-by-frame and encoding it into a video file (e.g., MP4). This is done using the `@helios-project/renderer` package in a Node.js environment.
npx -y @helios-project/cli@latest render composition.html -o output.mp4
Use the script below only when you need a custom pipeline, such as input props, several audio tracks, or progress callbacks.
The renderer needs a URL for the composition:
Create a file named `render.js` (or `render.ts` if using `ts-node`).
import { Renderer } from '@helios-project/renderer';
import path from 'path';
async function main() {
// 1. Configuration
const compositionUrl = 'http://localhost:3000/composition.html';
const outputPath = path.resolve('output.mp4');
// 2. Initialize Renderer
const renderer = new Renderer({
width: 1920,
height: 1080,
fps: 30,
durationInSeconds: 10,
// frameCount: 300, // Optional: Override durationInSeconds with exact frame count
mode: 'canvas', // Use 'dom' if your animation uses CSS/HTML elements
// Audio Configuration
audioTracks: [
{ path: 'background.mp3', volume: 0.5 },
{ path: 'voiceover.wav', offset: 2 }
],
audioCodec: 'aac',
// Input Props (Dynamic Content)
inputProps: {
title: "Custom Render",
color: "#00ff00"
}
});
console.log(`Starting render of ${compositionUrl}...`);
// 3. Execute Render
try {
await renderer.render(compositionUrl, outputPath, {
onProgress: (p) => {
const percent = Math.round(p * 100);
process.stdout.write(`\rProgress: ${percent}%`);
}
});
console.log(`\nDone! Saved to ${outputPath}`);
} catch (err) {
console.error('\nRender failed:', err);
process.exit(1);
}
}
main();Execute the script.
# If using ts-node npx ts-node render.ts # If using node (compiled js) node render.js
await renderer.render(url, out, { tracePath: 'trace.zip' });Programmatic video creation with web technologies you already know. CSS animations just work.
Make videos drawn with code: motion graphics, launch and explainer videos, animated shorts, animated charts and data, logo…
Core API for Helios video engine. Use when creating compositions, managing timeline state, controlling playback, or subscribing…
Story-first motion design philosophy for animated video: motion must earn its place; arc (establish, complicate, resolve); show…
End-to-end production plan template for feeling-first cinematic product promos: brief interrogation, 45s beat structure (cold…
Opt-in library of established visual styles for code-drawn Helios videos: style cards (colour rules, type, motion grammar, a…
Patterns for using Helios with Vanilla Canvas API. Use when building high-performance 2D/3D animations without frameworks.
Overlay doctrine for captions in HyperFrames videos — the caption MODEL (drop / rail / embed) and the rule that captions are an…
AI music generation with ACE-Step 1.5 — background music, vocal tracks, covers, stem extraction for video production. Use when…
This skill should be used when a Seedance 2.0 prompt contains generic AI filler, hollow superlatives, vague cinematic language,…