awesome-repositories.com
© 2026 Bringes Technology SRL·VAT RO45896025·hello@bringes.io
MCPSitemapPrivacyTerms
Dayjs | Awesome Repository
← All repositories

iamkun/dayjs

0
View on GitHub↗
48,551 stars·2,418 forks·JavaScript·mit·0 viewsday.js.org↗

Dayjs

Features

  • Date and Time Libraries - Creates new date objects whenever values change to ensure data integrity during complex calculations.
  • Date Manipulation Utilities - Parses, validates, and transforms time data using a chainable interface for consistent formatting.
  • Immutable Date Libraries - A lightweight utility for parsing, validating, and manipulating date objects using immutable transformation patterns.
  • Chainable Date Utilities - Provides a fluent interface for performing complex time calculations through readable method calls.
  • Fluent Date Processing - Simplifies common time-based operations through a chainable interface that makes transformations readable.
  • Immutable Date Processing - Performs complex date and time calculations while ensuring data integrity by creating new instances.
  • Immutable Data Patterns - Wraps native date objects in new instances for every operation to ensure data integrity and prevent unintended side effects.
  • Modular Architectures - Maintains a tiny footprint by offloading all non-essential features to an optional plugin system.
  • Modular Plugin Architectures - A flexible extension system that allows adding specialized formatting without increasing the core bundle size.
  • Plugin Systems - Extends core functionality by injecting custom methods directly into the prototype chain through a modular registration system.
  • Internationalized Date Formatting - Displays dates and times in a way that respects specific language and regional conventions.
  • Localization Tools - Applies internationalization settings on demand to display dates and times according to regional conventions.
  • Modular Library Extensions - Adds specialized features or custom functionality to a core utility without increasing the base codebase size.
  • Internationalization Engines - Transforms date and time values into region-specific formats based on dynamic language settings.
  • Internationalization Utilities - Loads internationalization data dynamically only when requested to keep the initial bundle size minimal.
  • Extensibility Frameworks - Allows adding specialized formatting or advanced capabilities by registering independent modules.
  • Fluent Interfaces - Provides a chainable interface that allows multiple date transformations to be linked together in a single statement.
  • Day.js is a lightweight utility for parsing, validating, and manipulating date objects. It provides a fluent, chainable interface that allows for complex time calculations and transformations to be performed through a sequence of readable method calls. By utilizing an immutable wrapper pattern, the library ensures data integrity by creating new instances for every operation rather than modifying existing objects.

    The project is distinguished by a minimalist core abstraction that maintains a small footprint by offloading non-essential features to an optional, modular plugin system. This architecture allows developers to extend functionality or add specialized formatting capabilities by registering independent modules only when needed. Furthermore, the library includes an internationalization engine that supports dynamic, lazy loading of locale data to keep bundle sizes minimal while respecting regional date and time conventions.