OGANIKO Design System
Component catalogue
Components, patterns and tokens · demos, parameters & provenance
A short note after Save or Book — it worked, or try again — that floats in the corner and then leaves. The page stays put.
Cold-pressed rapeseed, 500ml, for Helen Marsh. Unaltered — not cooked or added to. The van leaves Meadow Farm by noon.
| Name | Type | Default | Description |
|---|---|---|---|
title | string | — | Short result line |
description | string | — | One supporting sentence |
tone | string | info | success | error | info |
duration | number | 4000 / 6000 | Milliseconds. Error defaults longer. 0 stays until dismiss |
action | object | — | Optional label + handler. Runs, then dismisses |
position | string | bottom-end | Viewport corner. One viewport, on document.body |
| Item | Detail |
|---|---|
| Inspiration | shadcn Sonner / 21st.dev sonner pattern (principles only — not a package re-export) |
| Scout approved | Phil Parry, 2026-09-23 |
| Maturity | experimental |
| Binding | components/toast/toast.css + components/toast/react/Toast.tsx |
| Catalogue CSS | catalogue/components/toast.css (mirror — http.server roots at catalogue/) |
components/toast/toast.css
▾
<div class="og-toast-viewport og-toast-viewport--bottom-end" role="region" aria-label="Notices">
<div class="og-toast og-toast--success" role="status" data-open="true">
<span class="og-toast__icon" aria-hidden="true">…</span>
<div class="og-toast__body">
<p class="og-toast__title">Wednesday morning saved</p>
</div>
<button type="button" class="og-toast__close" aria-label="Dismiss">…</button>
</div>
</div>