Features
Auto or Hover mode: Loop continuously on load, or trigger the wave only on hover and focus
Lift: Control how high each letter rises (0 to 40px)
Stagger: Set the delay between each letter for tight ripples or slow cascades
Cycle Delay: Add a pause between wave repetitions so it breathes instead of spins
Full font control: Family, size, weight, style, tracking, and transform via Framer's native Font picker
Color: Any color token or hex value
Optional link: Wrap the whole label in a URL, with new tab support
Why this component exists
Staggered, infinite, per-character motion is not achievable using native Framer interactions or Smart Animate. Framer's built-in transitions operate on whole layers. Animating individual characters independently, each with its own delay, its own loop, and its own play state, requires splitting text into per-letter elements at runtime and driving them with framer-motion transitions in code.
Made with ♡ by SOSOTAR. If you have any question, email play@sosotar.com