wanasit/chrono

A natural language date parser in Javascript

View on GitHub ↗Jump to charts ↓

Summary Information

Updated 32 minutes ago
Added to GitGenius on September 12th, 2026
Created on August 4th, 2012
Open Issues & Pull Requests: 134 (+0)
GitHub issues: Enabled
Number of forks: 387
Total Stargazers: 5,276 (+0)
Total Subscribers: 32 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 19.2 days
Mean response time: 175.7 days
90th percentile: 756.8 days
Tracked items: 67

Most active contributors

Sign in to see contributor activity.

How this project is maintained

Around half of the issues opened in the past year never receive a reply. 100% of open issues come from outside the core team, so the backlog reflects real-world use rather than internal planning. Only 14% of issues opened in the past year have been closed. Three people close 88% of everything that gets resolved.

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 24
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 947 days
Stale 30+ days: 23
Stale 90+ days: 21

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • bug (7)
  • enhancement (7)
  • to-clarify (7)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

Chrono is a natural language date parser in JavaScript that extracts date and time information from unstructured text.

The tool solves the problem of parsing human-readable date expressions without requiring users to format dates in a specific way. It handles relative references like "today," "tomorrow," "last Friday," and "5 days ago," as well as absolute dates in various formats and date ranges. The parser works by applying locale-specific parsing rules and refinement logic to identify date components within arbitrary text, then reconstructing them into structured date objects with reference date awareness.

Chrono suits projects that need to extract dates from user input, chat messages, or other natural language sources. It works best when you can specify a reference date and timezone context, which allows the parser to correctly interpret relative expressions. The tool supports multiple languages including English, French, Japanese, Russian, and others, though the default configuration handles only international English. For strict parsing of formal date patterns only, the tool offers a strict mode configuration. Developers should note that the project was rewritten in TypeScript in version 2, with a new parser and refiner interface, though the previous version remains supported.

The project maintains active test coverage tracking and demonstrates consistent development activity. The codebase is organized by locale with parsers and refiners grouped under locale directories, making it straightforward to add language support or customize parsing behavior. The tool provides fine-grained control through options like forward-date assumptions and custom timezone mappings, allowing integration into systems with specific parsing requirements.