Dayjs
Dayjs

Day.js is a minimalist JavaScript library that parses, validates, manipulates, and displays dates and times for modern browsers with a largely Moment.js-compatible API. If you use Moment.js, you already know how to use Day.js.

Day.js is a minimalist, 2kB immutable JavaScript date-time library designed as a fast, drop-in alternative to Moment.js with a largely compatible modern API.

The main features and capabilities of Day.js include:

  • Ultra-Lightweight Size: Weighs only ~2kB, minimizing bundle sizes for modern web applications.

  • Immutability & Method Chaining: Every manipulation returns a new Day.js object instance rather than mutating the existing date object, preventing unintended side effects while supporting clean method chaining.

  • Familiar Moment.js API: Uses the same API design and method signatures for parsing, validating, manipulating, querying, and displaying date-times (such as .format(), .add(), .set(), and .isBefore()).

  • On-Demand Locales (I18n): Offers extensive internationalization support without bloating bundle sizes, loading specific locales only when imported.

  • Extensible Plugin Architecture: Keeps core logic minimal while allowing developers to extend functionality (such as UTC time, timezones, or advanced formatting) through optional plugins loaded on demand.

  • Broad Compatibility & Open Source: Runs across all modern web browsers and Node.js environments, distributed under the open-source MIT license.