chronotope/chrono

Date and time library for Rust

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 58 minutes ago
Type:Library / SDKCategory(s):Core & Utility LibrariesLanguages & Runtimes
Added to GitGenius on September 17th, 2026
Created on March 28th, 2014
Open Issues & Pull Requests: 193 (+0)
GitHub issues: Enabled
Number of forks: 612
Total Stargazers: 3,911 (+0)
Total Subscribers: 25 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 2.5 hours
Mean response time: 20.0 days
90th percentile: 6.7 days
Tracked items: 78

Most active contributors

Sign in to see contributor activity.

How this project is maintained

92% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Three people close 78% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 38
New in 7 days: 1
Closed in 7 days: 1
Avg open age: 739 days
Stale 30+ days: 36
Stale 90+ days: 35

Recent activity

Opened in 7 days: 1
Closed in 7 days: 1
Comments in 7 days: 1
Events in 7 days: 3

Top labels

  • parsing (2)
  • serde (2)

Most active issues this week

Detailed Description

Chrono is a date and time library for Rust that provides timezone-aware handling of dates and times in the proleptic Gregorian calendar.

The library solves the problem of correctly manipulating dates and times by making timezone awareness a default behavior rather than an afterthought. The DateTime type is timezone-aware by default, with separate timezone-naive types available when needed. Operations that could produce invalid or ambiguous results return Option or MappedLocalTime rather than panicking or silently producing incorrect values. The tool supports configurable parsing and formatting using strftime-inspired syntax, can work with the operating system's local timezone, and is designed to be reasonably efficient in its operations.

Chrono suits projects that need reliable date and time handling without the complexity of managing timezone data in the binary itself. The library intentionally does not ship timezone data by default to keep binary sizes small; developers needing full timezone support should use the companion crate Chrono-TZ or tzfile. The tool works within defined constraints: it supports only the proleptic Gregorian calendar, handles dates within approximately 262,000 years of the common epoch, provides nanosecond accuracy for time values, and can represent leap seconds though full support for them is incomplete. The library offers granular feature control, allowing developers to enable only the functionality they need, from basic date operations to serialization support via serde or rkyv, and optional localization features.

The project maintains an explicitly tested minimum supported Rust version and may bump it in minor releases when necessary. Development activity shows consistent engagement with the codebase through regular updates and maintenance of multiple serialization backends.