Responsive grid of benefit items with checkmark icons and descriptions. Perfect for benefits list, value proposition, or key advantages.
A checklist-style grid of benefit items, each pairing a circular checkmark badge with a title and description, centered in a narrow column and capped with an optional CTA row.
Free block
This block is free. No license or account is required: install it with the CLI and use it in unlimited projects.
Radix flavor
npx shadcn add "https://ui.beste.co/r/feature146"Base UI flavor
npx shadcn add "https://ui.beste.co/r-base/feature146"This installs the block to components/beste/block/feature146.tsx and the badge and button shadcn/ui primitives it depends on.
The installed file exports feature146Demo alongside the block: the exact props behind the preview above. Spread it to get a working benefits list in one line.
import { Feature146, feature146Demo } from "@/components/beste/block/feature146";
export default function Page() {
return <Feature146 {...feature146Demo} />;
}Then replace the demo with your own props. Written out, the same setup looks like this:
import { Feature146 } from "@/components/beste/block/feature146";
export default function Page() {
return (
<Feature146
badge={{ label: "Benefits", variant: "secondary" }}
heading="Why choose us"
description="Key advantages of working with our platform."
benefits={[
{ title: "Save time", description: "Automate repetitive tasks and focus on what matters." },
{ title: "Reduce costs", description: "Cut operational expenses significantly." },
{ title: "Scale easily", description: "Grow without worrying about infrastructure." },
]}
buttons={[{ label: "See all benefits", href: "https://beste.co" }]}
/>
);
}| Prop | Type | Default | Description |
|---|---|---|---|
badge | { label: string; variant?: "default" | "secondary" | "outline" } | – | Optional eyebrow badge above the heading |
heading | string | – | Section heading |
description | string | – | Section intro text |
benefits | BenefitItem[] | [] | Benefit rows rendered in the grid |
buttons | ButtonItem[] | [] | Optional CTA row below the grid |
className | string | – | Extra classes for the outer <section> |
type BenefitItem = { title: string; description?: string };
type ButtonItem = {
label: string;
href?: string;
variant?: "default" | "secondary" | "outline" | "ghost" | "link" | "destructive";
};null when benefits is empty, so nothing renders at all without at least one benefit.benefits.length (1 stays single-column, 2 gets sm:grid-cols-2, a multiple of 3 gets md:grid-cols-3, a multiple of 4 gets lg:grid-cols-4, otherwise lg:grid-cols-3), but the resulting grid is additionally wrapped in mx-auto max-w-3xl, so even a wide column count stays narrower than the full section width.Check icon in a text-primary circle on bg-primary/10; only the title and description text vary per item, there is no per-item icon prop.feature108
Two-column layout with heading/description on left and 2x4 grid of checkmark benefits on right. Great for feature highlights, benefit summary, or quick value propositions.
feature116
2-column grid of checklist items with checkbox icons and strikethrough styling. Great for progress tracking, launch checklists, or task lists.
feature34
Two-column grid of numbered items (01, 02, etc.) with circular badges, titles, and descriptions. Perfect for why-choose-us sections, benefits lists, or key differentiators.
feature120
Responsive grid of category cards with icons and listing counts. Perfect for category browse, marketplace sections, or navigation options.
feature53
Expandable accordion sections with category headers and checkmark-style feature lists in a two-column grid. Perfect for organized feature overviews and pricing page inclusions.
feature22
Multi-step checklist with status indicators, ETAs, and a sticky sidebar showing completion progress and key stats. Perfect for onboarding flows, implementation guides, or setup wizards.