← All presets
Foundationwhole

Spring Scale

The whole text snaps into place with a tactile spring scale.

pnpm

Installation

Run the following command:

pnpmdlx shadcn@latest add https://mutype.dev/r/spring-scale-in.json

Props

PropTypeDefaultDescription
specAnimationSpecAnimation spec object (imported from components/mutype/specs/<id>).
textstringThe text to animate.
as"span" | "div" | "h1"–"h4" | "p""span"The HTML element to render.
triggerKeystring | numberRe-runs the animation when the value changes.
duration_multipliernumber1Scales duration_ms and stagger_ms uniformly. >1 slower, <1 faster.
y_travel_multipliernumber1Multiplier on y_px values; useful to dampen lift on small text.
forceReducedMotionbooleanfalseForces the reduced-motion fallback even when the user has not opted in (testing).
onFinished() => voidFires once when the enter phase completes (not on cancel).
classNamestringTailwind / CSS class names. Forwarded to the host element.

Usage notes

Tactile and immediate — best for short labels, badges, success messages. Avoid on long copy; the spring overshoot reads chaotic at length.

Inspired by iOS modal pop, Stripe success dialogs..