Measured entry

shadcn-block-calendar-15

calendarminimal-flat

A client-side, single-date calendar that displays week numbers and keeps the selected day in React state. It ships as a shadcn registry block layered on the shadcn Calendar and Button components, with Tailwind theme classes, a cn utility, React DayPicker, date-fns, Lucide icons, and Radix Slot in the dependency chain.

Specimen
Harness screenshot of shadcn-block-calendar-15 at 375 pixels wide
Harness screenshot at 375 pixels wide. No horizontal overflow recorded.
Harness screenshot of shadcn-block-calendar-15 at 768 pixels wide
Harness screenshot at 768 pixels wide. No horizontal overflow recorded.
Harness screenshot of shadcn-block-calendar-15 at 1440 pixels wide
Harness screenshot at 1440 pixels wide. No horizontal overflow recorded.

Measured

Every value below was written by the harness on the run that produced the frames above. None of it is derived from the prose.

Harness measurements recorded for shadcn-block-calendar-15
BuildOK
MountOK
Console errors0
Uncaught page errors0
Horizontal overflowclean at 375, 768, 1440
Axe critical0
Axe serious0
Axe moderate1
Axe minor0
Gzip marginal50.8 KB (116.2 KB build, 65.4 KB baseline)
Bare modeFAIL
Provider requiredNO
Demo usednone

What the harness recorded

BARE BUILD

✗ Build failed in 35.55s
error during build:
[vite:load-fallback] Could not load <sandbox>/src/lib/utils (imported by src/components/ui/calendar.tsx): ENOENT: no such file or directory, open '<sandbox>/src/lib/utils'

Verdict

A focused choice for shadcn apps that need week-number date selection, and it builds, mounts, and stays within its viewport in the configured harness. It needs a shadcn-style setup; the bare project fails because the expected cn utility and component infrastructure are absent. Patch the table scope issue before release.

Use it if

  • You need an inline single-date picker with visible week numbers.
  • Your app already uses shadcn conventions, Tailwind theme tokens, and aliased component imports.
  • You want controlled selection state that can be connected to a form or filter.

Skip it if

  • You need date ranges, time selection, recurring events, or an agenda view without extending the block.
  • You want a lightweight native date field and do not want the DayPicker dependency chain.
  • Your release requires a clean accessibility audit before teams can patch the invalid table scope usage.

Install

Installation record for shadcn-block-calendar-15
Declared dependenciesreact-day-picker@latest, date-fns, @radix-ui/react-slot
Missing on installnone
Bare installfails once the shadcn-style helpers are removed, so it needs that setup
Providerno provider required in the harness

In a non-shadcn project, add React DayPicker, date-fns, Lucide React, and Radix Slot; provide the shadcn Button component and cn utility; configure the import alias; and supply the Tailwind utilities, theme tokens, and global styles used by the calendar. Mark the component as client-side where the framework requires it.

Source and credit

This page is a review, not a copy. The component source lives with its author and this site does not republish it. Read the license before you use anything.

Author repository

github.com/shadcn-ui/ui
License
MIT
Record published
2026-08-14

Alternatives

Other published entries for the calendar pattern, ordered by what they measured: mounts first, then clean axe scans, then bare-mode passes, then the smaller bundle.