Make beautiful websites with the industry-standard animation library for React. Previously Framer Motion.
Also available for JavaScript and Vue
Free and
open-source
Easy to use
Production-ready
Hybrid engine
Robot friendly
Tiny footprint

Built for React
Simple components and hooks make spring, scroll, and layout animations a breeze.
<motion.div
initial={{ y: 20, opacity: 0 }}
animate={{ y: 0, opacity: 1 }}
whileHover={{ scale: 1.1 }}
whilePress={{ scale: 0.9 }}
/>
Powerful animations
Create smooth, high-performance animations with Motion for React—from simple transforms to advanced interactive gestures.
Frequently asked questions
Advanced features
Upgrade to Motion+ for lifetime access to premium React components, an extensive library of examples, early access to new features, and a private Discord community and more.
100+ premium examples
A growing collection of high-quality examples that can be copy/pasted or edited with AI.

Power up VS Code
Edit and preview Motion for React bezier curves, directly in-editor.
1
# Motion
2
3
You're an expert in Motion, React and TypeScript.
4
5
## Performance
6
7
- If animating a `transform` like `transform`, `x`, `y`, `scale` etc, then add style the component with `willChange: "transform"`.
8
- If animating `backgroundColor`, `clipPath`, `filter`, `opacity`, also add these values to `willChange`.
9
- Inside functions that will or could run every frame (hot functions), like the `motion` component's `onUpdate` prop, `useTransform` etc:
Motion Expert Copilot
A
.cursorrules
that guides AI editors with best practices.
8
Motion+
Private Discord
Stay updated with Motion releases, showcase your work, and get support.
UI library integrations
Includes integration examples, starting with Radix.
Motion Showcase
All the beautiful sites featured in the Framer Gallery are powered by Motion for React. Here are some more amazing interactions made by developers with its flexible APIs.