A persistent in-flow status message, not a toast - reach for it when the notice should stay until it's dismissed.
Alert playground
Subscription renewal
Your workspace trial will expire in 3 days.
Install Alert
1. New project? One command installs the package and wires everything - see Installation:
pnpm dlx zyncat-ui init2. Import the component - it loads its own stylesheet:
import { Alert } from '@zyncat/ui/alert';Usage
import { Alert } from '@zyncat/ui/alert'; <Alert tone="warning" title="Subscription renewal" action={{ label: 'Manage plan', onClick: handlePlan }}> Your workspace trial will expire in 3 days.</Alert>Compose Alert in your application. No Tailwind or external styling library is required; every value resolves from Zyncat UI's token vocabulary.
Alert props
Alert
AlertAction
Frequently asked questions
Four: info, success, warning and danger. info and success render role="status", a polite live-region announcement; warning and danger render role="alert", which is assertive, matching the tones meant to interrupt.
It opens by easing its own height from 0 while fading in, and on dismiss it scales down and fades rather than collapsing - the space it occupied stays reserved until the exit finishes, so content below shifts up once, not mid-animation.
Yes - icon accepts any node to override the default tone glyph (info, check-circle, warning or warning-circle), and passing icon={null} removes the icon slot entirely.