---
name: framer-motion
description: Use when implementing Disney's 12 animation principles with Framer Motion in React applications
---
# Framer Motion Animation Principles
Implement all 12 Disney animation principles using Framer Motion's declarative React API.
## 1. Squash and Stretch
```jsx
```
## 2. Anticipation
```jsx
```
## 3. Staging
```jsx
{/* bg */}
{/* hero */}
```
## 4. Straight Ahead / Pose to Pose
```jsx
```
## 5. Follow Through and Overlapping Action
```jsx
```
## 6. Slow In and Slow Out
```jsx
// Or use: "easeIn", "easeOut", "easeInOut"
```
## 7. Arc
```jsx
```
## 8. Secondary Action
```jsx
Icon
```
## 9. Timing
```jsx
const timings = {
fast: { duration: 0.15 },
normal: { duration: 0.3 },
slow: { duration: 0.6 },
spring: { type: "spring", stiffness: 300, damping: 20 }
};
```
## 10. Exaggeration
```jsx
```
## 11. Solid Drawing
```jsx
```
## 12. Appeal
```jsx
```
## Stagger Children
```jsx
const container = {
hidden: { opacity: 0 },
show: {
opacity: 1,
transition: { staggerChildren: 0.1 }
}
};
{items.map(item => )}
```
## Key Framer Motion Features
- `animate` - Target state
- `variants` - Named animation states
- `whileHover` / `whileTap` - Gesture animations
- `transition` - Timing and easing
- `AnimatePresence` - Exit animations
- `useAnimation` - Programmatic control
- `layout` - Auto-animate layout changes