Files
hyperframes/skills/hyperframes/references/beat-direction.md
T
Vance Ingalls 22f0e6a5cd feat(skills): design.md integration, shared video references, Claude Design gaps (#549)
## What

Major skill infrastructure update: design.md support, shared video-composition references, and creative direction patterns extracted from website-to-hyperframes into the base hyperframes skill.

## Changes

### design.md Integration (lightweight)
- Step 0a reads any format design.md (YAML, prose, tables) — no format mandate
- Brand colors/fonts are strict; video layout adapts per video-composition.md
- Font warning gate: warns user if design.md names fonts without local .woff2 files
- Design picker generates spec-compliant design.md with YAML frontmatter + prose
- Picker generates contextual options from user's prompt (3-4 architectures, 5-6 palettes, 3 type pairings)

### Shared Video References (extracted from website-to-hyperframes)
- `video-composition.md` — density, scale, color presence, frame composition rules. Light canvas guidance (don't override user palette). **Always read.**
- `beat-direction.md` — per-beat planning (concept → mood → choreography verbs → transition), rhythm templates by video type
- `techniques.md` — 11 visual techniques with code patterns (SVG drawing, Canvas 2D, kinetic type, Lottie, etc.)
- `narration.md` — pacing, tone, script structure, number pronunciation, hooks
- `motion-principles.md` — gained image motion treatment + load-bearing GSAP rules

### Claude Design Transfer Brief (6 gaps applied)
1. Discovery step for exploratory requests (audience, platform, priority, variations)
2. Anti-scope-creep: "build what was asked, every element earns its place"
3. Read-source discipline: "read actual files, don't guess"
4. Rhythm planning: declare scene rhythm before implementing
5. Variations as first-class output for exploratory requests
6. Two-phase verification: fast checks block, slow checks parallel

### Prompt Expansion Updated
- Uses beat-direction format (concept → mood → verbs → depth layers)
- Rhythm declaration before scene breakdown
- References video-composition.md and beat-direction.md

### Key Design Decision
**design.md = brand truth, not video layout spec.** Background color is strict from design.md (don't switch light to dark). Video-composition rules teach how to make any palette work cinematically.

## Files Changed (16)

**New shared references:**
- `skills/hyperframes/references/video-composition.md`
- `skills/hyperframes/references/beat-direction.md`
- `skills/hyperframes/references/techniques.md`
- `skills/hyperframes/references/narration.md`

**Updated:**
- `skills/hyperframes/SKILL.md` — discovery, anti-scope-creep, rhythm, variations, two-phase verify, new references
- `skills/hyperframes/references/prompt-expansion.md` — beat-direction format
- `skills/hyperframes/references/motion-principles.md` — image treatment + GSAP rules
- `skills/hyperframes/references/design-picker.md` — contextual generation
- `skills/hyperframes/visual-styles.md` — YAML token blocks per preset
- `skills/hyperframes/house-style.md` — design.md precedence
- `skills/hyperframes/templates/design-picker.html` — spec-compliant output
- `skills/website-to-hyperframes/references/*` — now reference shared files

## Test plan

- [x] Design picker generates and serves correctly
- [x] Picker output is spec-compliant design.md
- [x] Composition built from picker design.md renders in Studio
- [x] Before/after eval: 4 topics × 2 versions showing skill guidance impact
- [x] Light canvas compositions respect user palette (don't switch to dark)

🤖 Generated with [Claude Code](https://claude.com/claude-code)
2026-04-29 17:48:54 -07:00

6.0 KiB

Beat Direction

How to plan and direct individual scenes (beats) in a multi-scene composition. Read before writing any multi-scene video.


Per-Beat Direction

Each beat is a WORLD, not a layout. Before writing CSS specs and GSAP instructions, describe what the viewer EXPERIENCES. The difference between a great storyboard and a mediocre one:

Mediocre: "Dark navy background. '$1.9T' in white, 280px. Logo top-left. Wave image bottom-right." Great: "Camera is already mid-flight over a vast dark canvas. The gradient wave sweeps across the frame like aurora borealis — alive, shifting. '$1.9T' SLAMS into existence with such force the wave ripples in response. This isn't a slide — it's a moment."

The first describes pixels. The second describes an experience. Write the second, then figure out the pixels.

Each beat should have:

Concept

The big idea for this beat in 2-3 sentences. What visual WORLD are we in? What metaphor drives it? What should the viewer FEEL? This is the most important part — everything else flows from it.

Mood direction

Cultural and design references, not hex codes:

  • "Geometric, rhythmic, precise. Think Josef Albers or Bauhaus color studies."
  • "Warm workspace. Nice notebook energy, not technical blueprint."
  • "Cinematic title sequence. The kind of opening where you lean forward."

Animation choreography

Specific motion verbs per element — not "it animates in" but HOW:

Energy Verbs Example
High impact SLAMS, CRASHES, PUNCHES, STAMPS, SHATTERS "$1.9T" SLAMS in from left at -5°
Medium energy CASCADE, SLIDES, DROPS, FILLS, DRAWS Three cards CASCADE in staggered 0.3s
Low energy types on, FLOATS, morphs, COUNTS UP, fades in Counter COUNTS UP from 0 to 135K

Every element gets a verb. If you can't name the verb, the element is not yet designed.

Transition

How this beat hands off to the next. Specify the type and parameters.

When to pick which:

Choose shader transition for Choose CSS transition for Choose hard cut for
Reveals, big reaction shots, product/logo unveils, energy shifts, "wow" moments Continuous camera-motion beats where the scene feels like one move broken into cuts Rapid-fire lists, percussive edits on the beat, comedic timing
Any moment the music/VO punctuates with a downbeat or SFX hit Beats that ease from one composition into the next with shared motion vocabulary Sequences of 3+ quick tempo-matched switches
Brand moments where the transition itself is the visual Minimal/editorial pacing Anytime a 0.3-0.8s transition would feel too slow

Rule of thumb: if the beat is the centerpiece of the video, shader-transition into it. If the beat is connective tissue, CSS-transition. A brand reel of 5-7 beats usually wants 1-2 shader transitions (the hero reveal + the CTA) and the rest CSS or hard cuts — too many shader transitions flatten their impact.

CSS transitions (choose from skills/hyperframes/references/transitions/catalog.md):

  • Velocity-matched upward: exit y:-150, blur:30px, 0.33s power2.in → entry y:150→0, blur:30px→0, 1.0s power2.out
  • Whip pan: exit x:-400, blur:24px, 0.3s power3.in → entry x:400→0, blur:24px→0, 0.3s power3.out
  • Blur through: exit blur:20px, 0.3s → entry blur:20px→0, 0.25s power3.out
  • Zoom through: exit scale:1→1.2, blur:20px, 0.2s power3.in → entry scale:0.75→1, blur:20px→0, 0.5s expo.out
  • Hard cut / smash cut (for rapid-fire sequences)

Shader transitions (choose from packages/shader-transitions/README.md):

  • Cross-Warp Morph (organic, versatile) — 0.5-0.8s, power2.inOut
  • Cinematic Zoom (professional momentum) — 0.4-0.6s, power2.inOut
  • Gravitational Lens (otherworldly) — 0.6-1.0s, power2.inOut
  • Glitch (aggressive, high energy) — 0.3-0.5s
  • See packages/shader-transitions/README.md for the full API, available shaders, and setup

Depth layers

What's in foreground, midground, and background. Every beat should have at least 2 layers:

  • "BG: dark navy fill + subtle radial glow. MG: stat cards with drop shadow. FG: brand logo bottom-right."

SFX cues

What sounds at what moment:

  • "On the capture pulse — a soft, warm analog shutter click."
  • "Left side carries a faint low drone. On fold: drone cuts. Silence. Then a single clean chime."

Rhythm Planning

Before writing HTML, declare your scene rhythm: which scenes are quick hits, which are holds, where do shaders land, where does energy peak. Name the pattern — fast-fast-SLOW-fast-SHADER-hold — before implementing.

Video type Typical rhythm pattern
Social ad (15s) hook-PUNCH-hold-CTA
Product demo (30-60s) slow-build-BUILD-PEAK-breathe-CTA
Launch teaser (10-20s) SLAM-proof-SLAM-hold
Brand reel (20-45s) drift-build-PEAK-drift-resolve

Velocity-Matched Transitions

Exit the outgoing beat with an accelerating ease (power2.in or power3.in) plus a blur ramp. Enter the incoming beat with a decelerating ease (power2.out or power3.out) plus blur clear. The fastest point of both easing curves meets at the cut — the viewer perceives continuous camera motion, not two discrete animations. Match exit velocity to entry velocity within ~5% tolerance.