Centered hero with three feature highlights displayed as icon cards with descriptions below the CTA. Perfect for platform and infrastructure products.
Centered hero with a headline, CTA buttons, and a row of icon-led feature cards beneath them, each card mapping to one of three built-in Lucide icons. Built for platform and infrastructure products that want a quick three-point pitch under the fold.
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/hero68"Base UI flavor
npx shadcn add "https://ui.beste.co/r-base/hero68"This installs the block to components/beste/block/hero68.tsx and the shadcn/ui badge and button components it depends on.
The installed file exports hero68Demo alongside the block: the exact props behind the preview above. Spread it to get a working hero in one line.
import { Hero68, hero68Demo } from "@/components/beste/block/hero68";
export default function Page() {
return <Hero68 {...hero68Demo} />;
}Then replace the demo with your own props. Written out, the same setup looks like this:
import { Hero68 } from "@/components/beste/block/hero68";
export default function Page() {
return (
<Hero68
badge={{ label: "Infrastructure", variant: "outline" }}
heading="Ship infrastructure that scales itself"
description="Provision, deploy, and monitor from a single dashboard built for growing teams."
buttons={[{ label: "Start Building", href: "/signup" }]}
features={[
{ icon: "zap", title: "Lightning Fast", description: "Global edge deploys in seconds" },
{ icon: "lock", title: "Secure by Default", description: "Zero-config encryption and audits" },
]}
/>
);
}| Prop | Type | Default | Description |
|---|---|---|---|
badge | { label: string; variant?: "default" | "secondary" | "outline" } | – | Badge above the heading |
heading | string | – | Main headline |
description | string | – | Supporting paragraph |
buttons | ButtonItem[] | [] | CTA buttons below the description |
features | FeatureCard[] | [] | Icon cards row below the CTA buttons |
className | string | – | Extra classes for the outer <section> |
type ButtonItem = {
label: string;
href?: string;
variant?: "default" | "secondary" | "outline" | "ghost";
};
type FeatureCard = {
icon: "layers" | "lock" | "zap";
title: string;
description: string;
};icon is a closed three-value enum mapped to Lucide icons through an internal iconMap (layers, lock, zap). There is no fallback icon, so any other string would resolve to undefined and fail to render.flex-wrap row capped at max-w-3xl rather than a CSS grid, so with the demo's 3 items they sit on one line at md and stack on mobile; extra items simply wrap onto additional rows.lg:text-6xl, one step larger than the md:text-5xl cap used in most other heroes in this registry.hero7
Centered hero with optional badge, heading, description, dual action buttons, and a featured image below. Perfect for product launches and landing pages.
hero36
Centered hero with gradient-highlighted heading text and trusted-by logo cloud below CTA buttons. Perfect for B2B SaaS and enterprise products.
hero122
Centered typographic hero on a muted card with an oversized heading, inline CTA, and a bottom monospace meta row of three labels.
hero144
A centered hero with an eyebrow pill, a large light heading, a supporting paragraph, two accent buttons, and a wide image tile below that floats a live product micro-asset.
hero120
Centered editorial hero with eyebrow, large heading, description, dual dark and outline CTAs, and a wide 16:9 image with a mono caption below.
hero71
Centered hero with prominent price display, period label, and horizontal feature checklist. Perfect for freemium products and pricing-focused landing pages.