Motion+
Motion / Changelog925 releases

Changelog

Releases across Motion, Motion+, and Motion AI Kit.

  1. Motionminor12.39.0

    Added

    • Support for repeatType and repeatDelay in animation sequences.

    Fixed

    • Variants: Re-run keyframe animations when switching between variant labels even when they share identical keyframe arrays.
    • Drag: Preserve in-flight motion value animations across React 19 reorder unmount/remount so dragSnapToOrigin no longer leaves the drag transform stranded after a layout swap.
    • LazyMotion: Share React contexts between the framer-motion and framer-motion/m (and therefore motion/react and motion/react-m) CJS bundles so that <m.div> from the /m subpath picks up features loaded by <LazyMotion> from the main entry point.
    • useScroll: Support hydrating target and container refs from anywhere in the tree.
    • Drag: Gesture no longer starts from incorrect start point when rendered inside <AnimatePresence initial={false} />.
    • Drag: dragConstraints, when set as viewport-relative ref, no longer break on scroll.§
    • Updated visualElement hydration order.
    • useAnimate: Now respects skipAnimations.
    • AnimatePresence: Fix object-form initial values not applied on re-entry after exit completes.
    • scroll: Fixed callback progress when tracking an element.
    • useScroll: Fix hardware acceleration when tracking an element.
  2. Motionminor12.38.0

    Added

    • Added layoutAnchor prop to configure custom anchor point for resolving relative projection boxes.

    Fixed

    • Reorder: Fix axis switching after window resize.
    • Reorder: Fix with virtualised lists.
    • AnimatePresence: Ensure children are removed when exit animation matches current values.
  3. Motionminor12.37.0

    Added

    • Support for hardware accelerating "start" and "end" offsets in scroll and useScroll.
    • Support for oklch, oklab, lab, lch, color, color-mix, light-dark color types.

    Fixed

    • Fix whileInView with client-side navigation.
    • Fix draggable elements when layout updates due to surrounding element re-renders.
    • Improved memory pressure of layout animations.
    • Ensure motion value returned from useSpring reports correct isAnimating().
  4. Motionminor12.36.0

    Added

    • Allow dragSnapToOrigin to accept "x" or "y" for per-axis snapping.
    • Added axis-locked layout animations with layout="x" and layout="y".
    • Added skipInitialAnimation to useSpring.

    Fixed

    • Fixed height and width: auto animations with box-sizing: border-box.
    • Reset component values when exit animation finishes.
    • Ensure anticipate easing returns 1 at p === 1.
    • Fix @emotion/is-prop-valid resolve error in Storybook.
    • Remove data-pop-layout-id from exiting elements when animation interrupted.
    • Ensure we skip WAAPI for non-animatable keyframes.
    • Ensure we skip WAAPI for SVG transforms.
    • Ensure MotionValue props are not passed to SVG.
    • AnimatePresence: Prevent mode="wait" elements from getting stuck when switched rapidly.
  5. Motion AI Kitminor5.4.0

    Added

    • Skills: /motion skill. Includes design guidelines, performance tips, and API gotchas. Can reference the Motion Studio MCP for docs search.
    • Skills: /css-spring skill. Generates CSS spring easing functions via the Motion Studio MCP.
    • Skills: /see-transition skill. Visualise easing curves and springs via the Motion Studio MCP.
    • Skills: Added new motion-ai-kit installer with interactive skill picker.
  6. Motionminor12.35.0

    Added

    • ViewTimeline support for scroll and useScroll.
  7. Motion+minor2.11.0

    Added

    • Carousel: New wheelSwipeThreshold prop configures the distance of wheel scroll before triggering a swipe.
  8. Motion+minor2.10.0

    Added

    • AnimateNumber: trend prop to control digit spin direction. - trend={1}: Digits always spin upward, wrapping 9 → 0. - trend={-1}: Digits always spin downward, wrapping 0 → 9. - trend={(oldValue, newValue) => number}: Function for custom logic. - Default (no trend): Auto-detects direction based on value change.

    Changed

    • AnimateNumber: Now uses manual FLIP measurements instead of layout animations.
  9. Motion+minor2.9.0

    Added

    • useCarousel and useTicker: Provides offset motion value, which contains the unwrapped offset of a Carousel or Ticker.
  10. Motion AI Kitminor5.3.0

    Added

    • Extension: Added support for spring editing.
    • Extension: Visual refresh.
    • Skills: Added Motion Performance Audit skill.
  11. Motion+minor2.8.0

    Added

    • AnimateView: View animations for React.
  12. Motionminor12.34.0

    Added

    • useScroll: Hardware accelerated animations.
  13. Motionminor12.33.0

    Added

    • <motion />: New propagate.tap prop prevents tap gestures from propagating to parents.
  14. Motionminor12.32.0

    Added

    • transition.inherit: When true, inherit transition values from less-specific transitions.
  15. Motionminor12.31.0

    Added

    • animate: Support for bi-directional callbacks within animation sequences.

    Fixed

    • Ensure onPan never fires before onPanStart.
  16. Motionminor12.30.0

    Added

    • MotionConfig: Add skipAnimations option.

    Fixed

    • animate: Prevent error when calling stop() on removed elements.
    • animateLayout: Fixing shared element animations when animate called before animateLayout.
  17. Motion+minor2.7.0

    Added

    • scrambleText: Now supports string MotionValue.
  18. Motion+minor2.6.0

    Added

    • scrambleText and ScrambleText: Added scramble text for vanilla JS and React.
  19. Motion+minor2.5.0

    Added

    • Typewriter: Added cursorBlinkRepeat option for capping the number of times a cursor blinks after typing stops.
  20. Motion+minor2.4.0

    Added

    • splitText: Added preserveHyphens option.
  21. Motionminor12.29.0

    Added

    • transformViewBoxPoint: Scale drag gestures within <svg> elements where viewBox and rendered width/height are mismatched.
    • trackContentSize: New scroll and useScroll option for tracking changes to content size.

    Fixed

    • Add React 19 test suite to CI.
    • Fix types with motion.create().
    • Shared element animations now respect layoutDependency.
  22. Motionminor12.28.0

    Added

    • useFollowValue and followValue: useSpring-style motion values that can accept any transition.

    Fixed

    • Fix "multiple keyframe" error when using spring animations as default transitions for animation sequences.
  23. Motion+minor2.3.0

    Added

    • animateLayout: Vanilla layout animations.
  24. Motionminor12.27.0

    Added

    • Adding new exports for internal use.
  25. Motion AI Kitminor5.2.0

    Changed

    • Extension: Added support for editing and saving delay and duration.
  26. Motion AI Kitminor5.1.0

    Changed

    • MCP: Added documentation lookup to Codex.
  27. Motionminor12.26.0

    Added

    • Support for multiple output value maps with useTransform.
  28. Motionminor12.25.0

    Added

    • Support for auto-scrolling when a Reorder.Item reaches the edges of its parent scrollable container.
  29. Motion+minor2.2.0

    Added

    • Carousel: Added page prop for controlling the current page via props.
  30. Motion+minor2.1.0

    Added

    • UMD bundle now published via GitHub.