Calendar.
Dates with predictable keyboard navigation and clear selection.
| Mo | Tu | We | Th | Fr | Sa | Su |
|---|---|---|---|---|---|---|
Selected 13/10/2026
Install the source
npx shadcn@latest add https://ui.bld8.dev/r/calendar.jsonUsage
<Calendar label="Review date" value={date} onValueChange={setDate}
minDate={new Date(2026,9,5)} />
<Calendar mode="range" value={range} onValueChange={setRange} />In the workspace or ZIP starter, import components from @bld8/ui and include @bld8/ui/styles.css once. Registry installations use your local bld8/ source path. Wrap overlays in UIProvider.
API & behaviour
Styled React DayPicker 10.0.2, using the shared light/dark tokens. Controlled single-date or range selection, defaultMonth, minDate/maxDate, locale, weekStartsOn and disabled. Arrow/Home/End/PageUp/PageDown navigation is maintained upstream. Values are local Date objects; use formatDateValue for date-only YYYY-MM-DD values. No time or timezone scheduling is implied.
Notes to self
Test this component with real content, keyboard input and both themes. The example is a starting point; labels, error handling and behaviour still need to fit the application.