Skip to content
Data Display

Status Dot

Server Component

Presence dot with pulse, optional label, and avatar-overlay anchoring.

Import

tsx
import { StatusDot } from "@cronus-ui/ui";
bash
npx cronus-ui add status-dot

Examples

API Reference

Generated from the component's exported types.

StatusDotProps

Extends Omit<HTMLAttributes<HTMLSpanElement>, "children">, VariantProps<typeof statusDotVariants>

Skip StatusDotProps props table
PropTypeDefaultDescription
status
StatusDotStatus"online"Presence / semantic state the dot communicates. Drives the fill color and the default accessible name.
size
StatusDotSize"md"Dot size preset.
ring
booleanfalseDraws a surface-colored ring around the dot so it cuts out cleanly when overlaid on an avatar or icon.
label
stringThe English name of `status` (e.g. `"Online"`).Status text. Rendered next to the dot when `withLabel` is set; otherwise rendered as visually-hidden live-region content so screen readers announce both the initial status and later `status` changes.
withLabel
booleanfalseRenders `label` visibly next to the dot (in `text-fg-secondary`) instead of exposing it only to assistive technology.
pulse
booleanfalseAnimates an expanding "ping" halo behind the dot to draw attention. The halo reuses the dot's fill; the hollow `offline` dot gets a matching outline halo instead (its fill is transparent). The animation only runs for users who have not requested reduced motion.
position
StatusDotPosition"none"Absolute corner anchor for overlaying the dot on an avatar or icon — place the component inside a `relative` wrapper. The "right" corners map to the inline end, so they mirror under RTL.