NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #4107 most downloaded on npm
A simple and powerful JavaScript animation library
Last release 6 days ago
16 Sep 2026
Release timing varies
gaps range from 9 days to 2 months
Nearly every release is documented
notes for 60 of the last 60 stable releases
1 version withdrawn
withdrawn after publishing
8 years old
1395 releases · first in 2019
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
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
Fixing spring animations with explicit velocities that animate to their current value.
Removing default transforms from generated transform string provided to transformTemplate.
transform string provided to transformTemplate.Improved performance of transform by up to 30% when providing many default transforms as MotionValues.
transform by up to 30% when providing many default transforms as MotionValues.Fixed problem with AnimatePresence not rerendering children unless their presence had changed.
AnimatePresence not rerendering children unless their presence had changed.Improved correctness of AnimatePresence and made safe to use with concurrent rendering.
AnimatePresence and made safe to use with concurrent rendering.Nothing published for this version
### Added - domMin feature bundle.
domMin feature bundle.Exporting UseScrollOptions type.
UseScrollOptions type.Improved types for inView()'s margin property.
inView()'s margin property.Wrapping usePresence's safeToRemove callback in useCallback leading to fewer re-renders.
usePresence's safeToRemove callback in useCallback leading to fewer re-renders.Fixing position: fixed layout animations while scrolling.
position: fixed layout animations while scrolling.Improving useSpring types so it accepts MotionValue or MotionValue but always returns MotionValue .
useSpring types so it accepts MotionValue<string> or MotionValue<number> but always returns MotionValue<number>.Removing "react" import from DOM-only bundle.
"react" import from DOM-only bundle.Changing isBrowser check from document to window.
isBrowser check from document to window.Improve performance of window.MotionDebug check.
window.MotionDebug check.Improve performance of layout animation calculated projection comparisons.
Active render scheduling check to prevent unnecessary Set lookups.
Set lookups.Minor performance improvements for layout animations.
Ensuring DOM bundle doesn't include react and react-dom as dependencies.
react and react-dom as dependencies.Check for display: contents elements now against component props instead of Element.style.
display: contents elements now against component props instead of Element.style.Frameloop now uses a single Set vs Set and Array, leading to smaller bundlesize and better performance under heavy load.
Set vs Set and Array, leading to smaller bundlesize and better performance under heavy load.No longer adding background-color to will-change.
background-color to will-change.Externally-provided MotionValues are no longer permanently added to will-change.
MotionValues are no longer permanently added to will-change.Animations automatically optimised via will-change.
will-change.Nothing published for this version
Improved performance of core render loop.
Checking for null before interpolating color values.
null before interpolating color values.Fixing dragConstraints={ref} mixed with layout animations.
dragConstraints={ref} mixed with layout animations.Nothing published for this version
Changing invalid number interpolation from error to warning and immediate mix.
Fixing animation of CSS variables when leading space is present.
Ensuring instant animations return animation controls.
Only allow layout animations to cancel optimised appear animations when on the same node or an ancestor.
Nothing published for this version
Fixed optimised appear animations interrupted by layout animations triggered by a state update within useLayoutEffect.
useLayoutEffect.Fixing layout animations within portals. Tag motion root within portal with data-framer-portal-id attribute.
motion root within portal with data-framer-portal-id attribute.Batching triggering animations with useSpring.
useSpring.Nothing published for this version
Nothing published for this version
MotionValues created with undefined can track velocity correctly.
MotionValues created with undefined can track velocity correctly.Fixed visual jump when interrupting an optimised appear animation.
Improved performance of resolving variants by lazy resolving current MotionValue state.
MotionValue state.Binary visibility interpolation i.e display: ["block", "none"] now maintains the visible state throughout the animation.
display: ["block", "none"] now maintains the visible state throughout the animation.Nothing published for this version
Reinstating async event handlers to fix issues with user code and Suspence within Framer.
Animating between keyframe unit types when one keyframe is 0 and the other is an explicitly defined keyframe, e.g y: ["100%", 0].
0 and the other is an explicitly defined keyframe, e.g y: ["100%", 0].### Changed - Updating types for motion.div.
motion.div.Binding stop to MainThreadAnimation
stop to MainThreadAnimation### Changed - Exporting DOMMotionComponents.
DOMMotionComponents.Fixing types of motion.div in certain TS5 environment configurations.
motion.div in certain TS5 environment configurations.undefined.### Fixed - ESM compat with CJS bundle.
Your coding agent can read these notes before it upgrades. Set up the MCP server →