DayPicker is a React component for creating date pickers, calendars, and date inputs for web applications.
๐ See daypicker.dev for guides, examples and API reference.
- ๐ Extensive set of props for customizing the calendar.
- ๐จ Minimal design that can be easily styled with CSS or any CSS framework.
- ๐ Supports selections of single days, multiple days, ranges of days, or custom selections.
- ๐ Can be localized into any language and time zones.
- ๐ Support for ISO 8601 dates, Jalali, and broadcast calendar.
- ๐ฆฎ Complies with WCAG 2.1 AA requirements for accessibility.
- โ๏ธ Customizable components to extend the rendered elements.
- ๐ค Easy integration with input fields.
DayPicker is written in TypeScript and compiled to CommonJS and ESM. It relies on date-fns for date manipulation and formatting.
npm install react-day-picker
import { DayPicker } from "react-day-picker";
import "react-day-picker/style.css";
function MyDatePicker() {
const [selected, setSelected] = useState<Date>();
return (
<DayPicker
mode="single"
selected={selected}
onSelect={setSelected}
footer={
selected ? `Selected: ${selected.toLocaleDateString()}` : "Pick a day."
}
/>
);
}
DayPicker is compatible with React 16.8 and later.
DayPicker is released under the MIT License.
Ask for help and share your experience with DayPicker:
- ๐ฌ Discussion forums - Get support and provide feedback.
- ๐ชณ Report an issue - Report bugs or request features.
Consider supporting DayPicker's maintainer with a donation. Your support helps keep the project alive and up-to-date.
- ๐๏ธ Sponsor DayPicker on GitHub