Skip to content
shadcn.io

shadcn.io is not affiliated with official shadcn/ui

Date Picker examples · Standard

Date Picker with Custom Select Day Style for React

A date picker with round days that highlights booked dates in bold.

Framework
UI library

A Date Picker whose days are circles, with three booked days of the current month shaded in the warning color and set in bold. The days are rendered by the example instead of the default table body, so each one can take its own classes. Use it to mark holidays, deadlines or days that are already full.

Preview

Preview width

Installation

Sign in to get your install command
Free with an account. It carries your token, so the CLI installs everything in one go.

FAQ

How are the booked days styled?

The example renders the month's weeks itself and gives each day cell rounded-full, plus bg-warning/20 font-bold text-warning-foreground when the day is in the booked list. The selected day keeps the primary fill.

Which days are booked?

The 6th, 14th and 25th of the current month, built once when the module loads. Replace the list with dates from your data.

Can a booked day still be picked?

Yes, the styling doesn't change behavior. To block those days, return true for them from isDateUnavailable, as the disabled dates example does.

What does the button say?

The selected date in long form, such as October 10, 2026, or Pick a date when nothing is selected. The button prints the value itself, formatted with Intl.DateTimeFormat, so the text needs no date library.

Does the highlight follow the theme?

Yes. The colors are the warning tokens, so they change with your theme and in dark mode.

Do screen readers hear that a day is booked?

No, the highlight is visual only. Add the information in text near the picker, or block the days with isDateUnavailable so they're announced as unavailable.