⚠️ Mobile is not supported yet.
Search for a command to run...
Hand-crafted, accessible components for building beautiful status pages.
Alert-style status banner with tabs support and timestamp display
Interactive status timeline with hover, keyboard navigation, and event display
Empty and skeleton state components for loading and no-data scenarios
React context for supplying translated labels and locale-aware date formatters to status blocks. Optional — blocks fall back to defaultStatusBlocksLabels (en-US) when no provider is mounted.
Monthly calendar view of status history with per-day markers and event hover cards
Monitor component primitives for building status displays
Collapsible group wrapper for status components
Event timeline components for displaying status reports and maintenance updates
Unified feed component combining status reports and maintenance events
Unified status icon component with variants for different contexts
Layout primitives for composing status displays (Status, StatusHeader, StatusTitle, etc.)
Agnostic locale picker. Caller owns value, onValueChange, and label resolution — no next-intl, router, or locale detection
Full status page chrome — shell, header, footer, get-in-touch, status-updates, theme + locale switchers. Combine with status-essentials or status-complete for the body
Complete status page components including all primitives, displays, interactive elements, and chrome (header / footer / switchers)
Essential status page components for basic status displays
Presentation-only footer chrome (powered-by, action cluster). Embed/white-label gating, switchers, and tRPC fetch stay in the wrapping app
Two flat button primitives (icon + text) with tooltip chrome for the contact link in a status page header
Presentation-only header chrome (brand, nav, actions). Routing-agnostic — apps inject their own Link component via asChild
Outer chrome wrappers (StatusPageShell + StatusPageMain) around header / main / footer. Routing-agnostic with embed-aware Tailwind classes that activate only when an ancestor sets data-embed
Agnostic light/dark/system theme switcher. Caller owns the value and onValueChange wiring (next-themes, form state, etc.)
Interactive timestamp display with tooltip (simple) or hover-card (rich) variants showing multiple timezone formats
TypeScript type definitions for status components
Popover with copy-link primitives for RSS, Atom, JSON, Slack, and SSH subscription channels. Flat exports — caller composes layout (tabs, sections, etc.)
Utility functions for status formatting and display
React hook for copying text to clipboard with toast notifications
React hook for responsive media query detection