7 个仓库
Date libraries built on immutable data structures.
Distinguishing note: Focuses on the identity of the library as an immutable utility.
Explore 7 awesome GitHub repositories matching data & databases · Immutable Date Libraries. Refine with filters or upvote what's useful.
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 archit
A lightweight utility for parsing, validating, and manipulating date objects using immutable transformation patterns.
date-fns is a JavaScript date utility library providing a collection of pure functions for manipulating, formatting, and calculating dates and times. It serves as an immutable date manipulation library and a tool for time zone management, ensuring that date transformations are performed without modifying the original date objects. The library functions as a date formatting tool that converts date objects into human-readable strings using custom patterns and international locales. It includes a specific toolset for adjusting and calculating date representations across different geographical re
Provides a collection of pure functions that ensure date transformations never modify the original date objects.
Luxon is a JavaScript library for parsing, validating, manipulating, and formatting dates and times. It provides a suite of immutable objects for managing points in time, durations, and intervals, ensuring that all transformations return new instances to maintain predictable state. The library distinguishes itself by leveraging the native Internationalization API and environment-based time zone databases. This architecture allows for localized date formatting and global time zone conversions without requiring external data files or additional dependencies. It also supports non-Gregorian calen
Provides a suite of immutable objects for managing points in time, durations, and intervals with chainable methods.
algs4 is a Java data structures library and algorithm reference collection designed as the source code for a standard computer science textbook curriculum. It provides a comprehensive suite of fundamental implementations for sorting, searching, and core data organization. The project serves as a graph theory framework, offering tools for representing directed and undirected graphs and performing complex traversals and pathfinding. It also includes a broad sorting algorithm suite and a specialized library of Java data structures, including stacks, queues, priority queues, and symbol tables. I
Encapsulates day, month, and year in an immutable object with chronological comparison support.
Dinero.js is a TypeScript-first library for creating, calculating, and formatting monetary values. It provides immutable money objects that represent amounts in the smallest currency subdivision as integers, ensuring precision and preventing floating-point errors. The library enforces same-currency rules on arithmetic operations and validates currency codes against ISO 4217 definitions at creation time. The library distinguishes itself through a calculator plugin architecture that delegates arithmetic operations to interchangeable backends, supporting number, bigint, or custom precision libra
Provides immutable money objects with safe arithmetic, comparison, and formatting operations.
这是一个用于使用值对象处理财务计算的 PHP 库。它将货币金额表示为整数,以避免浮点精度错误,并确保处理和存储过程中的数学准确性。 该库利用不可变值对象模式,其中计算返回新实例以防止副作用。它采用货币感知算术来限制数学运算仅在共享相同货币的对象之间进行,并使用基于接口的逻辑将货币转换委托给外部汇率提供商。 功能包括用于本地化人类可读字符串的国际货币格式化,以及用于跨网络 API 传输货币数据的标准化 JSON 序列化。
Provides immutable value objects that represent monetary amounts as integers to ensure mathematical accuracy.
Tempo is a JavaScript date manipulation library that provides a suite of tools for parsing, formatting, and calculating dates and times. It serves as a date arithmetic engine, a locale-aware formatter, and a timezone offset manager for native JavaScript date objects. The library includes a dedicated ISO 8601 date parser for validating and converting standardized strings into date objects. It handles geographic normalization through IANA timezone offset management and utilizes the native Internationalization API for region-specific date formatting. The project covers a broad range of date and
Ensures predictable state changes by returning new date objects after every operation to prevent side effects.