A monochrome studio home page: a navbar carrying availability and contact details, a split-screen statement hero with a full-height photograph, a ruled project index, an oversized client quote, a booking panel with engagement details, and an oversized wordmark footer.
Composed from 6 blocks. Installing this page installs all of them, plus the pieces and primitives they use.
Built in the Auralis collection.
A monochrome studio home page: a sticky navbar carrying availability and contact details, a split-screen statement hero with a full-height photograph, a ruled project index, an oversized client quote, a booking panel with the engagement details, and an oversized wordmark footer. Six 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.
Swap YOUR_EMAIL and YOUR_KEY for the email and license key on your account. Find your license key on your account page.
npx shadcn add "https://ui.beste.co/page/r/home2?email=YOUR_EMAIL&license_key=YOUR_KEY"This installs the page to components/beste/page/home2.tsx and everything behind it: the six blocks it composes (navbar65, hero156, portfolio112, testimonial35, cta78, footer108) and the badge7 and button12 components they use. Nine files, no follow-up installs.
The installed file exports home2Demo alongside the page: the exact props behind the preview above. Spread it to get a working page in one line.
import { Home2, home2Demo } from "@/components/beste/page/home2";
export default function Page() {
return <Home2 {...home2Demo} />;
}Each section is a separate prop, so the usual next step is to keep the demo and replace one section at a time.
import { Home2, home2Demo } from "@/components/beste/page/home2";
export default function Page() {
return (
<Home2
{...home2Demo}
work={{
label: "Selected",
heading: "Nine projects a year, and every one shipped.",
projects: [
{ title: "Halden Reserve", category: "Identity", year: "2026" },
{ title: "Norrland Ferries", category: "Wayfinding", year: "2025" },
{ title: "Fold Quarterly", category: "Editorial", year: "2025" },
],
}}
/>
);
}Every prop is the full prop object of the block that renders that section, so anything the block accepts is accepted here.
| Prop | Type | Default | Description |
|---|---|---|---|
navbar | ComponentProps<typeof Navbar65> | – | Availability, contact details and links |
hero | ComponentProps<typeof Hero156> | – | Split-screen statement beside a full-height photograph |
work | ComponentProps<typeof Portfolio112> | – | Ruled project index |
testimonial | ComponentProps<typeof Testimonial35> | – | One oversized client quote |
cta | ComponentProps<typeof Cta78> | – | Booking panel with engagement details |
footer | ComponentProps<typeof Footer108> | – | Oversized wordmark footer |
className | string | – | Extra classes for the page's outer wrapper |
| Section | Block | Notes |
|---|---|---|
| Navbar | navbar65 | Sticky; carries a status line and an email beside the links |
| Hero | hero156 | Half statement, half photograph, both full height |
| Work | portfolio112 | A ruled list rather than a card grid |
| Quote | testimonial35 | Set at display size, so keep the quote short |
| Booking | cta78 | Already carries its own tinted cards; the page adds no surface |
| Footer | footer108 | Wordmark at full width |
testimonial removes that section entirely rather than rendering an empty one.sticky top-0 z-50 by the page, so it follows the reader down the whole document. It works here because the block carries its own opaque band; a transparent navbar would collide with the headings passing underneath.dark class, which swaps the theme tokens for that subtree. The cards and borders inside the block follow the switch, which they would not do if the section were merely painted a dark colour.bg-muted tint anywhere. The rhythm comes from the hero's photo half and the inverted booking band, which is why an extra tinted section tends to muddy it.navbar65
Two-tier navbar — a top strip carries an availability badge with a live dot and utility links, over a main row with an oversized wordmark, nav and pill CTA.
hero156
Edge-to-edge split hero: a dark half carries the statement, paragraph, outline pill CTA and a ruled detail row, while the other half is a full-height photograph with a pill caption in its corner.
portfolio112
Editorial project index of ruled rows — padded numeral, project name, client and year, with a floating thumbnail revealed on hover.
testimonial35
A single dramatic pull-quote with a decorative mark, centered above a rounded avatar, name, and role.