ActivityHeatmap

GitHub-style weekly activity grid. Renders the last N weeks as Mon–Sun columns with quartile-based opacity per cell.

Preview

Usage

import { ActivityHeatmap } from '@ramtt/ui'

<ActivityHeatmap
  data={[{ date: '2026-04-15', value: 3 }, { date: '2026-04-16', value: 1 }]}
  weeks={26}
  showDayLabels
  showMonthLabels
/>

Props

PropTypeDefaultDescription
data*HeatmapDataPoint[]ISO date + numeric value per day
weeksnumber26Number of week columns to render
colorstring'var(--chart-1)'Base cell color (opacity scales by quartile)
emptyColorstring'var(--n200)'Color for zero-activity cells
showDayLabelsbooleanfalseRender Mon/Wed/Fri labels on the left
showMonthLabelsbooleanfalseRender month labels above the grid
onCellHover(point: HeatmapDataPoint | null) => voidHover callback