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.
A screen-height 404 for marketing sites: a full-bleed photograph sits under a dark overlay with the message centred in white on top, closing with a solid button and a bordered ghost button.
Pro blocks install through the shadcn CLI with your license key and ship their full source. Docs and live previews stay open to everyone, so you can read every block's details first.
Swap YOUR_EMAIL and YOUR_KEY for the email and license key on your account. Find your license key on your account page.
Radix flavor
npx shadcn add "https://ui.beste.co/r/error10?email=YOUR_EMAIL&license_key=YOUR_KEY"Base UI flavor
npx shadcn add "https://ui.beste.co/r-base/error10?email=YOUR_EMAIL&license_key=YOUR_KEY"This installs the block to components/beste/block/error10.tsx, plus the button shadcn/ui primitive it uses for the action pair.
The installed file exports error10Demo alongside the block: the exact props behind the preview above. Spread it to get a full-screen error page in one line.
import { Error10, error10Demo } from "@/components/beste/block/error10";
export default function NotFound() {
return <Error10 {...error10Demo} />;
}Then replace the demo with your own props. Written out, a trimmed setup looks like this:
import { House } from "lucide-react";
import { Error10 } from "@/components/beste/block/error10";
export default function NotFound() {
return (
<Error10
code="Error 404"
heading="You have wandered off the map"
description="This address does not lead anywhere."
buttons={[
{ label: "Back to home", href: "/", icon: House },
{ label: "Browse the site", href: "/blog", variant: "outline" },
]}
image={{
src: "https://images.unsplash.com/photo-1539412060677-d70658ece18d?w=1920&h=1280&fit=crop",
alt: "Empty desk with a laptop in dim light",
}}
/>
);
}| Prop | Type | Default | Description |
|---|---|---|---|
code | string | – | Small uppercase status label above the heading |
heading | string | – | Main page heading, rendered as an h1 |
description | string | – | Explanatory paragraph under the heading |
buttons | ActionButton[] | [] | Centred action pair below the description |
image | { src: string; alt: string } | – | Background photograph behind the overlay |
className | string | – | Extra classes for the outer <section> |
type ActionButton = {
label: string;
href: string;
variant?: "default" | "outline";
icon?: LucideIcon;
};min-h-screen and centres its content, so the block fills the viewport rather than sitting in the normal document flow. It is registered as a fullscreen block, which is why the preview above renders in its own frame.variant: "outline" swaps the button for a transparent pill with a white border and a translucent hover fill; anything else renders the solid white button with black text.image is set. Without it the block falls back to the page background, and the white text will need a dark surface behind it.error3
Two-column 404 page with the error code, heading, explanation, buttons, and a small note on one side, and a full-bleed image that scales on hover on the other. The image side can be flipped with a prop.
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.
error20
Two-column 404 in a quiet monochrome language: a parenthetical eyebrow, a two-line display headline, a pill call to action and an oversized report-the-link email on the left, a tall captioned photograph on the right.
error30
Monochrome 404 that hands the visitor a search field: a display headline with a muted emphasis clause, a rounded search bar with a circular submit seal wired to a callback, and a ruled list of the most travelled routes.
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.
error13
404 page that doubles as a sitemap: left-aligned messaging over four columns of grouped section links, so visitors on a large site can jump straight to the area they wanted.