NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #2463 most downloaded on npm
An animation library for JavaScript and React.
Last release today
02 Oct 2026
Release timing varies
gaps range from 8 days to 2 months
Nearly every release is documented
notes for 60 of the last 60 stable releases
71 versions withdrawn
withdrawn after publishing
13 years old
455 releases · first in 2013
Adding sourcemaps to motion-dom and motion-utils.
motion-dom and motion-utils.Reorder autoscroll within scrollable pages.Improving projection node cleanup.
Adding new exports for internal use.
One column per quarter.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Internal refactor of projection system into motion-dom.
motion-dom.Improve overload selection for useTransform.
useTransform.Support for multiple output value maps with useTransform.
useTransform.Support for auto-scrolling when a Reorder.Item reaches the edges of its parent scrollable container.
Reorder.Item reaches the edges of its parent scrollable container.Draggable elements now track pointer during page and element scroll.
Fixed time sampling of GPU animations under heavy CPU load.
Fixing missing import from motion-dom.
motion-dom.Fixing Radix Dialog with AnimatePresence.
Dialog with AnimatePresence.Perform unit conversion when animating to/from calc() values.
calc() values.Fix duplicate exit animations in AnimatePresence.
AnimatePresence.Remove memory leak from retained matchMedia callbacks.
matchMedia callbacks.Prevent ref access error for AnimatePresence popLayout mode in React 19.
ref access error for AnimatePresence popLayout mode in React 19.Support ref functions that return a cleanup callback.
ref functions that return a cleanup callback.Ensure onAnimationStart and onAnimationComplete callbacks fire for useSpring.
onAnimationStart and onAnimationComplete callbacks fire for useSpring.Ensure useDragControls snapToCursor: true` works with initial transforms.
useDragControls snapToCursor: true` works with initial transforms.Ensure CSS Motion Path properties are applied via style on SVG elements.
style on SVG elements.JSX is correctly imported by Reorder.Item.{ type: "svg" } option to motion.create() for creating custom SVG components.
{ type: "svg" } option to motion.create() for creating custom SVG components.px default value type for CSS logical properties (paddingBlock, paddingInline, marginBlock, marginInline).JSX import error.motion-dom build.src from distributed package.Fixing MotionStyle type with React 19 when skipLibCheck is false.
MotionStyle type with React 19 when skipLibCheck is false.process check for better compat with ESM environments.Improved Intellisense detection for motion import.
motion import.Moved initialisation of default scale correctors to allow for overwriting existing correctors.
Ensure relative projection boxes are re-measured when parent layout changes.
Ensure that when a component remounts, it continues to fire animations even when initial={false}.
initial={false}.Exporting PresenceChild and PopChild type for internal use.
PresenceChild and PopChild type for internal use.Exporting HTMLElements and useComposedRefs type for internal use.
HTMLElements and useComposedRefs type for internal use.Fixing main-thread scroll with animations that contain delay.
scroll with animations that contain delay.Suppress non-animatable value warning for instant animations.
Remove support for changing ref prop.
ref prop.components now support changing ref prop.
<motion> components now support changing ref prop.Fixing ref when passed to a child of AnimatePresence in "popLayout" mode.
ref when passed to a child of AnimatePresence in "popLayout" mode.### Fixed - Fixing export * error in RSC.
export * error in RSC.Fixing types of Reorder.Item and Reorder.Group so incorrect HTML props are correctly flagged.
Reorder.Item and Reorder.Group so incorrect HTML props are correctly flagged.externalRef when it switches.Fixed issue where motion components don't update refs when externalRef changes. The useMotionRef function now properly includes externalRef in the dep
useMotionRef function now properly includes externalRef in the dependency array to ensure ref callbacks update when the external ref changes.Exporting internal APIs for use in view animations.
Children of variants with delayChildren: stagger() will now be staggered correctly alongside their newly-entering siblings.
delayChildren: stagger() will now be staggered correctly alongside their newly-entering siblings.Fixed shared layout animation in situations where no motion components have re-rendered between shared element switching.
motion components have re-rendered between shared element switching.Removing redundant renderRequest MotionValue lifecycle.
renderRequest MotionValue lifecycle.Removed additional removeNode from AnimatePresence when using popLayout.
springValue cleanup.removeNode from AnimatePresence when using popLayout.Added explainer for reduced motion warning.
motion component creation to remove indirection.Fix animation timings within dynamically-generated popups.
useScroll: Re-attempt to initialise scroll animation within a useEffect if refs weren't hydrated during the useLayoutEffect. Throw if refs are still n
useScroll: Re-attempt to initialise scroll animation within a useEffect if refs weren't hydrated during the useLayoutEffect. Throw if refs are still not hydrated during the useEffect.Added pages for remaining error and warning messages.
Improved error messages. Some error messages will now link through to detailed documentation and solutions.
Add .stop() and .cancel() methods to useDragControls().
.stop() and .cancel() methods to useDragControls().Allow delayChildren to accept stagger(). This enables from and ease options when staggering variant children.
delayChildren to accept stagger(). This enables from and ease options when staggering variant children.staggerChildren and staggerDirection options.Improve performance of projection styles by writing directly to element.style.
element.style.Improve performance of render loop.
Always skip layout animation check on tree mount.
Updated Transition type to be more permissive.
Transition type to be more permissive.Updated Target type to match previous definition.
Target type to match previous definition.Pass a shadow DOM root element via AnimatePresence root prop to attach "popLayout" styles to a different root element.
AnimatePresence root prop to attach "popLayout" styles to a different root element.Your coding agent can read these notes before it upgrades. Set up the MCP server →