Company story with image, border-accented feature highlights, and stats row. Great for craft, heritage, and product-focused brands.
Centered header followed by a story split (image beside a large pull quote paragraph), a two-column grid of border-accented feature highlights, and a stats panel on a muted background. Built for craft, heritage, and product-focused brands with a longer founding narrative to tell.
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.
Radix flavor
npx shadcn add "https://ui.beste.co/r/about24?email=YOUR_EMAIL&license_key=YOUR_KEY"Base UI flavor
npx shadcn add "https://ui.beste.co/r-base/about24?email=YOUR_EMAIL&license_key=YOUR_KEY"This installs the block to components/beste/block/about24.tsx and the badge and button shadcn/ui primitives it depends on.
The installed file exports about24Demo alongside the block: the exact props behind the preview above. Spread it to get a working about section in one line.
import { About24, about24Demo } from "@/components/beste/block/about24";
export default function AboutPage() {
return <About24 {...about24Demo} />;
}Then replace the demo with your own props. Written out, a trimmed setup looks like this:
import { About24 } from "@/components/beste/block/about24";
export default function AboutPage() {
return (
<About24
badge={{ label: "Since 1987", variant: "secondary" }}
heading="Crafting dreams on the open water"
description="Three decades of custom sailing yachts built without compromise."
image={{
src: "https://images.unsplash.com/photo-1540946485063-a40da27545f8?w=800&h=600&fit=crop",
alt: "Luxury sailing yacht on the ocean",
}}
story="Founded on the rugged coast of Maine, our yard combines traditional craftsmanship with modern naval architecture."
features={[
{ title: "Custom Design", description: "Every yacht begins as a conversation." },
{ title: "Master Craftsmanship", description: "Hand-laid carbon and teak interiors." },
]}
stats={[
{ value: "35+", label: "Years of Heritage" },
{ value: "500+", label: "Yachts Delivered" },
]}
buttons={[{ label: "Schedule a Visit", href: "https://beste.co" }]}
/>
);
}| Prop | Type | Default | Description |
|---|---|---|---|
badge | { label: string; variant?: "default" | "secondary" | "outline" } | – | Eyebrow badge above the heading |
heading | string | – | Centered section heading |
description | string | – | Centered lead paragraph under the heading |
image | { src: string; alt: string } | – | Photo beside the story paragraph |
story | string | – | Large founding-story paragraph next to the image |
features | FeatureItem[] | [] | Border-accented highlight cards below the story |
stats | StatItem[] | [] | Stat cards on a muted panel below the features |
buttons | ButtonItem[] | [] | Centered CTA row at the bottom |
className | string | – | Extra classes for the outer <section> |
type FeatureItem = { title: string; description: string };
type StatItem = { value: string; label: string };
type ButtonItem = {
label: string;
href?: string;
variant?: "default" | "secondary" | "outline" | "ghost" | "link" | "destructive";
};(image || story), features.length > 0, stats.length > 0 guards), so any of the three sections can be omitted independently.sm:grid-cols-2 layout regardless of how many features are supplied; it does not switch to 3 or 4 columns for larger sets.border-l-2 border-primary pl-4), not bordered boxes, so they read as an inline list rather than discrete cards.grid-cols-2 sm:grid-cols-4 grid on a bg-muted/50 rounded panel, centered text per stat.story text contains a literal em dash ("...carries that philosophy forward — combining traditional craftsmanship...") reproduced here exactly as it appears in the source.about23
Two-column layout with company story, stats, and leadership quote on the left, team photo and avatar row on the right.
about13
Asymmetric layout with company story and image on the left, and a vertical list of company details on the right. Great for press and investor pages.
about19
Full company overview with panoramic image, story paragraph, key facts list, leadership quote, and stats row. A rich, multi-section layout for company landing pages.
about3
Two-column layout with company stats on the left and a vertical timeline of milestones on the right. Ideal for company history and growth stories.
about20
Wide team photo, member list with avatars, team stats grid, and a culture quote. A rich team showcase layout.
about14
Horizontal stats row at the top followed by a centered story card with heading, body text, and CTAs.