Skip to main content
Framer Motion can be synchronized with Helios by using MotionValue and useTransform to drive animations based on Helios frame updates.

Installation

Install Framer Motion alongside Helios:

Basic integration

The integration pattern involves:
  1. Creating a MotionValue to represent progress
  2. Syncing the MotionValue to Helios frame updates
  3. Using useTransform to derive animation values
  4. Applying transforms to motion components

useVideoFrame hook

Create a custom hook to sync React state with Helios:

Integration pattern

Progress-based animation

Calculate normalized progress (0 to 1):

Transform mappings

Map progress to animation values:

Applying to motion components

Use the style prop to apply MotionValues:

Why this works

Framer Motion’s MotionValue and useTransform provide:
  • Reactive animation values without triggering re-renders
  • Declarative transform mappings
  • Smooth interpolation between keyframes
  • Full compatibility with Helios frame control
This approach ensures deterministic rendering while maintaining Framer Motion’s developer experience.