blaze-motion
← All components

Spring Pop

Scale

Spring pop entrance — a natural ~1.05 overshoot that emerges from the spring itself.

Pops in
with overshoot
— never titles

Installation

One command drops the source into your repo — editable, with the provider and motion pulled in automatically.

npx shadcn add https://motion.asmitsah.dev/r/spring-pop.json

Usage

Basic

Wrap a badge, chip, or icon — it springs opacity 0 → 1 and scale 0.8 → ~1.05 → 1, the one deliberate overshoot in the engine. Never wrap titles or headings with it.

import { SpringPop } from "@/components/motion/spring-pop";

<SpringPop className="rounded-full border px-3 py-1 text-sm">
  New
</SpringPop>

Staggered group

Offset a cluster of pops by a beat each so they don't all land at once.

<div className="flex gap-3">
  <SpringPop>First</SpringPop>
  <SpringPop delay={0.1}>Second</SpringPop>
  <SpringPop delay={0.2}>Third</SpringPop>
</div>

Props

PropTypeDefaultDescription
childrenReactNodeContent that pops in on mount.
classNamestringPassed straight through — SpringPop becomes your layout element.
styleCSSPropertiesInline style passthrough.
delaynumber0Seconds before this instance animates.