Server Error With Live Status
A calm server-error page: a monospace error code, an oversized light headline, recovery action buttons, and a hairline table carrying an incident reference and timestamp on the left, beside an image tile floating a decorative pulsing status dot and a row of static uptime bars on the right.
Docs
Installation
A real shadcn registry command, not a copy-paste stand-in: it fetches this block plus its button, media-slot dependencies and any missing npm packages, and installs them straight into your project.
npx shadcn add https://staaarter.com/r/server-error-with-live-status.jsonPrefer not to use the CLI? Copy the source from the Code toggle above into src/components/blocks/error/error35.tsx instead.
Usage
The file also exports error35Demo, the exact props behind the preview above. Spread it to get a working section in one line, then replace it with your own data.
import { Error35, error35Demo } from "@/components/blocks/error/error35"; export default function Page() { return <Error35 {...error35Demo} />; }
Props
| Prop | Type | Default | Description |
|---|---|---|---|
| errorCode | string | "ERROR 500 · INTERNAL_SERVER_ERROR" | Monospace error code shown above the headline. |
| heading | string | "Something went wrong on our end" | Oversized light headline. |
| description | string | none | Short supporting copy under the headline. |
| primaryLabel | string | "Refresh page" | Label for the primary recovery button. |
| primaryHref | string | "#" | Link target for the primary recovery button. |
| secondaryLabel | string | "Contact support" | Label for the secondary recovery button. |
| secondaryHref | string | "/support" | Link target for the secondary recovery button. |
| image | MediaSlotImage | none | Background image for the floating status tile. |
| statusLabel | string | "Investigating" | Label next to the pulsing status dot. |
| uptimeBars | number[] | none | Fixed heights (0-100) rendered as a static row of uptime bars, purely decorative. |
| reference | string | "ERR-2F91-6D3A" | Incident reference shown in the hairline table. |
| time | string | "Aug 2, 2026 · 14:32 UTC" | Timestamp shown in the hairline table. |
| className | string | none | Extra classes for the outer section element. |
Behavior notes
- The uptime strip (the pulsing status dot plus the row of small bars) is a purely static, decorative visual, not a real live status feed: the dot's pulse is CSS-only (animate-ping/animate-pulse) and the bars render from a fixed `uptimeBars` array with no polling, websocket, or interval behind them. Do not wire this up as a real status page without adding actual data fetching.
- Every button and link, including the Reference/Time table, is static demo content; nothing is fetched from a real incident-tracking system.
More Error Blocks
View all →centered-404-message
Centered 404 Message
Minimal centered 404 with two CTAs and a divided row of popular page links.
404-with-site-search
404 With Site Search
404 screen with a working search box and a bordered list of suggested pages.
split-404-with-image
Split 404 With Image
Two-column 404 with the message on one side and a full-bleed photo that scales on hover on the other.
404-with-destination-cards
404 With Destination Cards
404 screen with a grid of icon destination cards plus fallback CTA buttons.
404-support-panel
404 Support Panel
Card-style 404 echoing the requested URL, with a real back button and a support/status link row.
inline-404-line
Inline 404 Line
The smallest possible 404: code and message on one divided line with one button underneath.