Bento Feature Cards
A bento-style feature grid: three square cards in the top row, two wider cards in the row below. Every card's image sits flush against the card's edges with no padding, and only the text block below it is inset.
Docs
Installation
A real shadcn registry command, not a copy-paste stand-in: it fetches this block plus its media-slot dependencies and any missing npm packages, and installs them straight into your project.
npx shadcn add https://staaarter.com/r/bento-feature-cards.jsonPrefer not to use the CLI? Copy the source from the Code toggle above into src/components/blocks/feature/feature92.tsx instead.
Usage
The file also exports feature92Demo, 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 { Feature92, feature92Demo } from "@/components/blocks/feature/feature92"; export default function Page() { return <Feature92 {...feature92Demo} />; }
Props
| Prop | Type | Default | Description |
|---|---|---|---|
| eyebrow | string | none | Small label above the heading. |
| heading | ReactNode | none | Section heading. |
| description | string | none | Supporting copy under the heading. |
| cards | BentoCard[] | none | Exactly five cards: the first three fill the top row, the last two fill the bottom row. |
| className | string | none | Extra classes for the outer section element. |
Types
type BentoCard = { title: string; description: string; image: MediaSlotImage; };
Behavior notes
- Fully static server component, no client-side state.
- Expects exactly 5 cards (array positions 0-2 in the 3-column top row, 3-4 in the 2-column bottom row); extra items beyond index 4 are ignored and fewer than 5 leaves a gap, since this is a fixed bento layout rather than a generic wrapping grid.
- Media tiles are flush (no card padding) via a dedicated `div` wrapper; the title/description sit in a separately padded block below the image.
More Feature Blocks
View all →Full-Bleed Workspace Band
Two-column header above a full-bleed image band with a live view switcher, closing on three numbered captions.
Center-Line Journey Timeline
Vertical hairline timeline alternating stages either side, dropping a phone frame on one step.
Figure-Led Evidence Rows
Tall image with a floating before-and-after card, leading into oversized-figure evidence rows.
Staircase Asset Trio
Three image tiles stepping down the page in a staircase, each floating a different live asset.
Sticky Reference List
Sticky heading column beside three labelled groups of checked capabilities, closing on a footnote.
Day Timeline Rows
Hairline rows walking through one working day, stamped with time and a live approval card inline.