Files
Miguel Ángel 8e1ea7adc2 feat(studio): marquee selection, AE presets, per-keyframe ease + velocity fitting
Marquee selection: click+drag on empty canvas draws a dashed selection
rectangle. All elements whose OBB intersects are group-selected via
SAT. Shift+marquee adds to selection. Click on empty deselects.

Per-keyframe easing: each keyframe segment has its own ease, editable
via expandable bezier curve editor in the Animation panel. Parser
preserves per-keyframe ease through round-trips (ease-only updates
preserve existing properties).

AE Easy Ease presets: correct After Effects bezier values (0.333, 0,
0.667, 1) in the preset grid.

Velocity-based curve fitting: gesture recordings analyze velocity
profile and assign per-keyframe custom eases automatically.

Gesture smoothing: Gaussian-weighted moving average (from PR #1658)
+ easeEach support for keyframed tweens + fetch-cancellation race
fix in useGsapAnimationsForElement.
2026-06-24 00:42:14 -04:00
..
2026-06-22 23:07:48 -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