Skip to content

Ribbon Text

A travelling wave bends letters through light and shade.

LIVE PREVIEWInteract with the component
Just React. No extra dependencies.

Copy the component and its CSS module into your project.

CSS Modules

Usage

Matches your current playground settings.

jsx
import RibbonText from "./RibbonText";
export default function Example() {
return (
<RibbonText
text={"Soft spoken."}
color={"#e5c6a7"}
amplitude={12}
speed={3}
stagger={90}
paused={false}
style={{
"fontSize": 64
}}
/>
);
}

Using Ribbon Text

Use a short word or phrase so the travelling wave remains easy to read. amplitude controls how far the letters move.

stagger changes the delay between letters and speed changes the wave's pace. Use paused when the surrounding composition should remain still.

Props

NameTypeRequiredDefaultDescription
textstringNo""Text to render; characters are read once by assistive technology.
colorstringNo"#ead8c5"Letter colour.
amplitudenumberNo12Vertical wave height in pixels.
speednumberNo3Wave cycle duration in seconds.
staggernumberNo90Phase offset between letters in milliseconds.
pausedbooleanNofalseFreeze the wave at its current position.
classNamestringNo""Additional CSS classes merged with the component styles.
styleCSSPropertiesNoundefinedInline styles for sizing, typography, and visual overrides.

Related components

Reflection Text

Text Effects

Crisp typography meets a soft, fading reflection beneath the baseline.

Morphing Words

Text Effects

Words dissolve through a soft blur while the headline keeps its width.

Dot Matrix Text

Text Effects

Amber pinpoints form a crisp matrix display with a soft travelling pulse.

Scan Text

Text Effects

A warm scanning light brings a dim headline into focus.