Gallery Exhibition PagePRO

An exhibition page for a working studio: a navbar running the visiting details as a marquee, a framed poster hero, a salon wall hang with a lightbox, an archive ledger of works by year, a visiting FAQ, a framed closing invitation and a footer showing whether the room is open right now.

Composed from 7 blocks. Installing this page installs all of them, plus the pieces and primitives they use.

Built in the Auralis collection.

An exhibition page for a working studio: a navbar running the visiting details as a marquee, a framed poster hero, a salon wall hang with a lightbox, an archive ledger of works by year, a visiting FAQ, a framed closing invitation, and a footer showing whether the room is open right now. Seven blocks, one install.

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.

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

This installs the page to components/beste/page/exhibition1.tsx and everything behind it: the seven blocks it composes (navbar62, hero155, gallery12, gallery17, faq76, cta71, footer118) and the button12 and badge7 components they use. Ten files, no follow-up installs.

Quick start

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

tsx
import { Exhibition1, exhibition1Demo } from "@/components/beste/page/exhibition1";

export default function Page() {
  return <Exhibition1 {...exhibition1Demo} />;
}

Each section is a separate prop, so the usual next step is to keep the demo and replace one section at a time.

tsx
import { Exhibition1, exhibition1Demo } from "@/components/beste/page/exhibition1";

export default function Page() {
  return (
    <Exhibition1
      {...exhibition1Demo}
      navbar={{
        brand: "Room One",
        marquee: [
          "Open Wednesday to Friday, 16:00 to 18:00",
          "Entry is free and needs no booking",
          "Ground floor, step free",
        ],
        cta: { label: "Book a visit", href: "/visit" },
      }}
    />
  );
}

Props

Every prop is the full prop object of the block that renders that section, so anything the block accepts is accepted here.

PropTypeDefaultDescription
navbarComponentProps<typeof Navbar62>Visiting details, run as a marquee
heroComponentProps<typeof Hero155>Framed poster hero
hangComponentProps<typeof Gallery12>Salon wall hang with a lightbox
archiveComponentProps<typeof Gallery17>Archive ledger of works by year
faqComponentProps<typeof Faq76>Visiting questions
ctaComponentProps<typeof Cta71>Framed closing invitation
footerComponentProps<typeof Footer118>Opening hours, and whether the room is open now
classNamestringExtra classes for the page's outer wrapper

Sections

SectionBlockNotes
Navbarnavbar62Sticky; the marquee carries the visiting details
Herohero155A framed poster rather than a full-bleed photograph
Hanggallery12Salon layout; the lightbox lives inside the block
Archivegallery17Given bg-muted/50 by the page, separating it from the hang
Questionsfaq76Visiting practicalities, not sales objections
Invitationcta71Framed to echo the hero
Footerfooter118States the opening state in words

Behavior notes

Blocks in this page

Browse all blocks
PRO

navbar62

Announcement Marquee Navbar

Navbar with a dark scrolling announcement bar on top — looping links that pause on hover and fade at the edges — over a clean wordmark row with a pill CTA.

PRO

hero155

Framed Poster Hero

Full-bleed photographic hero printed inside an inset hairline frame, with the eyebrow and availability line on the top rule, an oversized statement in the middle, and notes, a pill CTA and an image credit anchored along the bottom.

PRO

gallery12

Exhibition Wall Hang

Works of different sizes hung on one centre line inside a matted wall panel, each with its own label, opening a viewer that shows the piece in a mount beside a museum wall label of medium, dimensions and year.

PRO

gallery17

Acquisition Year Ledger

Collection intake listed year by year with a summary beside each set of works, opening a viewer that scrolls rather than steps: every acquisition is a snap section and the header counter follows whichever fills the screen.

PRO

faq76

Editorial Two-Column FAQ

A two-column editorial FAQ pairing a sticky eyebrow, oversized heading, short note, and contact CTA on the left with a ruled, index-marked accordion of questions on the right.

PRO

cta71

Framed Studio Call

A quiet, gallery-like CTA centered inside a bordered frame with corner tick marks, eyebrow, oversized heading, and a single pill action.

PRO

footer118

Live Studio Clock Footer

Footer built around a live clock — the studio's local time ticks every second in oversized type, with a pulsing open/closed status, city and day, over a nav and copyright bar.