Animated Toast Stack

Stacked toasts with status morphs, swipe dismissal, actions and layout-aware motion.

Preview

Open a real toast

Toasts render fixed on the screen. Change position to open a toast from that edge.

Install

Add it with the shadcn CLI, or copy the source manually.

$ bunx --bun shadcn add @beui/animated-toast-stack

API Reference

useAnimatedToastStack

initialToasts?
{}
[]
defaultDuration?
number
4200
limit?
number

AnimatedToastStack

toasts
{}
onDismiss?
((id: string) => void)
position?
"top-left" | "top-right" | "bottom-left" | "bottom-right" | "top-center" | "bottom-center"
bottom-right
placement?
"static" | "fixed" | "absolute"
fixed?
boolean
false
portal?
boolean
portalRoot?
any
maxVisible?
number
4
className?
string
classNames?
ToastClassNames
icons?
any
renderToast?
((toast: AnimatedToast) => ReactNode)

Keep in mind

Some components on this site are inspired by or recreated from existing work across the web. I'm not here to take credit; just to learn, experiment, and sometimes push things a bit further. If something looks familiar and I forgot to mention you, reach out and I'll fix that right away.

Updated