Photo Collage HeroPRO

A centered hero with an eyebrow, light display heading, and two actions above a staggered three-photo collage whose raised middle tile floats a live booking confirmation.

Hero159: Photo Collage Hero

A centered hero with an eyebrow, a light display heading and two actions, above a staggered three-photo collage whose raised middle tile floats a live booking confirmation.

Upgrade to Pro

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.

Upgrade Now

Installation

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

bash
npx shadcn add "https://ui.beste.co/r/hero159?email=YOUR_EMAIL&license_key=YOUR_KEY"

Base UI flavor

bash
npx shadcn add "https://ui.beste.co/r-base/hero159?email=YOUR_EMAIL&license_key=YOUR_KEY"

This installs the block to components/beste/block/hero159.tsx, the notification19 toast piece it floats on the centre tile (installed to components/beste/piece/notification19.tsx), and the badge23 and button21 components it uses for the eyebrow and the actions.

Quick start

The installed file exports hero159Demo alongside the block: the exact props behind the preview above. Spread it to get a working hero in one line.

tsx
import { Hero159, hero159Demo } from "@/components/beste/block/hero159";

export default function Page() {
  return <Hero159 {...hero159Demo} />;
}

Then replace the demo with your own props. Written out, a trimmed setup looks like this:

tsx
import { CalendarCheck } from "lucide-react";
import { Hero159 } from "@/components/beste/block/hero159";
import { Notification19 } from "@/components/beste/piece/notification19";

export default function Page() {
  return (
    <Hero159
      badge={{ label: "Inside the day" }}
      heading="Software that stays out of the room"
      description="The paperwork between appointments is handled, so the appointment itself can stay a conversation."
      buttons={[
        { label: "See how it works", href: "/product" },
        { label: "Talk to the team", href: "/contact", tone: "outline" },
      ]}
      tiles={[
        { src: "/clinic/reception.jpg", alt: "A clinician in a bright clinic" },
        { src: "/clinic/team.jpg", alt: "A small team around a laptop" },
        { src: "/backdrops/green.jpg", alt: "Deep green gradient backdrop" },
      ]}
      media={
        <Notification19
          icon={CalendarCheck}
          title="Follow-up booked"
          meta="Rowan Blake · Wed 09:00"
          time="now"
          tone="emerald"
        />
      }
    />
  );
}

Props

PropTypeDefaultDescription
badge{ label: string }Centered eyebrow above the heading, rendered through Badge23
headingstringDisplay heading, rendered as the page h1
descriptionstringCentered supporting paragraph, capped at max-w-xl
buttonsActionLink[][]Centered actions in source order
tilesCollageTile[][]Collage photographs, the second one becomes the raised centre tile
mediaReactNodeLive asset layered on the centre tile only
classNamestringExtra classes for the outer section
ts
type ButtonTone = "primary" | "neutral" | "outline";

type ActionLink = {
  label: string;
  href: string;
  tone?: ButtonTone;
};

type CollageTile = {
  src: string;
  alt: string;
};

Behavior notes

More Hero blocks

View all Hero
PRO

hero120

Editorial Image Hero

Centered editorial hero with eyebrow, large heading, description, dual dark and outline CTAs, and a wide 16:9 image with a mono caption below.

PRO

hero114

Collage Hero

Split studio hero with a two-tone headline and a four-image arranged collage.

PRO

hero125

Hero with Portrait Gallery

Centered eyebrow, oversized heading and CTA above a responsive 3-up portrait gallery with monospace captions.

PRO

hero144

Centered Product Hero

A centered hero with an eyebrow pill, a large light heading, a supporting paragraph, two accent buttons, and a wide image tile below that floats a live product micro-asset.

PRO

hero166

Split Headline Hero

An editorial hero that breaks its display heading across two lines and slots a square image tile floating a live payment card into the gap, with the paragraph and action landing under a hairline.

PRO

hero145

Editorial Product Hero

An editorial hero with an eyebrow and an oversized full-width light heading, then a lower row pairing a paragraph and two accent buttons with an image tile that floats a live app window frame.