A getting-started section with an eyebrow over a hairline rule, a two-column heading, three monospace-numbered steps under their own hairlines, and an accent button.
Static getting-started section with an eyebrow badge over a hairline rule, a two-column heading and description row, three monospace-numbered steps under their own hairlines, and a single accent CTA button. Purely presentational: no internal state, no step gating.
Pro blocks install through the shadcn CLI with your license key and ship their full source. Docs and live previews stay open to everyone, so you can read every block's details first.
Swap YOUR_EMAIL and YOUR_KEY for the email and license key on your account. Find your license key on your account page.
Radix flavor
npx shadcn add "https://ui.beste.co/r/onboarding31?email=YOUR_EMAIL&license_key=YOUR_KEY"Base UI flavor
npx shadcn add "https://ui.beste.co/r-base/onboarding31?email=YOUR_EMAIL&license_key=YOUR_KEY"This installs the block to components/beste/block/onboarding31.tsx, the badge23 and button21 components it renders (the eyebrow pill above the hairline rule and the accent CTA button), and its dependencies.
The installed file exports onboarding31Demo alongside the block: the exact props behind the preview above. Spread it to get a working getting-started section in one line.
import { Onboarding31, onboarding31Demo } from "@/components/beste/block/onboarding31";
export default function OnboardingPage() {
return <Onboarding31 {...onboarding31Demo} />;
}Then replace the demo with your own props. Written out, a trimmed setup looks like this:
import { Onboarding31 } from "@/components/beste/block/onboarding31";
export default function OnboardingPage() {
return (
<Onboarding31
badge={{ label: "Getting started" }}
heading="Live in three unhurried steps"
description="No implementation project, no month of meetings."
steps={[
{
title: "Bring your data across",
description: "Import members, appointments, and open invoices in a few clicks.",
},
{
title: "Shape it around your team",
description: "Set roles, connect billing, and turn on the parts you need.",
},
{
title: "Open the doors",
description: "Invite the team and publish your booking page.",
},
]}
button={{ label: "Start your setup", href: "https://beste.co" }}
/>
);
}| Prop | Type | Default | Description |
|---|---|---|---|
badge | Badge | – | Eyebrow pill rendered above the hairline rule |
heading | string | – | Left column headline |
description | string | – | Right-aligned (on desktop) supporting copy |
steps | Step[] | [] | Ordered, numbered step cards |
button | ActionLink | – | Single CTA rendered below the steps |
className | string | – | Extra classes for the outer <section> |
type Badge = { label: string };
type ActionLink = { label: string; href: string };
type Step = { title: string; description: string };steps, badge, and button render directly from props, so there's no wizard progression, no step gating, and no per-step interactivity, this is a static "how it works" section rather than a live onboarding flow.String(index + 1).padStart(2, "0")) rather than any id/step field on each item, so reordering the steps array automatically renumbers the printed "01", "02", "03" labels.md:justify-end) while the heading stays left-aligned, splitting the row into a wide headline and a shorter blurb.Button21 is composed with asChild and an empty <Link href={button.href} /> (no children on the Link); the button's visible label comes from Button21's own label prop, not from anything rendered inside the link.onboarding5
Multi-step progress indicator with numbered circles connected by a progress line. Perfect for account setup wizards that show users their completion status.
onboarding6
Vertical timeline layout with step indicators, descriptions, and a connecting progress line. Perfect for workspace setup flows with detailed step explanations.
onboarding10
Interactive accordion layout where each step expands to reveal detailed instructions and action buttons. Perfect for setup guides that let users complete tasks at their own pace.
onboarding8
Interactive form wizard with segmented progress bar, form fields, and back/next navigation. Perfect for account registration flows collecting user and company information.
onboarding9
Animated step wizard with square numbered indicators and content cards for each step. Perfect for product walkthroughs that guide users through key features.
onboarding17
Onboarding screen where users pick their primary goal to receive a tailored onboarding path. Each goal card shows a recommended feature set. Perfect for multi-purpose platforms.