A Clojure date and time library wrapping Joda Time, now deprecated in favor of Java Time alternatives.
clj-time is a Clojure library that wraps the Joda Time Java library to provide functional, immutable date and time operations. It solves the problem of cumbersome time handling in Clojure by offering a clean API for creation, arithmetic, formatting, and comparison of dates and times. The library is now deprecated as Joda Time itself is superseded by Java Time in Java 8+.
Clojure developers working on applications that require robust date and time manipulation, especially those using Joda Time in legacy Java environments or prior to Java 8 adoption.
Developers choose clj-time for its idiomatic Clojure interface to Joda Time's comprehensive features, reducing boilerplate and providing immutable, functional date-time operations. Its seamless integration with SQL databases via JDBC extensions is a key advantage for data-driven applications.
A date and time library for Clojure, wrapping the Joda Time library.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides a functional, immutable API that wraps Joda Time, making date-time operations more expressive and less error-prone in Clojure, as shown in the core namespace with functions like date-time and plus.
Offers protocol extensions in clj-time.jdbc to use DateTime objects directly with SQL databases, reducing boilerplate for database operations without manual coercion.
Supports built-in ISO8601 and custom formatters for flexible date serialization, with examples in clj-time.format for parsing strings like '20100311' with custom patterns.
Enables complex time manipulations such as adding months or weeks, interval management, and generating periodic sequences, detailed in clj-time.core and clj-time.periodic.
Marked as deprecated in the README, with Joda Time itself superseded by Java Time in Java 8+, making it unsuitable for new development and lacking future updates.
Inherits Joda Time quirks, such as unparse silently returning the current date/time when passed nil, leading to potential bugs without explicit checks, as warned in the README.
Tightly coupled to Joda Time, a Java library, so it cannot be used in ClojureScript or non-JVM environments, limiting its applicability for modern cross-platform projects.