A timezone-aware date and time library for Rust with configurable parsing, formatting, and correct calendar operations.
Chrono is a timezone-aware date and time library for Rust that provides correct operations within the proleptic Gregorian calendar. It solves the problem of handling dates and times accurately across different timezones, with support for parsing, formatting, and safe operations that avoid invalid or ambiguous results.
Rust developers who need reliable, timezone-aware date and time functionality for applications like scheduling, logging, data processing, or internationalization.
Developers choose Chrono for its correctness guarantees, explicit handling of edge cases, and flexible timezone support without bloating binary sizes by default, making it a robust alternative to basic time handling in Rust.
Date and time library for Rust
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
DateTime types include timezone support out of the box, preventing common errors in timezone conversions as highlighted in the README.
Potentially invalid or ambiguous operations return Option or MappedLocalTime, ensuring explicit error handling and preventing silent bugs.
Uses an strftime-inspired syntax for parsing and formatting, allowing flexible date and time representation without complex APIs.
Types and operations are implemented to be reasonably efficient, optimizing performance for common date and time calculations.
Only the proleptic Gregorian calendar is supported, excluding other calendar systems, which is a stated limitation in the README.
Leap seconds can be represented but not fully supported, potentially leading to inaccuracies in time-sensitive applications like logging or synchronization.
Full timezone functionality requires integrating companion crates like Chrono-TZ, adding complexity to the build process and increasing binary size.