Day.js is a minimalist JavaScript date-time library for parsing, validating, manipulating, and displaying dates and times in modern browsers. It is designed as a fast 2kB alternative to Moment.js, with a largely Moment.js-compatible, chainable API, and supports plugins and internationalization (I18n).
Project status
- The source (iamkun/dayjs) appears actively maintained, with recent updates continuing through 2026 (latest listed update v1.11.21 on 2026-05-26, and an upstream push on 2026-06-30).
- Apparent update cadence is roughly every 2 to 3 months in the last year (v1.11.19 on 2025-10-31, v1.11.20 on 2026-03-12, v1.11.21 on 2026-05-26).
AI summary generated
Recent updates
v1.11.21
v1.11.21 contains a targeted formatting bug fix intended to preserve unsupported year tokens when using Day.js format strings. The code changes primarily adjust the regex-based token matching used by both the core formatter and the duration plugin, and add tests covering year tokens like `Y` and `YYY`.
v1.11.20
v1.11.20 primarily includes two bug fixes: adding Khmer locale meridiem support and improving the updateLocale plugin so nested objects are merged instead of fully replaced. The code changes also include documentation-only and changelog/README sponsor updates, which should not affect runtime behavior.
v1.11.19
v1.11.19 includes several locale corrections and a small developer-experience improvement. The most notable runtime change is the devHelper plugin adding console warnings when diff() is used with an invalid or missing comparison date.
v1.11.18
Release v1.11.18 contains a small CI related fix, noted in the release notes as addressing an error related to a semantic-release dependency. The code diff shows only workflow and changelog updates, not changes to the dayjs library runtime code.
v1.11.17
Dayjs v1.11.17 primarily updates the en-AU locale ordinal formatting so that the 'Do' output matches Moment. The release notes only mention this locale bug fix. The code diff also includes internal packaging and release-tooling changes that are not described in the release notes.
v1.11.16
v1.11.16 release notes claim this is a test release workflow with no code changes. However, the actual diff shows changes to the CI release workflow, dependency set, and a patched third-party semantic-release plugin that adds extensive console logging. This can change publishing behavior and potentially expose sensitive data in CI logs.
Securityv1.11.15
v1.11.15 is documented as a bug fix for misspellings in the Irish (ga) locale. The diff also shows repository-level CI and release pipeline changes, plus some test additions, but the only runtime/library source change appears to be within the ga locale strings.
v1.11.14
v1.11.14 is a small release that documents a UTC plugin bug fix related to .utcOffset(0, true) producing a result that does not clone correctly. The code diff also shows broader behavioral adjustments inside the utc plugin beyond just the documented zero-offset case.
v1.11.13
v1.11.13 is a small update focused on customParseFormat. The release notes claim support for quarter tokens (Q) and week-of-year tokens (w, ww).
v1.11.12
Day.js v1.11.12 adds the new negativeYear plugin (including UTC support) and adjusts the timezone plugin to fix parsing behavior when the computed UTC offset is zero. It also updates TypeScript typings for the min/max plugin to better express nullability for empty inputs.
Features