Two-column card with text content, bullet list, and CTA buttons alongside a full-height image. Perfect for feature highlights or promotional sections.
Single two-column card, not a grid of many: one side carries a badge, heading, description, dot-bulleted list, and CTA buttons, the other side is a full-height image. The image side can be flipped to either edge of the card.
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/usecase10"Base UI flavor
npx shadcn add "https://ui.beste.co/r-base/usecase10"This installs the block to components/beste/block/usecase10.tsx and the badge and button shadcn/ui primitives it depends on.
The installed file exports usecase10Demo alongside the block: the exact props behind the preview above. Spread it to get a working section in one line.
import { UseCase10, usecase10Demo } from "@/components/beste/block/usecase10";
export default function Page() {
return <UseCase10 {...usecase10Demo} />;
}Then replace the demo with your own props. Written out, the same setup looks like this:
import { Calendar } from "lucide-react";
import { UseCase10 } from "@/components/beste/block/usecase10";
export default function Page() {
return (
<UseCase10
badge={{ label: "Private Events", icon: <Calendar className="size-3.5" />, variant: "outline" }}
heading="Celebrate With Us"
description="From intimate dinners to corporate gatherings, our private room offers seclusion for groups up to 40."
listItems={[
{ id: "item-1", text: "Custom Menus" },
{ id: "item-2", text: "Dedicated Sommelier" },
]}
buttons={[{ id: "btn-1", label: "Inquire for Events", href: "https://beste.co" }]}
image={{ src: "https://images.unsplash.com/photo-1517248135467-4c7edcad34c4", alt: "Private Dining" }}
imagePosition="left"
/>
);
}| Prop | Type | Default | Description |
|---|---|---|---|
badge | { label: string; icon?: React.ReactNode; variant?: "default" | "secondary" | "outline" } | – | Pill above the heading; omitted when badge.label is falsy |
heading | string | – | Card heading |
description | string | – | Card body text |
listItems | ListItem[] | – | Dot-bulleted list under the description |
buttons | ButtonItem[] | – | CTA buttons under the list |
image | { src: string; alt: string } | – | Full-height image filling the other column |
imagePosition | "left" | "right" | "right" | Which side of the card the image column sits on |
className | string | – | Extra classes for the outer <section> |
type ListItem = { id: string; text: string };
type ButtonItem = {
id: string;
label: string;
href?: string;
variant?: "default" | "secondary" | "outline" | "ghost" | "link";
};imagePosition is implemented with md:flex-row-reverse on the row when set to "left"; below md content and image always stack content-first regardless of the prop.buttons defaults to variant="default" and every subsequent button defaults to "outline" unless it sets its own variant, so an unstyled two-button array automatically reads as one primary and one secondary action.Button asChild wrapping a next/link, with href ?? "#" as the fallback target when a button omits href.image is omitted, that column renders as a bare bg-muted panel with nothing inside it.bg-card panel with rounded-lg overflow-hidden shadow-lg, distinguishing it from the borderless, full-width layout of the other usecase blocks in this set.usecase37
Two-column grid of feature cards with icons, extended descriptions, and bullet point highlights. Perfect for comprehensive product feature or capability explanations.
usecase41
A use-case section with an eyebrow over a hairline rule, a two-column heading, and three bordered role cards with an icon chip, a monospace role label, a title, a description, and an arrow link.
usecase2
Responsive grid of use case cards with hover effects, images, descriptions, and feature checklists. Perfect for displaying solutions for different industries or customer segments.
usecase22
Asymmetric layout with large featured card in center flanked by smaller feature cards on both sides. Perfect for highlighting a primary feature alongside supporting capabilities.
usecase17
Card grid with background images that reveals detailed content on hover via smooth slide-up animation. Perfect for destination showcases or visual feature galleries.
usecase14
Segmented control style tabs with split layout showing image, description, and bullet point features. Perfect for comparing solution approaches or product capabilities.