Staaarter

Feature with Numbered Process Steps and CTA Card

A centered header sits above a 4-step numbered process row, connected by arrows between cards on desktop, followed by a wide CTA card combining a badge, heading, description, button, and image. Good for a 'how it works' section that ends on a direct call to action.

By Staaarter Team
Feature
Docs
Live preview

Docs

Installation

A real shadcn registry command, not a copy-paste stand-in: it fetches this block plus its badge, button, media-slot dependencies and any missing npm packages, and installs them straight into your project.

npx shadcn add https://staaarter.com/r/feature-numbered-steps-cta-card.json

Prefer not to use the CLI? Copy the source from the Code toggle above into src/components/blocks/feature/feature66.tsx instead.

Usage

The file also exports feature66Demo, 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 { Feature66, feature66Demo } from "@/components/blocks/feature/feature66";

export default function Page() {
  return <Feature66 {...feature66Demo} />;
}

Props

PropTypeDefaultDescription
badgestringundefinedSmall centered label above the heading.
headingReactNodenoneCentered section heading.
descriptionstringundefinedCentered supporting paragraph.
stepsFeature66Step[]noneNumbered process steps rendered in order, left to right.
ctaCardFeature66CtaCardnoneWide card below the steps with its own badge, heading, description, button, and image.
classNamestringnoneExtra classes for the outer section element.

Types

interface Feature66Step {
  title: string;
  description: string;
}

interface Feature66CtaCard {
  badge?: string;
  heading: string;
  description?: string;
  buttonLabel: string;
  buttonHref: string;
  image: MediaSlotImage;
}

Behavior notes

  • Fully static Server Component: no event handlers, no client state.
  • The arrow connectors between step cards are `hidden lg:block` decorative icons absolutely positioned between cards; they never appear on the 1- or 2-column mobile/tablet layout.
  • The CTA card's button renders as a real Next.js Link via the button's render prop, but has no destination behavior beyond navigating to whatever href you supply.