Compact bordered 404 card with a circular icon, status label, heading, one-line explanation, and stacked full-width buttons. Sized for app shells and modals as well as full pages.
A compact bordered card holding the whole error state: a circular icon, a status label, the heading, one line of explanation, and full-width stacked buttons. Narrow enough to drop inside an app shell or a dialog as well as on a full page.
Free block
This block is free. No license or account is required: install it with the CLI and use it in unlimited projects.
Radix flavor
npx shadcn add "https://ui.beste.co/r/error7"Base UI flavor
npx shadcn add "https://ui.beste.co/r-base/error7"This installs the block to components/beste/block/error7.tsx, plus the button shadcn/ui primitive it uses for the stacked action buttons.
The installed file exports error7Demo alongside the block: the exact props behind the preview above. Spread it to get a working card in one line.
import { Error7, error7Demo } from "@/components/beste/block/error7";
export default function NotFound() {
return <Error7 {...error7Demo} />;
}The icon is a Lucide component passed as a prop, so any icon works:
import { FileQuestion } from "lucide-react";
import { Error7 } from "@/components/beste/block/error7";
export default function NotFound() {
return (
<Error7
icon={FileQuestion}
code="Error 404"
heading="Page not found"
description="We looked, but there is nothing at this address."
buttons={[
{ label: "Back to home", href: "/" },
{ label: "Contact support", href: "/support", variant: "ghost" },
]}
/>
);
}| Prop | Type | Default | Description |
|---|---|---|---|
icon | LucideIcon | – | Icon rendered in the circular chip at the top of the card |
code | string | – | Small uppercase status label above the heading |
heading | string | – | Card heading, rendered as an h1 |
description | string | – | Explanatory line under the heading |
buttons | ActionButton[] | [] | Stacked full-width buttons at the bottom of the card |
className | string | – | Extra classes for the outer <section> |
type ActionButton = {
label: string;
href: string;
variant?: "default" | "outline" | "secondary" | "ghost";
icon?: LucideIcon;
};max-w-md and centered, so it keeps its compact proportions no matter how wide the page container is.icon, rendered before the label, and its own shadcn variant, so a primary and a quiet action can sit together.error4
404 page that recovers the visit with a grid of destination cards, each with an icon, title, description, and hover arrow, followed by a centered row of fallback buttons.
error6
The smallest possible 404: the status code and the message sit on one line separated by a vertical rule, stacking on mobile, with a single outline button underneath.
error5
Card-style 404 panel that echoes the requested URL in monospace, pairs a browser-history back button with link actions, and closes with a support and status link row.
error1
Minimal centered 404 page with a large error code, a heading, a short explanation, two call-to-action buttons, and a divided row of popular page links underneath.
error29
Monochrome 404 led by the status code set as an oversized numeral, with the statement and pill call to action on one side of a hairline rule and the explanation plus display-type links on the other.
error10
Screen-height 404 with a full-bleed background photo under a dark overlay, centered white messaging, and a solid plus outline button pair sized for marketing sites.