Sharing a short video to show how the menu looks so far 👇
Sharing a short video to show how the menu looks so far 👇
1. A "page" is calculated from the current item to the start of the next partially-obscured item.
2. Use the current *target* offset, not the current visual offset, to find the next partially-obscured item 🧵
1. A "page" is calculated from the current item to the start of the next partially-obscured item.
2. Use the current *target* offset, not the current visual offset, to find the next partially-obscured item 🧵
When a tool's this incredible, giving a testimonial is a no-brainer.
If Motion isn't in your toolkit, it should be.
When a tool's this incredible, giving a testimonial is a no-brainer.
If Motion isn't in your toolkit, it should be.
Honestly my favourite part of making this demo was realising:
rotate = mix(min, max, Math.sin(index))
Nice SSR-safe alternative to Math.random() that actually provides a nicer distribution of rotations through the stack.
examples.motion.dev/react/card-s...
Honestly my favourite part of making this demo was realising:
rotate = mix(min, max, Math.sin(index))
Nice SSR-safe alternative to Math.random() that actually provides a nicer distribution of rotations through the stack.
examples.motion.dev/react/card-s...
BUT - site visitors are gradually trending downwards 🤔
Perhaps there's a summer lull but IMO these two trends are intuitively incompatible without a broader shift at play (you can guess)
BUT - site visitors are gradually trending downwards 🤔
Perhaps there's a summer lull but IMO these two trends are intuitively incompatible without a broader shift at play (you can guess)
It's easier than ever to adapt your cursor to your content - and your content to your cursor! All powered with Motion's spring and layout animations.
motion.dev/blog/introducing-magnetic-cursors-in-motion-cursor
It's easier than ever to adapt your cursor to your content - and your content to your cursor! All powered with Motion's spring and layout animations.
motion.dev/blog/introducing-magnetic-cursors-in-motion-cursor
Go beyond the limitations of your template with timeline sequencing, scroll animations, gestures and more.
motion.dev/docs/wordpress
Go beyond the limitations of your template with timeline sequencing, scroll animations, gestures and more.
motion.dev/docs/wordpress
Me neither. It lets you switch SVG transform-origin calculations relative to the view box or the element itself.
Motion 12.8.2 uses it to replace measurements for more performant and reliable transforms.
Me neither. It lets you switch SVG transform-origin calculations relative to the view box or the element itself.
Motion 12.8.2 uses it to replace measurements for more performant and reliable transforms.
All CSS effects, zero shaders.
🔗 Example: examples.motion.dev/react/apple-...
This is only one part of the full Apple Intelligence animation but thought it was interesting enough to isolate. Perhaps a tutorial next week?
All CSS effects, zero shaders.
🔗 Example: examples.motion.dev/react/apple-...
This is only one part of the full Apple Intelligence animation but thought it was interesting enough to isolate. Perhaps a tutorial next week?
If a View Transition is interrupted, it snaps to the end before starting the next animation. animateView fixes this by waiting until the current one is finished.
Before/after:
If a View Transition is interrupted, it snaps to the end before starting the next animation. animateView fixes this by waiting until the current one is finished.
Before/after:
Springs, scroll, AnimatePresence, gestures, and yes, layout animations. All that and more, powered by Motion's unique hybrid engine, wrapped up with its simple API.
🔗 motion.dev/blog/introdu...
Springs, scroll, AnimatePresence, gestures, and yes, layout animations. All that and more, powered by Motion's unique hybrid engine, wrapped up with its simple API.
🔗 motion.dev/blog/introdu...
This button combines SVG path animations, blur filters and keyframes to build a dynamic and fun information badge.
🔗 React: examples.motion.dev/react/multi-...
🔗 JS: examples.motion.dev/js/multi-sta...
This button combines SVG path animations, blur filters and keyframes to build a dynamic and fun information badge.
🔗 React: examples.motion.dev/react/multi-...
🔗 JS: examples.motion.dev/js/multi-sta...
This iOS-inspired notifications stack uses Motion's variants to gracefully animate between open and closed states with finely-tuned physics-based springs.
JS: examples.motion.dev/js/notificat...
React: examples.motion.dev/react/notifi...
This iOS-inspired notifications stack uses Motion's variants to gracefully animate between open and closed states with finely-tuned physics-based springs.
JS: examples.motion.dev/js/notificat...
React: examples.motion.dev/react/notifi...
A 0.7kb vanilla JS function for creating beautiful and playful text animations.
Split text into chars, words and lines and animate with Motion, CSS, or anything else.
🔗 motion.dev/docs/split-t...
🕹️ examples.motion.dev/js?search=sp...
A 0.7kb vanilla JS function for creating beautiful and playful text animations.
Split text into chars, words and lines and animate with Motion, CSS, or anything else.
🔗 motion.dev/docs/split-t...
🕹️ examples.motion.dev/js?search=sp...
Discover how to link slider offset to clipPath to make this image reveal effect. It gives a little tug at the end to provide boundary feedback.
It's also keyboard accessible... [1/4]
Discover how to link slider offset to clipPath to make this image reveal effect. It gives a little tug at the end to provide boundary feedback.
It's also keyboard accessible... [1/4]
All the scales are calculated declaratively, with each item using chains of useTransforms derived from their x/y position and current pan position.
examples.motion.dev/react/apple-...
All the scales are calculated declaratively, with each item using chains of useTransforms derived from their x/y position and current pan position.
examples.motion.dev/react/apple-...
examples.motion.dev/react/line-g...
examples.motion.dev/react/line-g...
With this kind of effect it's important to hide the duplicated text with aria-hidden!
Does this effect have a canonical name?
examples.motion.dev/react/text-r...
With this kind of effect it's important to hide the duplicated text with aria-hidden!
Does this effect have a canonical name?
examples.motion.dev/react/text-r...
motion.dev/docs/radix
Which component library would you like to see next?
motion.dev/docs/radix
Which component library would you like to see next?
A Motion+ React component for making beautiful number animations. Based on @barvian.me's NumberFlow, this version is built entirely on Motion, so existing users can use it for just +2.5kb.
motion.dev/docs/react-animate-number
A Motion+ React component for making beautiful number animations. Based on @barvian.me's NumberFlow, this version is built entirely on Motion, so existing users can use it for just +2.5kb.
motion.dev/docs/react-animate-number
∙ useTransform maps overshoot into tug, stretch and squeeze
∙ Keyboard a11y - tap up/down to change value
∙ Spring-powered "kick" when pressing up/down beyond min/max values
examples.motion.dev/react/ios-sl...
∙ useTransform maps overshoot into tug, stretch and squeeze
∙ Keyboard a11y - tap up/down to change value
∙ Spring-powered "kick" when pressing up/down beyond min/max values
examples.motion.dev/react/ios-sl...
✅ Shared layout animation for selected state
⌨️ Free keyboard accessibility with onTap + whileFocus
Check it out: examples.motion.dev/react/tab-se...
✅ Shared layout animation for selected state
⌨️ Free keyboard accessibility with onTap + whileFocus
Check it out: examples.motion.dev/react/tab-se...