Staaarter

Process Timeline with Duration Badges

A feature section showing a sequence of process steps, each with an icon in a circle, a title, a description, and a duration badge. A connecting line runs between steps. The layout is vertical (stacked, line on the left) by default and switches to horizontal (line across the top, centered content) at the lg breakpoint, a pure CSS flex-direction change.

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 dependencies and any missing npm packages, and installs them straight into your project.

npx shadcn add https://staaarter.com/r/process-timeline-duration-badges.json

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

Usage

The file also exports feature161Demo, 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 { Feature161, feature161Demo } from "@/components/blocks/feature/feature161";

export default function Page() {
  return <Feature161 {...feature161Demo} />;
}

Props

PropTypeDefaultDescription
eyebrowstringundefinedSmall label above the heading.
headingstringnoneSection heading.
descriptionstringundefinedSupporting paragraph under the heading.
stepsFeature161Step[]noneSequential steps, each with an icon, title, description, and duration badge.
classNamestringnoneExtra classes for the outer section element.

Types

interface Feature161Step {
  icon: LucideIcon;
  title: string;
  description: string;
  duration: string;
}

Behavior notes

  • Fully static Server Component, no client-side state.
  • Responsive layout is CSS-only: flex-col on mobile (vertical timeline, connector line on the left of each step) switches to lg:flex-row (horizontal timeline, connector line across the top, centered text) at the lg breakpoint via Tailwind responsive classes, no JS measurement or resize listener involved.
  • The connector line between steps is a plain absolutely-positioned div (aria-hidden), skipped after the last step.