Skip to content
shadcn.io

shadcn.io is not affiliated with official shadcn/ui

Shadcn Date Picker for React and Tailwind

Input with a built-in calendar.

Installation

bunx --bun shadcn@latest add https://kit.dev/r/date-picker.json

Anatomy

DatePickerRoot
├── DatePickerClearTrigger
├── DatePickerContent
│   └── DatePickerPositioner
├── DatePickerLabel
├── DatePickerMonthSelect
├── DatePickerNextTrigger
├── DatePickerPresetTrigger
├── DatePickerPrevTrigger
├── DatePickerRangeText
├── DatePickerTable
│   ├── DatePickerTableBody
│   ├── DatePickerTableCell
│   │   └── DatePickerTableCellTrigger
│   ├── DatePickerTableHead
│   ├── DatePickerTableHeader
│   └── DatePickerTableRow
├── DatePickerView
│   ├── DatePickerViewControl
│   └── DatePickerViewTrigger
└── DatePickerYearSelect

Usage

import { CalendarIcon } from "lucide-react";
import { Button } from "@/components/ui/button";
import {
  CalendarMonthSelect,
  CalendarNextTrigger,
  CalendarPrevTrigger,
  CalendarTable,
  CalendarTableDays,
  CalendarViewControl,
  CalendarWeekDays,
  CalendarYearSelect,
} from "@/components/ui/calendar";
import {
  DatePicker,
  DatePickerContent,
  DatePickerTrigger,
  DatePickerValue,
} from "@/components/ui/date-picker";
<DatePicker>
  <DatePickerTrigger asChild>
    <Button className="min-w-56" variant="outline">
      <CalendarIcon />
      <DatePickerValue placeholder="Pick a date" />
    </Button>
  </DatePickerTrigger>
  <DatePickerContent>
    <CalendarViewControl>
      <CalendarPrevTrigger />
      <CalendarMonthSelect />
      <CalendarYearSelect />
      <CalendarNextTrigger />
    </CalendarViewControl>
    <CalendarTable>
      <CalendarWeekDays />
      <CalendarTableDays />
    </CalendarTable>
  </DatePickerContent>
</DatePicker>

Accessibility

KeyDescription
Enter
Activate the focused control.
Space
Activate the focused control.

Demos

Custom Format

Input

Range

Time

With Presets

API Reference

DatePicker

PropType
AttributeType

DatePickerContent

div

PropType
AttributeType
CSS variableType

DatePickerInput

div

PropType
AttributeType

DatePickerInput

input

PropType
AttributeType

DatePickerPositioner

div

PropType
AttributeType
CSS variableType

DatePickerPresetTrigger

button

PropType
AttributeType

DatePickerTrigger

button

PropType
AttributeType

DatePickerTimer

PropType
AttributeType

DatePickerValue

span

PropType
AttributeType

useDatePicker

PropType