Backdrop

Page background drawn from theme tokens only. Put one x-backdrop right after body. Patterns: flow (two drifting glows, animated), glow, grid, dot and more, each with -s / -m / -l density. local confines it to a hero or card. Added in v0.20.0.

Whole page (one, right after <body>)

<body>
    <x-backdrop pattern="flow" />
    ...
</body>
<div class="pn-backdrop" data-pattern="flow" data-size="m" aria-hidden="true">
<i></i><i></i>
</div>...

flow — two theme-colored glows drifting (local: inside a section only)

Ship faster

Two theme-colored glows drift behind the hero.

<section class="relative isolate overflow-hidden rounded-[var(--radius-box)] border border-base-300 w-full h-56 grid place-items-center">
    <x-backdrop pattern="flow" local />
    <div class="text-center">
        <h3 class="text-2xl font-bold">Ship faster</h3>
        <p class="text-sm text-base-content/70">Two theme-colored glows drift behind the hero.</p>
    </div>
</section>
<section class="relative isolate overflow-hidden rounded-[var(--radius-box)] border border-base-300 w-full h-56 grid place-items-center">
<div class="pn-backdrop" data-pattern="flow" data-size="m" data-local="" aria-hidden="true">
<i></i><i></i>
</div>
<div class="text-center">
<h3 class="text-2xl font-bold">
            Ship faster
        </h3>
<p class="text-sm text-base-content/70">
            Two theme-colored glows drift behind the hero.
        </p>
</div>
</section>

Patterns — all drawn from theme tokens

glow
grid
dot
ndot
ring
cross
rule
diag
paper
chev
sig
@foreach (['glow', 'grid', 'dot', 'ndot', 'ring', 'cross', 'rule', 'diag', 'paper', 'chev', 'sig'] as $p)
    <div class="relative isolate overflow-hidden rounded-[var(--radius-box)] border border-base-300 h-28 grid place-items-center">
        <x-backdrop :pattern="$p" local />
        <code class="text-xs bg-base-100 px-2 py-0.5 rounded">{{ $p }}</code>
    </div>
@endforeach
<div class="relative isolate overflow-hidden rounded-[var(--radius-box)] border border-base-300 h-28 grid place-items-center">
<div class="pn-backdrop" data-pattern="glow" data-size="m" data-local="" aria-hidden="true">
<i></i><i></i>
</div><code class="text-xs bg-base-100 px-2 py-0.5 rounded">glow</code>
</div>
<div class="relative isolate overflow-hidden rounded-[var(--radius-box)] border border-base-300 h-28 grid place-items-center">
<div class="pn-backdrop" data-pattern="grid" data-size="m" data-local="" aria-hidden="true">
<i></i><i></i>
</div><code class="text-xs bg-base-100 px-2 py-0.5 rounded">grid</code>
</div>
<div class="relative isolate overflow-hidden rounded-[var(--radius-box)] border border-base-300 h-28 grid place-items-center">
<div class="pn-backdrop" data-pattern="dot" data-size="m" data-local="" aria-hidden="true">
<i></i><i></i>
</div><code class="text-xs bg-base-100 px-2 py-0.5 rounded">dot</code>
</div>
<div class="relative isolate overflow-hidden rounded-[var(--radius-box)] border border-base-300 h-28 grid place-items-center">
<div class="pn-backdrop" data-pattern="ndot" data-size="m" data-local="" aria-hidden="true">
<i></i><i></i>
</div><code class="text-xs bg-base-100 px-2 py-0.5 rounded">ndot</code>
</div>
<div class="relative isolate overflow-hidden rounded-[var(--radius-box)] border border-base-300 h-28 grid place-items-center">
<div class="pn-backdrop" data-pattern="ring" data-size="m" data-local="" aria-hidden="true">
<i></i><i></i>
</div><code class="text-xs bg-base-100 px-2 py-0.5 rounded">ring</code>
</div>
<div class="relative isolate overflow-hidden rounded-[var(--radius-box)] border border-base-300 h-28 grid place-items-center">
<div class="pn-backdrop" data-pattern="cross" data-size="m" data-local="" aria-hidden="true">
<i></i><i></i>
</div><code class="text-xs bg-base-100 px-2 py-0.5 rounded">cross</code>
</div>
<div class="relative isolate overflow-hidden rounded-[var(--radius-box)] border border-base-300 h-28 grid place-items-center">
<div class="pn-backdrop" data-pattern="rule" data-size="m" data-local="" aria-hidden="true">
<i></i><i></i>
</div><code class="text-xs bg-base-100 px-2 py-0.5 rounded">rule</code>
</div>
<div class="relative isolate overflow-hidden rounded-[var(--radius-box)] border border-base-300 h-28 grid place-items-center">
<div class="pn-backdrop" data-pattern="diag" data-size="m" data-local="" aria-hidden="true">
<i></i><i></i>
</div><code class="text-xs bg-base-100 px-2 py-0.5 rounded">diag</code>
</div>
<div class="relative isolate overflow-hidden rounded-[var(--radius-box)] border border-base-300 h-28 grid place-items-center">
<div class="pn-backdrop" data-pattern="paper" data-size="m" data-local="" aria-hidden="true">
<i></i><i></i>
</div><code class="text-xs bg-base-100 px-2 py-0.5 rounded">paper</code>
</div>
<div class="relative isolate overflow-hidden rounded-[var(--radius-box)] border border-base-300 h-28 grid place-items-center">
<div class="pn-backdrop" data-pattern="chev" data-size="m" data-local="" aria-hidden="true">
<i></i><i></i>
</div><code class="text-xs bg-base-100 px-2 py-0.5 rounded">chev</code>
</div>
<div class="relative isolate overflow-hidden rounded-[var(--radius-box)] border border-base-300 h-28 grid place-items-center">
<div class="pn-backdrop" data-pattern="sig" data-size="m" data-local="" aria-hidden="true">
<i></i><i></i>
</div><code class="text-xs bg-base-100 px-2 py-0.5 rounded">sig</code>
</div>

Density — -s / -m / -l

grid-s
grid-m
grid-l
sig-s
sig-m
sig-l
@foreach (['grid-s', 'grid-m', 'grid-l', 'sig-s', 'sig-m', 'sig-l'] as $p)
    <div class="relative isolate overflow-hidden rounded-[var(--radius-box)] border border-base-300 h-28 grid place-items-center">
        <x-backdrop :pattern="$p" local />
        <code class="text-xs bg-base-100 px-2 py-0.5 rounded">{{ $p }}</code>
    </div>
@endforeach
<div class="relative isolate overflow-hidden rounded-[var(--radius-box)] border border-base-300 h-28 grid place-items-center">
<div class="pn-backdrop" data-pattern="grid" data-size="s" data-local="" aria-hidden="true">
<i></i><i></i>
</div><code class="text-xs bg-base-100 px-2 py-0.5 rounded">grid-s</code>
</div>
<div class="relative isolate overflow-hidden rounded-[var(--radius-box)] border border-base-300 h-28 grid place-items-center">
<div class="pn-backdrop" data-pattern="grid" data-size="m" data-local="" aria-hidden="true">
<i></i><i></i>
</div><code class="text-xs bg-base-100 px-2 py-0.5 rounded">grid-m</code>
</div>
<div class="relative isolate overflow-hidden rounded-[var(--radius-box)] border border-base-300 h-28 grid place-items-center">
<div class="pn-backdrop" data-pattern="grid" data-size="l" data-local="" aria-hidden="true">
<i></i><i></i>
</div><code class="text-xs bg-base-100 px-2 py-0.5 rounded">grid-l</code>
</div>
<div class="relative isolate overflow-hidden rounded-[var(--radius-box)] border border-base-300 h-28 grid place-items-center">
<div class="pn-backdrop" data-pattern="sig" data-size="s" data-local="" aria-hidden="true">
<i></i><i></i>
</div><code class="text-xs bg-base-100 px-2 py-0.5 rounded">sig-s</code>
</div>
<div class="relative isolate overflow-hidden rounded-[var(--radius-box)] border border-base-300 h-28 grid place-items-center">
<div class="pn-backdrop" data-pattern="sig" data-size="m" data-local="" aria-hidden="true">
<i></i><i></i>
</div><code class="text-xs bg-base-100 px-2 py-0.5 rounded">sig-m</code>
</div>
<div class="relative isolate overflow-hidden rounded-[var(--radius-box)] border border-base-300 h-28 grid place-items-center">
<div class="pn-backdrop" data-pattern="sig" data-size="l" data-local="" aria-hidden="true">
<i></i><i></i>
</div><code class="text-xs bg-base-100 px-2 py-0.5 rounded">sig-l</code>
</div>