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.
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.
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.
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.