https://github.com/alainm23/chrono
A natural language date and time parser library for Vala/GLib applications
https://github.com/alainm23/chrono
date-parser glib gnome library natural-language-processing vala
Last synced: 1 day ago
JSON representation
A natural language date and time parser library for Vala/GLib applications
- Host: GitHub
- URL: https://github.com/alainm23/chrono
- Owner: alainm23
- License: gpl-3.0
- Created: 2026-05-22T14:01:08.000Z (8 days ago)
- Default Branch: main
- Last Pushed: 2026-05-23T11:12:00.000Z (7 days ago)
- Last Synced: 2026-05-23T13:08:17.403Z (7 days ago)
- Topics: date-parser, glib, gnome, library, natural-language-processing, vala
- Language: Vala
- Homepage:
- Size: 53.7 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Chrono
A natural language date and time parser library for Vala/GLib applications.
Originally developed as part of [Planify](https://github.com/alainm23/planify).
## Features
- Parse natural language date/time strings (e.g. "tomorrow", "next Monday", "in 3 days")
- Recurrence rule parsing (e.g. "every week", "every Monday")
- Multi-language support (English, Spanish — more via template)
- Pure Vala/GLib, no external dependencies
## Usage
```vala
var chrono = new Chrono.Core ();
var result = chrono.parse ("tomorrow at 9am");
if (result != null) {
print ("Parsed date: %s\n", result.date.to_string ());
}
```
## Building
```bash
meson setup build
cd build
ninja
sudo ninja install
```
## Adding a new language
See `lib/Locales/TEMPLATE.md` for instructions on adding a new locale.
## License
GPL-3.0-or-later — see [LICENSE](LICENSE)