colors
Your theme's colors
Three slots, read from your shadcn tokens, dark mode included. Give one color and it paints the whole icon; give two and the third follows.
137 animated icons with one to three color slots, piped from your shadcn/ui tokens. Each one has its own animations. Copy them into your codebase with the shadcn CLI.
npx shadcn add @kovenlabs/bellor all 137 at once with @kovenlabs/all, or pnpm add @kovenlabs/animated-icons
/icons
why
colors
Three slots, read from your shadcn tokens, dark mode included. Give one color and it paints the whole icon; give two and the third follows.
variants
A bell rings, shakes or jumps. Variant names are typed per icon, in props and in your global config. Re-trigger mid-animation and it picks up from where it is.
corners
Drawn sharp, rendered round: the geometry itself is reshaped at render, at whatever radius fits your brand. One prop, the whole set.
install
1 · add
npx shadcn add @kovenlabs/bell @kovenlabs/loader # or the whole set npx shadcn add @kovenlabs/all # or as a package pnpm add @kovenlabs/animated-icons motion
The shadcn way copies the source into components/animated-icons/, yours to edit. The package keeps it all in one dependency.
2 · use
<BellIcon />
<BellIcon variant="shake" trigger="auto" />
<BellIcon colors={{ accent: "destructive" }} />Hover, click, auto, in view, or drive it yourself through a ref.
3 · configure once
export default defineIconConfig({
trigger: "hover",
corners: "round",
icons: { bell: { variant: "shake" } },
})Global defaults in config.ts; providers for a subtree; props win.