Split Panel About
A full-bleed two-column about section: one half is an inverted dark statement panel with a CTA, the other half is a light photo with a facts grid beneath it. No rounded card, no shared background, the seam between the two halves is the whole point.
Docs
Installation
A real shadcn registry command, not a copy-paste stand-in: it fetches this block plus its button, media-slot dependencies and any missing npm packages, and installs them straight into your project.
npx shadcn add https://staaarter.com/r/split-panel-about.jsonPrefer not to use the CLI? Copy the source from the Code toggle above into src/components/blocks/about/about47.tsx instead.
Usage
The file also exports about47Demo, the exact props behind the preview above. Spread it to get a working section in one line, then replace it with your own data.
import { About47, about47Demo } from "@/components/blocks/about/about47"; export default function Page() { return <About47 {...about47Demo} />; }
Props
| Prop | Type | Default | Description |
|---|---|---|---|
| eyebrow | string | undefined | Small label above the heading on the dark panel. |
| heading | string | none | Heading on the dark statement panel. |
| statement | string | none | Body paragraph on the dark statement panel. |
| buttons | ButtonItem[] | [] | CTA buttons on the dark panel; default variant "secondary" so they stay legible against the inverted background. |
| image | MediaSlotImage | undefined | Photo filling the top of the light panel. |
| facts | FactItem[] | [] | Label/value pairs in a 2-column grid below the photo. |
| className | string | none | Extra classes for the outer section element. |
Types
type FactItem = { label: string; value: string }; type ButtonItem = { label: string; href?: string; variant?: "default" | "secondary" | "outline" | "ghost" | "link" | "destructive"; };
Behavior notes
- Unlike About5's image-and-text split, both halves here stay full-bleed with no shared max-width container or rounded corners; the two panels butt directly against each other so the light/dark seam reads as a hard edge, not a card.
- The left panel always uses bg-foreground/text-background (an inverted token pairing), not a literal dark color, so it flips correctly if the site's theme itself changes; About49's dark panel is a contained rounded card rather than a full half-height panel.
- buttons default to variant "secondary" instead of the "default" convention used by About1 and About14, since "default" (bg-primary) can read low-contrast against an inverted panel depending on the palette.
More About Blocks
View all →team-mission
Team & Mission
Two-column about section with mission statement, company stats, and team member grid.
values-with-team-photo
Values with Team Photo
Full-width photo with a three-column values grid below.
timeline-milestones
Timeline & Milestones
Company stats on the left and a vertical timeline of milestones on the right.
founder-quote-team
Founder Quote & Team
Founder blockquote with avatar, followed by a horizontal team member row.
image-text-split
Image & Text Split
Tall image on the left, company story, inline stats, and CTAs on the right.
numbered-principles
Numbered Principles
Heading on the left and numbered company principles on the right.