Sonner
basecn/sonnerFreeComponent
An opinionated toast component for React.
Live preview
live · rendered by the registry
Rendered by basecn on their own page — this is the component running, not a screenshot of it.Install it
npx shadcn@latest add https://basecn.dev/r/sonner.jsonSource
1"use client";23import {4 CircleCheckIcon,5 InfoIcon,6 Loader2Icon,7 OctagonXIcon,8 TriangleAlertIcon,9} from "lucide-react";10import { useTheme } from "next-themes";11import { Toaster as Sonner, type ToasterProps } from "sonner";1213const Toaster = ({ ...props }: ToasterProps) => {14 const { theme = "system" } = useTheme();1516 return (17 <Sonner18 theme={theme as ToasterProps["theme"]}19 className="toaster group"20 icons={{21 success: <CircleCheckIcon className="size-4" />,22 info: <InfoIcon className="size-4" />,23 warning: <TriangleAlertIcon className="size-4" />,24 error: <OctagonXIcon className="size-4" />,25 loading: <Loader2Icon className="size-4 animate-spin" />,26 }}27 style={28 {29 "--normal-bg": "var(--popover)",30 "--normal-text": "var(--popover-foreground)",31 "--normal-border": "var(--border)",32 "--border-radius": "var(--radius)",33 } as React.CSSProperties34 }35 {...props}36 />37 );38};3940export { Toaster };
What it pulls in
npm packages
Files it writes
More from basecn
All 56 items| Component | Registry | Kind | Access | Installs | Command |
|---|---|---|---|---|---|
| Accordionaccordion | basecn | Components | Free | 2 deps | |
| Alertalert | basecn | Components | Free | 1 dep | |
| Alert Dialogalert-dialog | basecn | Components | Free | 1 dep | |
| Aspect Ratioaspect-ratio | basecn | Components | Free | no deps | |
| Autocompleteautocomplete | basecn | Components | Free | 2 deps | |
| Avataravatar | basecn | Components | Free | 1 dep | |
| Badgebadge | basecn | Components | Free | 2 deps | |
| Breadcrumbbreadcrumb | basecn | Components | Free | 2 deps |
