Skip to content
shadcn.io

shadcn.io is not affiliated with official shadcn/ui

Dense Checklist Progress Stats Block for React

A dense onboarding checklist for a customer-success tool, ten steps in a three-part row beside a summary of how far new accounts get.

Framework
UI library

Preview

Preview width

Installation

Part of Pro
Pro unlocks the code and one-line install of every Pro button and text effect, plus the MCP for your AI editor.
Have Pro already? Sign in to open it.Opens here as soon as you're Pro.

Overview

A dense checklist for React with Base UI. Setupmoor, an onboarding guide, puts a short summary of this week's cohort beside ten steps. Each step is three parts on one line: the name, a hairline Progress bar and the percent of accounts that finished it. The heading's "52%" is the cohort's average across those steps, and the three facts (accounts, steps, how many every account has finished) are read from the same STEPS array. From lg a divider splits the summary from the list and meets the top rule; on a smaller screen the summary comes first. The block has no state: it's Guides, Progress and a CSS transition on the summary. For the numbers section of a customer-success or product-led page.

FAQ

How do I change the steps?

Edit ACCOUNTS and STEPS at the top of the file. Each step is a label and a done count, out of ACCOUNTS. The percent, the bar and its accessible name are computed from those. Keep the labels short: the name column is eight rems, and a longer one truncates.

Where does the heading's percent come from?

It is the sum of every step's done, divided by the accounts times the number of steps, rounded. It is not a number typed beside the data. The "All finished" fact counts steps where done has reached ACCOUNTS. One step in the sample is there, Workspace, so the fact reads 1.

Why isn't the checklist in its own card?

The list is the narrow panel: max-w-2xl, ten rows at py-2.5, divided by hairlines. The block's line is the split, not a second frame. From lg the list's column draws a start border, with a + where that border meets the top rule. Below lg a top rule separates the summary from the list.

Is the checklist accessible?

Yes. The facts and the steps are description lists. Each fact's label is read before its number, even though the number is drawn above it. Each bar is a progressbar named with the step and how many accounts finished it, so "89%" in the row and the bar agree. Values sit in bdi.

What happens on a phone?

The summary is first in the markup, so the heading and the three facts come before the ten rows. The rows stay three columns: a short name, the hairline, the percent. The hairline is the catalog's default height, thinner than the bars in the milestone list.

What moves?

The summary fades up once. The ten rows do not: on a phone they run past the first screen, and a fade there would be caught half way. With reduced motion the summary simply appears. The bars don't grow in.

  • Pro

    Progress Bar List Stats

    Goals and progress

    Six launch milestones in one hairline frame, each with its owner and due week, its count against the target, the percentage and a Progress bar, under a headline that counts the milestones done.

  • Pro

    Quota attainment for a regional sales team, three regions in an accordion whose trigger shows the rolled-up bar and whose panel lists each territory.

  • Pro

    Cloud capacity for an infrastructure team, resource bars whose fill weight steps at 70 and 90, with a status mark on anything past 90.

  • Pro

    Rep Attainment Table Stats

    Goals and progress

    A quota table for a sales team, each rep's attainment bar beside a badge for the change on last week.

  • Pro

    Quota Tile Grid Stats

    Goals and progress

    Six plan-quota tiles (seats, API calls, storage, projects, bandwidth, builds) with used against limit, a bar, what is left and a reset hint in days; a tile at 90% or more gets a solid bar and an Upgrade link badge.

  • Pro

    Goal Target Tile Grid Stats

    Goals and progress

    Four regional goal tiles for a sales team, each a count of targets met and a bar of five segments, solid for met, outlined for the next, with a hint row that names the next market and its value.