Theatre.js
Keyframe animation editor that scrubs any JS object property on a timeline
Tier A · StrongAnimation LibraryTooltheatrejs.com
Theatre.js pairs a runtime animation core (@theatre/core) with a browser-based visual editor (@theatre/studio) that overlays your running app. You get a sequence editor, dope sheet, graph editor with bezier easing, and a property inspector, and any JS object property you register becomes keyframable. It is stack-agnostic: THREE.js, React Three Fiber, WebGPU, and plain HTML/CSS/SVG are all documented entry points. Built for developers who want After-Effects-style motion control without hand-tuning numbers in code.
npm install @theatre/core @theatre/studioFor an agent
Reach for Theatre.js when a timeline of choreographed keyframes across many properties is the actual requirement — GSAP or Framer Motion are better when motion is a reaction to state or scroll. The workflow is two-phase: ship @theatre/studio in dev only, author the sequence by hand in the browser, export the JSON state and load it in production so the editor bundle never reaches users. Watch the staleness: the last public commit and npm publish are both from 2024 at v0.7.2, the promised 1.0 moved to a private repo, and the studio half is AGPL — check that against your licensing before you commit.
Why it is here. The only mature open-source attempt at a real motion-design timeline for the web, and nothing has replaced it. Its two-year public stall is the one thing to weigh before adopting it.
Facts
- License
- Apache 2.0, AGPL
- Pricing
- Free, Open source
- Framework
- React, Vanilla JS
- Styling
- Not applicable
- Distribution
- npm package, GitHub repository
- Platform
- Web
- Content type
- Code
- Agent readiness
- Readable open source, Structured documentation
- Accessibility
- Not applicable
- Maturity
- Stable
- GitHub stars
- 12,600
- Package
- @theatre/core
Notable for
- visual timeline over live JS objects
- dope sheet and bezier graph editor
- THREE.js and R3F integration
- export animation state as JSON
- studio is AGPL, core is Apache-2.0
Provenance
Verified 2026-08-15. HTTP 200. https://www.theatrejs.com/, https://github.com/theatre-js/theatre, https://github.com/theatre-js/theatre/commits/main, npm registry metadata for @theatre/core
Also in Motion & Interaction
6- GSAP · JavaScript animation engine with 19 plugins, now free for commercial use
- Lenis · Smooth-scroll engine that keeps native scroll and honours reduced-motion
- Motion · Hybrid JS/React/Vue animation engine with springs, layout and scroll animation
- NumberFlow · Dependency-free animated number component for React, Vue, Svelte and JS
- React Bits · 234 copy-paste animated React components: text effects, cursors, WebGL backgrounds
- React Native Reanimated · UI-thread animation library for React Native, v4 on the New Architecture