Typography & motion

Confetti

Three intensities (subtle, normal, wild). Fires once on a key change, no persistent canvas, easy retrigger via key counter.

Confetti is the celebration moment. One-shot canvas burst at three intensities — subtle for a small win, normal for a goal hit, wild for completion of a streak. The component re-fires on every key change, so the standard pattern is to bump a counter.

Live preview

Example

tsx
import { Confetti } from '@kidcash/ui';

const [counter, setCounter] = useState(0);

<button onClick={() => setCounter(c => c + 1)}>Hit goal</button>
<Confetti key={counter} intensity="normal" />

Want all 27 in one place?

The home playground shows every component side-by-side. Or install @kidcash/ui and use Confetti in your own app.