Skip to content
shadcn.io

shadcn.io is not affiliated with official shadcn/ui

Weekly Breakdown Bar Chart Stats Block for React

A week of screen time as seven cells in one band from rail to rail, each with the day, its time and a meter that fills from the foot, the lightest day marked with a badge; seven rows with horizontal meters on a phone.

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 weekly breakdown for React with Base UI. A start-aligned header names the lightest day of the week and its time, with the week total and the daily average at the end of the row. Under it the week is seven cells in one band that runs from rail to rail and ends the block: each cell has the weekday, the time as hours and minutes, and a meter that fills from the foot up to a full meter of seven hours. The lightest day carries an outline badge and a full-weight meter; the others are drawn at 35%. Below lg the seven cells become seven rows and the meters lie down, filling from the start. Every time, meter and total is computed from one list of daily minutes. The meters are CSS boxes in your theme's foreground colour, and the badge is the catalog's. For screen-time, usage and activity reports, between a hero and pricing.

FAQ

How do I change the days, the scale and the badge?

Edit DAYS (a name and the minutes for each day) and CEILING, the number of minutes a full meter stands for. The badge goes to whichever day has the fewest minutes; for a "busiest day" report, change LIGHTEST to Math.max and the badge's words to match. The times, the week total and average and the headline are computed from DAYS.

How do the two meters work?

Each cell draws one fill for a phone and one for lg and wider, from the same share, and shows only one of them: a horizontal fill from the start on a phone, a vertical fill from the foot from lg. Both are decorative and hidden from assistive technology, because the time is written in the cell. The meter box is left to right, so the fill starts at the same side in right-to-left pages.

Is it accessible?

The week is a list: each item reads the weekday, its time and, for the lightest day, the badge ("Thursday, 2h 48m, Lightest day"). The times sit in bdi elements, so a right-to-left page keeps "2h 48m" in order. The week total and average are a description list in the header.

Why is there no line under the band?

The band ends the block. The next section draws its own top rule along the band's foot, so a bottom border here would double it, and the column has no bottom padding for the same reason. The band's top rule, with a + on each rail, comes from the Guides component.

What moves, and what happens with reduced motion?

The header and the band fade up once when the page loads, with a CSS transition. With reduced motion the transition is off and everything simply appears. The meters themselves don't animate.

How does it fit on a phone?

Below lg the cells stack as seven rows of day, meter and time, each row a hairline apart; the lightest day's badge sits under its name. The padding steps down and nothing scrolls sideways at 320 pixels.

  • Pro

    Seven weekday columns for a gym's check-ins in a card in card, the busiest day drawn in full and the others at 30%, with the count above each column and a one-line takeaway under the axis.

  • Pro

    Connected KPI Bar Stats

    KPI bands and tiles

    Four headline figures for a subscription analytics tool in cells that share their hairlines from rail to rail, each with its change on the month before and a tiny sparkline of the last twelve months.

  • Pro

    Fourteen daily bars against a labelled quota line in a framed chart, days at or above the quota solid and days below it outlined, with a two-cell band under it for days met and the average against the quota.

  • Pro

    Compact KPI Tile Grid Stats

    KPI bands and tiles

    Six dense KPI tiles for a café group in one hairline frame, with a Day, Week and Month switch that re-reads all six figures and rolls their digits.

  • 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

    An asymmetric band of four figures for a property-management tool: one double-width hero cell for rent collected and three small cells for occupancy, arrears and renewals, each with its change on the month before.