MCPcopy
hub / github.com/motiondivision/motion

github.com/motiondivision/motion @v12.42.2 sqlite

repository ↗ · DeepWiki ↗ · release v12.42.2 ↗
2,337 symbols 6,880 edges 1,163 files 120 documented · 5%
README

Motion logo Motion

An open source animation library for JavaScript, React and Vue

npm version npm downloads per month jsDelivr hits (npm) NPM License

# React / JavaScript
npm install motion

# Vue
npm install motion-v

Table of Contents

  1. Why Motion?
  2. 🍦 Platforms
  3. 🎓 Examples
  4. ⚡️ Motion+
  5. 👩🏻‍⚖️ License
  6. 💎 Contribute
  7. ✨ Sponsors

Why Motion?

  • Simple API: First-class React, JavaScript, and Vue packages.
  • Hybrid engine: Power of JavaScript combined with native browser APIs for 120fps, GPU-accelerated animations.
  • Production-ready: TypeScript, extensive test suite, tree-shakable, tiny footprint. Batteries included: Gestures, springs, layout transitions, scroll-linked effects, timelines.

🍦 Platforms

Motion is available for React, JavaScript and Vue.

React

import { motion } from "motion/react"

function Component() {
    return <motion.div animate={{ x: 100 }} />
}

Get started with Motion for React.

Note: Framer Motion is now Motion. Import from motion/react instead of framer-motion.

JS

import { animate } from "motion"

animate("#box", { x: 100 })

Get started with JavaScript.

Vue

<script>
    import { motion } from "motion-v"
</script>

<template> <motion.div :animate={{ x: 100 }} /> </template>

Get started with Motion for Vue.

🎓 Examples & tutorials

Browse 330+ official examples, with copy-paste code that'll level-up your animations whether you're a beginner or an expert.

Over 100 examples come with a full step-by-step tutorial.

⚡️ Motion+

A one-time payment, lifetime-updates membership:

  • 330+ examples
  • 100+ tutorials
  • Premium APIs like Cursor and Ticker
  • Transition editor for Cursor and VS Code
  • AI skills
  • Private Discord
  • Early access content

Get Motion+

👩🏻‍⚖️ License

  • Motion is MIT licensed.

💎 Contribute

✨ Sponsors

Motion is sustainable thanks to the kind support of its sponsors.

Become a sponsor

Partners

Motion powers the animations for all websites built with Framer, the web builder for creative pros. The Motion website itself is built on Framer, for its delightful canvas-based editing and powerful CMS features.

Framer

Motion drives the animations on the Cursor homepage, and is working with Cursor to bring powerful AI workflows to the Motion examples and docs.

Cursor

Platinum

Linear Figma Sanity Sanity Clerk

Gold

Silver

Liveblocks Frontend.fyi Firecrawl Bolt.new

Personal sponsors

Extension points exported contracts — how you extend this code

WillChange (Interface)
(no doc) [6 implementers]
packages/motion-dom/src/value/will-change/types.ts
Item (Interface)
* Regression test for https://github.com/motiondivision/motion/issues/3401 * * Matches the reporter's sandbox pattern:
dev/react/src/tests/layout-percent-x-flex.tsx
Props (Interface)
(no doc)
packages/framer-motion/src/components/Reorder/Group.tsx
Point (Interface)
(no doc)
packages/motion-utils/src/types/geometry.ts
ViewResult (Interface)
(no doc)
tests/view/view-targets.spec.ts
ProgressTimeline (Interface)
(no doc) [4 implementers]
packages/motion-dom/src/animation/types.ts
ItemProps (Interface)
* This demonstrates container components correctly animating * resize when children are added/removed/expanded
dev/react/src/examples/Shared-layout-toggle-details.tsx
Props (Interface)
(no doc)
packages/framer-motion/src/components/Reorder/Item.tsx

Core symbols most depended-on inside this repo

get
called by 1368
packages/motion-dom/src/value/index.ts
render
called by 562
packages/framer-motion/src/jest.setup.tsx
motionValue
called by 401
packages/motion-dom/src/value/index.ts
set
called by 234
packages/motion-dom/src/value/index.ts
createMotionComponent
called by 168
packages/framer-motion/src/motion/index.tsx
useMotionValue
called by 165
packages/framer-motion/src/value/use-motion-value.ts
createMinimalMotionComponent
called by 164
packages/framer-motion/src/render/components/m/create.ts
then
called by 130
packages/motion-dom/src/view/index.ts

Shape

Function 1,596
Method 403
Interface 239
Class 99

Languages

TypeScript100%

Modules by API surface

packages/motion-dom/src/projection/node/create-projection-node.ts87 symbols
packages/motion-dom/src/projection/node/types.ts48 symbols
packages/motion-dom/src/node/types.ts43 symbols
packages/framer-motion/src/animation/animators/waapi/__tests__/polyfill.js40 symbols
packages/motion-dom/src/animation/types.ts36 symbols
packages/motion-dom/src/render/VisualElement.ts33 symbols
packages/motion-dom/src/value/index.ts30 symbols
packages/framer-motion/src/gestures/drag/VisualElementDragControls.ts30 symbols
packages/motion-dom/src/layout/LayoutAnimationBuilder.ts25 symbols
packages/motion-dom/src/animation/JSAnimation.ts23 symbols
packages/motion-dom/src/animation/GroupAnimation.ts19 symbols
packages/framer-motion/src/jest.setup.tsx19 symbols

Dependencies from manifests, versioned

@base-ui-components/react1.0.0-rc.0 · 1×
@cypress/webpack-preprocessor6.0.1 · 1×
@gsap/react2.1.0 · 1×
@playwright/test1.48.0 · 1×
@radix-ui/react-dialog1.1.15 · 1×
@rollup/plugin-alias5.1.0 · 1×
@rollup/plugin-node-resolve15.2.3 · 1×
@rollup/plugin-replace5.0.5 · 1×
@rollup/plugin-terser0.4.4 · 1×
@tanstack/react-virtual3.13.22 · 1×
@testing-library/dom8.16.0 · 1×
@testing-library/jest-dom6.4.2 · 1×

For agents

$ claude mcp add motion \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact