@openstatus
Hand-crafted, accessible shadcn-registry components extracted from the OpenStatus open-source status page and uptime monitoring platform (AGPL-3.0). The registry ships status-page-specific primitives including StatusPage shell, StatusPageHeader, StatusPageFooter, StatusBanner, StatusBar, StatusComponent, StatusComponentGroup, StatusFeed, StatusEvents, StatusTimestamp, StatusLocale Switcher, StatusTheme Switcher, and incident-related components. Built with Tailwind CSS and React. The broader platform supports 28-region uptime monitoring, incident communication, and subscriber notifications. Use for: building branded incident/status page UIs or embedding live service health widgets into existing Next.js or React applications.
Install this registry
npx shadcn@latest add https://openstatus.dev/r/registry.json pnpm dlx shadcn@latest add https://openstatus.dev/r/registry.json bunx shadcn@latest add https://openstatus.dev/r/registry.json curl -s https://openstatus.dev/r/registry.json Components
26 totalReact hook for responsive media query detection
npx shadcn@latest add https://openstatus.dev/r/use-media-query.json React hook for copying text to clipboard with toast notifications
npx shadcn@latest add https://openstatus.dev/r/use-copy-to-clipboard.json TypeScript type definitions for status components
npx shadcn@latest add https://openstatus.dev/r/status-types.json Utility functions for status formatting and display
npx shadcn@latest add https://openstatus.dev/r/status-utils.json Unified status icon component with variants for different contexts
npx shadcn@latest add https://openstatus.dev/r/status-icon.json Layout primitives for composing status displays (Status, StatusHeader, StatusTitle, etc.)
npx shadcn@latest add https://openstatus.dev/r/status-layout.json Empty and skeleton state components for loading and no-data scenarios
npx shadcn@latest add https://openstatus.dev/r/status-blank.json React context for supplying translated labels and locale-aware date formatters to status blocks. Optional — blocks fall back to defaultStatusBlocksLabels (en-U…
npx shadcn@latest add https://openstatus.dev/r/status-i18n.json Interactive timestamp display with tooltip (simple) or hover-card (rich) variants showing multiple timezone formats
npx shadcn@latest add https://openstatus.dev/r/status-timestamp.json Alert-style status banner with tabs support and timestamp display
npx shadcn@latest add https://openstatus.dev/r/status-banner.json Monitor component primitives for building status displays
npx shadcn@latest add https://openstatus.dev/r/status-component.json Collapsible group wrapper for status components
npx shadcn@latest add https://openstatus.dev/r/status-component-group.json Event timeline components for displaying status reports and maintenance updates
npx shadcn@latest add https://openstatus.dev/r/status-events.json Interactive status timeline with hover, keyboard navigation, and event display
npx shadcn@latest add https://openstatus.dev/r/status-bar.json Monthly calendar view of status history with per-day markers and event hover cards
npx shadcn@latest add https://openstatus.dev/r/status-calendar.json Unified feed component combining status reports and maintenance events
npx shadcn@latest add https://openstatus.dev/r/status-feed.json Agnostic light/dark/system theme switcher. Caller owns the value and onValueChange wiring (next-themes, form state, etc.)
npx shadcn@latest add https://openstatus.dev/r/status-theme-switcher.json Agnostic locale picker. Caller owns value, onValueChange, and label resolution — no next-intl, router, or locale detection
npx shadcn@latest add https://openstatus.dev/r/status-locale-switcher.json Popover with copy-link primitives for RSS, Atom, JSON, Slack, and SSH subscription channels. Flat exports — caller composes layout (tabs, sections, etc.)
npx shadcn@latest add https://openstatus.dev/r/status-updates.json Two flat button primitives (icon + text) with tooltip chrome for the contact link in a status page header
npx shadcn@latest add https://openstatus.dev/r/status-page-get-in-touch.json Presentation-only header chrome (brand, nav, actions). Routing-agnostic — apps inject their own Link component via asChild
npx shadcn@latest add https://openstatus.dev/r/status-page-header.json Presentation-only footer chrome (powered-by, action cluster). Embed/white-label gating, switchers, and tRPC fetch stay in the wrapping app
npx shadcn@latest add https://openstatus.dev/r/status-page-footer.json Outer chrome wrappers (StatusPageShell + StatusPageMain) around header / main / footer. Routing-agnostic with embed-aware Tailwind classes that activate only w…
npx shadcn@latest add https://openstatus.dev/r/status-page-shell.json Full status page chrome — shell, header, footer, get-in-touch, status-updates, theme + locale switchers. Combine with status-essentials or status-complete for …
npx shadcn@latest add https://openstatus.dev/r/status-chrome.json Complete status page components including all primitives, displays, interactive elements, and chrome (header / footer / switchers)
npx shadcn@latest add https://openstatus.dev/r/status-complete.json Essential status page components for basic status displays
npx shadcn@latest add https://openstatus.dev/r/status-essentials.json