# Background Pattern 1 - Full-screen radial gradient background pattern

> This component generates a full-screen background pattern with a radial gradient effect, applying customizable styles through optional class names. It features a placeholder pattern element and a visually striking top primary radial gradient.

A shadcn/ui block from the [@shadcnblocks](https://shadcnblocks.com) registry, listed on [shadcn.exchange](https://shadcn.exchange/r/shadcnblocks/background-pattern1).

- Page, with a live preview: https://shadcn.exchange/r/shadcnblocks/background-pattern1
- Screenshot: https://abzjhwgwpdpz7ua5.public.blob.vercel-storage.com/shots/shadcnblocks/background-pattern1-light-0bb6ed0806557800.png
- Registry item: https://shadcnblocks.com/r/background-pattern1.json
- Listed: 2026-10-13, source last changed 2026-10-13

## Install

```bash
npx shadcn@latest add https://shadcnblocks.com/r/background-pattern1.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: `cn`
- Registry items: `badge`, `button`

## Files

### `block/background-pattern1/background-pattern1.tsx`

```tsx
import { cn } from "cn";

import { PatternPlaceholder } from "@/components/shadcnblocks/pattern-placeholder";
interface BackgroundPattern1Props {
  className?: string;
}

const BackgroundPattern1 = ({ className }: BackgroundPattern1Props) => {
  return (
    <section
      className={cn(
        "relative h-svh max-h-[1200px] min-h-[600px] w-full",
        className,
      )}
    >
      <PatternPlaceholder />
      {/* Background Pattern */}
      {/* Top Primary Radial Background Pattern */}
      <div
        className="absolute inset-0 z-0"
        style={{
          background:
            "radial-gradient(125% 125% at 50% 10%, var(--background) 40%, var(--primary) 100%)",
        }}
      />
    </section>
  );
};

export { BackgroundPattern1 };
```

### `components/shadcnblocks/pattern-placeholder.tsx`

```tsx
import { Badge } from "@/components/ui/badge";
import { Button } from "@/components/ui/button";

const PatternPlaceholder = () => {
  return (
    <div className="relative z-10 flex h-full items-center justify-center">
      <div className="container">
        <div className="mx-auto flex max-w-5xl flex-col items-center gap-6 text-center">
          <Badge variant="secondary">Shadcnblocks.com</Badge>
          <div className="max-w-3xl">
            <h1 className="mb-6 text-4xl font-medium tracking-tight text-pretty text-foreground md:text-5xl lg:text-6xl">
              Modern background patterns for any section.
            </h1>
            <p className="mx-auto max-w-2xl font-light tracking-tighter text-pretty text-muted-foreground md:text-lg lg:text-xl">
              Easily insertable background patterns that use Tailwind CSS and
              SVGs. Copy and paste as an absolute positioned div in any section.
            </p>
          </div>

          <div className="flex items-center gap-2">
            <Button>Get Started</Button>
            <Button variant="secondary">Learn More</Button>
          </div>
        </div>
      </div>
    </div>
  );
};

export { PatternPlaceholder };
```
