# Light Not Found with Support

> Plain light 404 with no artwork: centered eyebrow, headline and description, a primary back-home button and a contact-support link with a trailing arrow.

A shadcn/ui block from the [@01orbital](https://01orbital.dev/?utm_source=shadcn.exchange) registry, listed on [shadcn.exchange](https://shadcn.exchange/r/01orbital/minimal-404-01).

- Page, with a live preview: https://shadcn.exchange/r/01orbital/minimal-404-01
- Screenshot: https://shadcn.exchange/shot/01orbital/minimal-404-01/light.png
- Registry item: https://01orbital.dev/r/minimal-404-01.json
- Categories: 404
- Listed: 2026-11-01, source last changed 2026-11-01

## Install

```bash
npx shadcn@latest add https://shadcn.exchange/r/01orbital/minimal-404-01.json
```

Run it in a project that has shadcn/ui set up. It adds the files below and installs what they depend on.

## Dependencies

- npm packages: `@phosphor-icons/react`, `cn`
- Registry items: `@01orbital/button`, `@01orbital/eyebrow`, `@01orbital/heading`, `@01orbital/section`

## Files

### `blocks/404/minimal-404-01/index.tsx`

```tsx
import { ArrowRightIcon } from "@phosphor-icons/react/dist/ssr"
import { cn } from "cn"

import { Eyebrow } from "@/components/editorial/eyebrow"
import { Heading } from "@/components/editorial/heading"
import {
  Section,
  SectionActions,
  SectionDescription,
  SectionHeader,
  SectionTitleGroup,
} from "@/components/editorial/section"
import { buttonVariants } from "@/components/ui/button"

// The copy: change text here, not in the markup.
const COPY = {
  eyebrow: "404",
  title: "Page not found",
  body: "There is nothing at this address. Check the link, or start again from home.",
} as const

const ACTIONS = {
  home: { label: "Back to home", href: "/" },
  support: { label: "Contact support", href: "/support" },
} as const

export default function MinimalNotFound01() {
  return (
    <Section size="lg" className="flex min-h-svh flex-col justify-center">
      <SectionHeader align="center" size="lg">
        <SectionTitleGroup>
          <Eyebrow>{COPY.eyebrow}</Eyebrow>
          <Heading render={<h1 />} size="lg">
            {COPY.title}
          </Heading>
        </SectionTitleGroup>
        <SectionDescription size="lg">{COPY.body}</SectionDescription>
      </SectionHeader>
      <SectionActions align="center">
        <a
          href={ACTIONS.home.href}
          data-slot="button"
          className={cn(buttonVariants({ size: "lg" }))}
        >
          {ACTIONS.home.label}
        </a>
        <a
          href={ACTIONS.support.href}
          data-slot="button"
          className={cn(buttonVariants({ variant: "link", size: "lg" }))}
        >
          {ACTIONS.support.label}
          <ArrowRightIcon
            weight="light"
            data-icon="inline-end"
            aria-hidden="true"
          />
        </a>
      </SectionActions>
    </Section>
  )
}
```
