framer-motion-best-practices

Enforce Framer Motion performance patterns for React animations.

7|1|Updated Feb 14, 2026
One-click install
npx skills add https://github.com/fratilanico/apex-os-bad-boy --skill framer-motion-best-practices
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: framer-motion-best-practices
Source: https://github.com/fratilanico/apex-os-bad-boy/tree/main/framer-motion-best-practices
Command: npx skills add https://github.com/fratilanico/apex-os-bad-boy --skill framer-motion-best-practices

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

Framer Motion performance optimization guidelines help developers ensure smooth, reliable animations in React apps by preventing layout thrashing and excessive re-renders.

Core Features & Use Cases

  • GPU-friendly transforms over layout changes to maintain 60fps.
  • Guidance on bundling with domAnimation/LazyMotion to reduce payloads.
  • Best practices for gestures, layout animations, and SVG animations to avoid jank.

Quick Start

Refactor your Framer Motion usage to follow the guidelines: switch to GPU-friendly transforms, enable LazyMotion with domAnimation, and adopt stable variants and motion values.

Frequently Asked Questions about framer-motion-best-practices

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I optimize Framer Motion animations to maintain 60fps in React?

Optimize Framer Motion animations for 60fps by prioritizing GPU-friendly transforms over layout changes. This approach prevents layout thrashing and ensures smooth React animations.

Why does Framer Motion cause excessive re-renders and jank in my React app?

Framer Motion causes jank and excessive re-renders when using layout properties instead of GPU-friendly transforms or when variants are unstable. Adopting motion-value patterns and stable variants prevents these React performance issues.

What is LazyMotion and how does it reduce bundle size in React?

LazyMotion is a Framer Motion feature bundle that reduces React payload size by enabling domAnimation. It allows you to load animation features dynamically instead of including the entire motion library.

How do I handle gestures in Framer Motion without breaking animations?

Handle gestures in Framer Motion by enforcing stable variants and motion-value patterns. This ensures your React animations remain interruptible and smooth during user interactions.

Can I use Framer Motion for SVG animations without causing performance issues?

You can use Framer Motion for SVG animations without performance issues by following specific optimization patterns. These guidelines avoid jank and ensure smooth SVG animation rendering in React.

When should I use shared layout animations in Framer Motion?

Use shared layout animations in Framer Motion when elements need to move seamlessly between different React UI components. Following specific layout animation guidelines prevents jank during these visual transitions.