Basic Date Range Picker
Pop-up calendar for picking start and end dates.
Data feedback
DatePicker popup for selecting start and end date ranges.
pnpm add @quinkit/ui react-day-pickerimport { DateRangePicker } from "@quinkit/ui";Required packages
Powers Calendar and DateRangePicker. Add these packages before using this component:
@quinkit/uireact-day-pickerInstall command is shown above. Without the peer package, imports will fail at build time.
Live previews · code · themes · viewport · dark mode
Pop-up calendar for picking start and end dates.
Preset shortcuts alongside calendar range selector.
Date range picker integrated within a standard form.
Non-interactive date range picker.
Analytics report export date range container.
DateRangePicker is a popover-anchored date range selector composed from Popover and Calendar. It provides a clean trigger button displaying formatted date ranges, a clear button action, and a dual-month calendar grid.
pnpm add @quinkit/ui react-day-pickerreact-day-picker is a required peer dependency for DateRangePicker (and Calendar).
### Basic Usage
import { useState } from "react";
import { DateRangePicker, type DateRange } from "@quinkit/ui";
export function DateRangePickerDemo() {
const [range, setRange] = useState<DateRange | undefined>({
from: new Date(),
to: new Date(Date.now() + 7 * 24 * 60 * 60 * 1000)
});
return <DateRangePicker value={range} onChange={setRange} />;
}| Prop | Type | Default | Description |
|---|---|---|---|
value | DateRange | undefined | Selected start (from) and end (to) dates. |
onChange | (range: DateRange | undefined) => void | undefined | Callback fired when range changes. |
placeholder | string | "Pick a date range" | Trigger text when no range is selected. |
className | string | undefined | Additional class names for container. |
aria-expanded and aria-haspopup.aria-label.DateRangePicker adheres to WAI-ARIA design patterns for accessible web components.
Keyboard Navigation
Tab / Shift + Tab — Focuses control and moves between interactive elements.Space / Enter — Triggers action or toggles selection.Escape — Closes open popovers, overlays, or dropdown menus.ARIA Standards
aria-* attributes.ring-ring) visible in both light & dark mode.Add a shadcn-compatible bridge file to your project that re-exports from @quinkit/ui.
npx shadcn@latest add https://quinkit-ui.vercel.app/r/date-range-picker.json