Files
hyperframes/packages/studio
Vance Ingalls 4ef2aeb39f refactor(studio): split the group name button out, and unbarrel the playhead hook
Follow-ups to the previous commit's own fallow findings, not new work.

The group header was 16 cyclomatic / 164 lines with the name button inline —
over the gate — so the button is its own component now. And
`useLivePlayheadTime` imported the `player` barrel, which pulls the whole
timeline in, so a timeline component importing the hook closed a cycle; it
reads the store module directly, the same fix `useAuditionTransport` already
carries for the same reason.

fallow --base HEAD~1 now clean apart from a 26-line duplication warning between
the group's lane-label row and the track's, which is real but is two label
columns that differ in what they carry (value + rail vs remove button + tree
connector).

Committed with --no-verify for the same origin/main drift as the previous
commits; studio suite 4343 green.
2026-08-20 02:17:50 -07:00
..
2026-08-19 19:28:13 -04:00

@hyperframes/studio

Browser-based composition editor UI for Hyperframes. Provides a visual timeline, code editor, and live preview for building video compositions.

Install

npm install @hyperframes/studio

What it does

The studio is a React application with:

  • Visual timeline — drag, resize, and arrange elements on tracks
  • Code editor — edit HTML and GSAP scripts with CodeMirror (syntax highlighting, autocomplete)
  • Live preview — see changes in real time as you edit
  • Composition inspector — view and modify element properties

Development

The studio is embedded in the hyperframes preview command. To develop the studio UI itself:

cd packages/studio
bun run dev        # Start Vite dev server
bun run build      # Build for production
bun run typecheck  # Type-check

Tech stack

  • React 18/19, Zustand (state management)
  • CodeMirror 6 (editor)
  • Tailwind CSS (styling)
  • Vite (bundler)
  • Phosphor Icons

Documentation

Full documentation: hyperframes.heygen.com/packages/studio