{
  "slug": "sonner",
  "name": "Sonner",
  "url": "https://sonner.emilkowal.ski",
  "cat": "dx",
  "group": "build",
  "tagline": "Toast notifications",
  "price": "Free · MIT",
  "tier": "free",
  "pick": false,
  "what": "An opinionated React toast component, v2, from Emil Kowalski. Stacked, swipeable, animated toasts with promise-aware variants that show loading then success or error automatically. Now the toast component shadcn/ui recommends, replacing its older one.",
  "why": "One import and <code>toast.success('Saved')</code> works anywhere, with no provider plumbing. Without it, silent failures are invisible — users click save, nothing happens, and they click again.",
  "warn": "Styling is deliberately opinionated, so deep visual customisation means fighting its CSS variables. shadcn's deprecated <code>toast</code> component is a different API — do not mix tutorials.",
  "install": "npm install sonner",
  "category": {
    "key": "dx",
    "name": "Libraries & build tooling",
    "desc": "The dependencies your AI will reach for whether or not you chose them. Know what they are.",
    "group": "build",
    "groupName": "Build it"
  },
  "freshness": null,
  "health": {
    "ok": true,
    "status_code": 200,
    "final_url": "https://sonner.emilkowal.ski/",
    "checked_at": "2026-08-18T21:22:12.874+00:00"
  },
  "corrected_at": null,
  "upstream_changed_at": null
}