Skip to main content




  • fixed: missing dropdown_year CSS class in YearsDropdown by @pwolfert in #1466
  • fixed: Maximum update depth exceeded when select the range date by @gpbl in #1470


  • fixed: exclude internal modifiers from the styles props (modifiersStyles should be used instead) by @gpbl in e1449eaa
  • fixed: better typings for the props returned by useInput by @gpbl in 3ea6728b

In the rare cases you are using an invalid key to the styles prop, you may get type errors when upgrading to this release. Just remove the invalid lines from the value of styles, as they weren't working anyway. See issue #1464.


  • changed: use aria-disabled instead of disabled attribute in buttons (#1451)
  • fixed: focus navigation breaks with disabled days (#1451)


  • changed: add src directory to the package for better source maps


  • fix: toMonth prop to include the full month (#1429)
  • changed: better date-fns import should improve tree-shaking (#1436)
  • changed: removed browser entry in package.json (#1436)


  • new: added weekStartsOn prop (#1422)
  • new: split the Caption components into CaptionDropdowns and CaptionNavigation components. This change should make easier to customize the caption. (#1426)


  • changed: added React 18 to the peer dependencies


This version introduces breaking changes and it is mostly incompatible with v7. See the redesigned website for more details.

Notable changes

  • native TypeScript support
  • selection modes: single, multiple, range
  • added date-fns library as peer dependecy
  • replaced DayPickerInput component with useInput hook
  • improved ARIA support

See also: ➡️ Upgrading from v7.

Older changelog

See /v7/ for the changelog of versions before 8.