// the find
remotion-dev/remotion
🎥 Make videos programmatically with React
Remotion lets you write React components that render to video frames, then uses headless Chrome to encode them into MP4/WebM. It's for developers who want to generate video programmatically — data visualizations, personalized clips, automated social content — without touching FFmpeg directly.
The mental model is genuinely good: time is just a prop, and `useCurrentFrame()` gives you the current frame number so any React component becomes an animation. The ecosystem has grown substantially — captions, animated emoji, WebCodecs-based encoding, cloud rendering via Lambda — and the Studio preview environment with hot reload makes iteration fast. The `.agents/` and `.claude/` skill directories show the team is actually dogfooding AI-assisted development in a structured way, which is unusual and interesting. Active maintenance is real: last push was yesterday and the package count in the monorepo is large.
The licensing is a landmine — commercial use requires a paid company license, but the README buries this in a single sentence. You will not notice until you're already invested. Render times are slow because it's running Chrome frame-by-frame; a 60-second 30fps video means 1800 Chrome renders, and Lambda parallelization costs money. The WebCodecs path is newer and faster but has browser compat constraints that aren't obvious until you hit them. TypeScript types across the package boundary occasionally drift, especially in the newer packages, so you'll occasionally fight the compiler on things that should just work.