Skip to main content
Hyperframes includes starter examples to help you scaffold compositions quickly. Each example gives you a working project with the correct composition structure, data attributes, and a GSAP timeline already wired up.
Terminal
npx hyperframes init my-video --example <name>

Landscape Templates

Warm GrainBranding & lifestyle
Play ModeSocial media
Swiss GridCorporate & technical
Kinetic TypePromos & title cards
Decision TreeExplainers & tutorials
Product PromoProduct showcases
NYT GraphData stories

Portrait Templates

VignelliHeadlines & announcements
Looking for a minimal starting point? Use blank — it gives you an empty composition with just the scaffolding, no visual design.
Terminal
npx hyperframes init my-video --example blank

Choosing an Example

ExampleStyleFormatBest for
warm-grainOrganic, texturedLandscapeLifestyle, branding, editorial
play-modeEnergetic, elasticLandscapeSocial media, product launches
swiss-gridClean, structuredLandscapeCorporate, data, technical
kinetic-typeDramatic typeLandscapePromos, intros, title cards
decision-treeDiagrammaticLandscapeExplainers, tutorials
product-promoMulti-sceneLandscapeProduct showcases, demos
nyt-graphEditorial dataLandscapeData stories, reports
vignelliBold, typographicPortraitHeadlines, announcements
blankMinimal scaffoldingFull control, agent-generated

Example Details

warm-grain

Cream-toned aesthetic with grain texture overlay.What it produces: A composition with warm color grading, textured grain, and smooth transitions. Includes an intro sub-composition and captions support.
my-video/
├── meta.json
├── index.html
├── compositions/
│   ├── intro.html
│   ├── graphics.html
│   └── captions.html
└── assets/

Passing a Source Video

Terminal
npx hyperframes init my-video --example warm-grain --video ./my-clip.mp4
The CLI will probe the video for duration, resolution, and codec. If the video uses an incompatible codec, it will be automatically transcoded to H.264 MP4 if FFmpeg is available.

Custom Examples

Any directory with an index.html can serve as an example. Your custom example needs:
  1. An index.html with a data-composition-id root element
  2. A GSAP timeline registered in window.__timelines
  3. Any assets in the same directory or a subdirectory
index.html
<div id="root" data-composition-id="my-example"
     data-start="0" data-width="1920" data-height="1080">

  <!-- Your elements here -->

  <script src="https://cdn.jsdelivr.net/npm/gsap@3/dist/gsap.min.js"></script>
  <script>
    const tl = gsap.timeline({ paused: true });
    // Add your animations...
    window.__timelines = window.__timelines || {};
    window.__timelines["my-example"] = tl;
  </script>
</div>
After creating a custom example, validate it with the linter:
Terminal
npx hyperframes lint

Next Steps

Quickstart

Create, preview, and render your first video

GSAP Animation

Add animations to your example

Compositions

Understand the composition data model

Rendering

Render your composition to MP4