30 open-source projects similar to jodaorg/joda-time, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best Joda Time alternative.
This project is a proposal for a new immutable date and time API in JavaScript. It serves as a precision time-tracking library and a multi-calendar date engine designed to replace the legacy Date object. The system is distinguished by its support for multiple calendar systems beyond the ISO standard and its use of IANA-based time zone resolution. It provides a framework for managing daylight saving transitions and UTC offsets while maintaining nanosecond precision for global timestamps. The API covers broad functional areas including complex date and time arithmetic, locale-aware formatting,
Carbon is a Go library for semantic date and time calculations, formatting, and parsing. It provides a semantic interface to simplify temporal data handling and improve the readability of date and time manipulations. The library is distinguished by its support for multi-calendar date conversion, allowing transformations between Gregorian, Chinese Lunar, Persian, and Hebrew calendar systems. It also includes a localized temporal framework that uses ISO 639-1 codes to format dates and relative time differences across multiple language locales. Additional capabilities cover global time zone man
This project is a comprehensive date and time library designed for parsing, formatting, and calculating dates and times with high precision. It provides a multi-calendar system implementation that supports conversions between proleptic Gregorian, Julian, ISO week, and Tabular Islamic calendars. The library is distinguished by its high-precision time clocks and its implementation of the IANA time zone database. It tracks physical time using UTC, TAI, and GPS clocks to account for leap seconds and provides a system for managing geographic time zones and offsets based on IANA data. The capabili
SwiftDate is a date manipulation library for the Swift programming language. It provides a toolkit for parsing, validating, and formatting dates, times, and timezones. The library includes a relative time generator for producing date offsets based on reference points such as tomorrow or next week, and a localized date formatter for transforming date objects into human-readable strings across multiple languages and locales. It also features an ISO8601 date parser to convert standardized date strings from SQL, HTTP, and ISO8601 formats into structured objects, alongside tools for managing timez
Pendulum is a Python datetime library used for creating, manipulating, and formatting date and time objects with native timezone awareness. It extends the native Python datetime class to maintain compatibility while providing a specialized engine for date arithmetic and timezone management. The library features a dedicated ISO 8601 and RFC 3339 parser that converts standardized strings into date objects without requiring manual format strings. It also includes a relative time generator for producing natural language descriptions of time differences and a timezone management tool that automati
kotlinx-datetime is a multiplatform library for handling date, time, and calendar operations across different targets. It provides a consistent set of data types for representing instants and local date-times, serving as a standardized API for temporal management. The toolkit focuses on ISO 8601 compliance for parsing and formatting date and time strings. It implements a multiplatform approach to ensure that timestamps and calendar logic remain consistent across all supported platforms. The library covers temporal data modeling, calendar arithmetic for calculating durations and periods, and
DateTools is a date manipulation library for iOS applications that provides utilities for date arithmetic, range management, and relative time formatting. It functions as a set of tools to shift dates by specific units, calculate durations between timestamps, and convert dates into localized, human-readable strings. The library specializes in the analysis of time spans, offering systems to define, compare, and organize overlapping or sequential time periods. It includes logic to determine chronological relationships, such as whether dates fall within specific windows or how different time per
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
Freezegun is a Python time mocking library and system clock emulator used to freeze the system clock to a fixed date and time. It serves as a testing utility to ensure that time-dependent logic produces consistent and predictable results during software verification. The library provides an asyncio compatible mock that preserves real monotonic clock values to prevent event loops from hanging while other system time functions remain frozen. It supports simulating the passage of time through manual clock advancement, jumping to designated dates, or using a ticking clock simulation that incremen
Home Assistant is a local home automation platform and server that acts as an IoT device orchestrator. It integrates diverse smart home hardware by wrapping third-party APIs into a standardized logic layer and stores all system state and historical statistics on local hardware to eliminate cloud dependencies. The system functions as a Matter IoT controller and an MQTT home automation bridge, allowing for local interoperability between different manufacturers. It features a state-based entity model and an internal event bus that decouple physical device logic from system automation. The platf
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
Carbon is a date and time manipulation library for PHP that extends the native DateTime class. It provides a set of tools for calculating, formatting, and comparing dates and times using a simplified, human-readable syntax. The library utilizes a fluent interface and static factory methods to allow for chained method calls and intuitive object instantiation. It supports both mutable and immutable state options to manage how date objects are modified and returned. The toolset covers temporal data management, including time zone handling and localization-based formatting to convert date compon
moment-timezone is a JavaScript library and date manipulation extension designed for parsing and converting timestamps across different geographic regions. It serves as a JavaScript implementation of the Internet Assigned Numbers Authority database to manage global time offsets and daylight saving rules. The library provides regional localization and historical time zone analysis by mapping timestamps to geographic regions using official IANA data. It enables the translation of date and time strings between various zones while accounting for chronological records of clock transitions. The pr
This project is a comprehensive library for handling dates, times, durations, and UTC offsets within the Rust programming language. It provides a framework for temporal data processing, utilizing specialized structures to maintain nanosecond precision for high-accuracy scheduling and logging requirements. The library distinguishes itself through extensive use of compile-time evaluation, which allows for the generation and validation of temporal values during the build process to eliminate runtime overhead. It employs strongly-typed primitives and overflow-checked arithmetic to ensure that all
Globalize is a JavaScript internationalization library and Unicode CLDR localization engine. It provides a toolkit for formatting dates, numbers, and currencies using the Unicode Common Locale Data Repository and IANA time zones. The project features a build-time localization compiler that precompiles rules into static formatters to reduce runtime overhead and bundle size. It includes a system for parsing and formatting complex strings using the ICU MessageFormat syntax, supporting variables, pluralization, and gender inflections. The library covers a broad surface of localization capabiliti
Arrow is a Python date and time library that provides a simplified interface for creating and manipulating timestamps by wrapping the Python standard library. It serves as a tool for managing date objects, handling timezone offsets, and performing relative date calculations. The library is distinguished by its ability to humanize timestamps into natural language relative descriptions across multiple locales and parse human-readable time phrases back into precise date objects. It also features a specialized parser for converting ISO 8601 strings and custom formatted text into date objects. Br
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
MUI X is a collection of advanced React UI components for building data-rich applications, including a data grid, charting library, date and time pickers, scheduler, and tree view. The library is built with accessibility as a core principle, ensuring all components meet WCAG and WAI-ARIA standards for keyboard navigation and screen reader announcements. The components are designed for extensibility and performance. The data grid offers comprehensive data management with sorting, filtering, pagination, column pinning, row grouping, inline editing, and Excel export. The charting library support
This project is an educational resource and a collection of instructional materials for performing data manipulation and statistical analysis using Python. It provides a comprehensive set of guides and code examples for using the Pandas, NumPy, and Matplotlib libraries to analyze structured data. The resource includes a dedicated guide for reshaping, cleaning, and aggregating tabular data and time series via Pandas, alongside a reference for high-performance vectorized operations and linear algebra using NumPy. It also features tutorials for creating publication-quality charts, distribution p
Now is a date and time manipulation library for Go designed to generate precise calendar boundaries and convert time strings into structured objects. It serves as a utility for calculating the start and end timestamps for days, weeks, months, and years. The project provides tools for calculating specific weekdays relative to a reference point and performing date arithmetic to determine time ranges. It includes a toolkit for parsing date and time strings using configurable layouts and formats. The library functions as a wrapper for the standard Go time package to provide an interface for comp
Pendulum is a Python date and time library that provides a simplified interface for date arithmetic, ISO parsing, localization, and timezone management. It serves as a replacement for the standard library datetime module, extending existing classes to maintain compatibility while offering a more intuitive management interface. The library distinguishes itself through a natural language date formatter that translates time differences into localized strings and a dedicated ISO 8601 date parser. It also includes tools for time-dependent logic testing, allowing the system clock to be mocked or fi
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
timeago.js is a JavaScript library that converts timestamps into human-readable relative time strings. It functions as an internationalized date library that transforms static date and time data into descriptive statements of elapsed time. The project provides a dynamic time updater that automatically refreshes relative time labels on a webpage at regular intervals. It supports multilingual date localization, allowing time-elapsed statements to be translated into various languages using built-in or custom locale settings.
Presto is a distributed SQL query engine designed for high-performance analytical processing across heterogeneous data sources. It functions as a data federation platform and massively parallel processing engine, allowing users to execute interactive queries against diverse storage systems without requiring data migration. By mapping remote metadata and structures to a unified relational namespace, it enables seamless cross-platform analysis through a standard SQL interface. The engine distinguishes itself through a pluggable connector architecture and a shared-nothing distributed processing
Lancet is a comprehensive extension of the Go standard library, providing a collection of reusable functions and data structures designed to reduce boilerplate code in applications. It serves as a general-purpose toolkit across multiple domains, including concurrency, security, networking, and functional logic. The project distinguishes itself through specialized toolkits for Go concurrency, such as keyed locking and channel-based stream processing, and a dedicated functional programming kit that supports currying and function composition. It also includes a dedicated cryptography library imp
DataFrame is a C++ tabular data library and manipulation engine designed for managing heterogeneous data in contiguous memory. It functions as a statistical analysis framework and time series analysis toolkit, providing the means to store, index, and transform multidimensional datasets. The project distinguishes itself through a high-performance execution model that utilizes column-major storage, SIMD-aligned memory allocation, and a thread-pool for parallel computations. It employs a visitor-based algorithm dispatch system and policy-driven transformations to decouple data processing logic f
Chrono is a Rust date and time library used for managing calendar dates, clock times, and timezone conversions. It functions as a high-precision timestamp tool and temporal data serializer for converting date and time objects into structured formats. The library includes a timezone conversion engine to translate timestamps between different geographical zones and manage local time configurations. Its broader capabilities cover date string formatting, high-precision timing, and the serialization of temporal data for database storage or network transmission.
Arrow is a Python date and time library designed for parsing, formatting, and manipulating date and time objects. It provides a simplified interface for these operations compared to the Python standard library. The library includes tools for converting standardized date strings via an ISO 8601 parser and transforming timestamps into human-readable relative strings across different locales. It also features a utility for translating timestamps between global timezones using location data objects. Additional capabilities cover date string formatting, time object generation, and the calculation
Moment is a JavaScript date manipulation library used for parsing, validating, manipulating, and formatting dates and times. It provides a system for converting date strings into structured objects using the ISO 8601 standard or custom tokens. The library includes a timezone management tool for handling UTC offsets and geographic timezones, ensuring accurate date calculations across different regions. It features an internationalized date formatter and a relative time calculator to render timestamps as human-friendly durations adapted to various cultural locales and languages. The project co
Duckling is a deterministic named entity recognizer and natural language entity extractor. It transforms unstructured text into machine-readable data by mapping language-specific input strings to universal structured formats. The system utilizes a rule-based engine and composable language rules to resolve entities without relying on probabilistic models. It supports multilingual text parsing across various regional locales, employing a logic-driven approach to normalize diverse natural language expressions into standardized numeric values. The project covers the extraction and normalization