This is a Rust crate for calendrical calculations: given a day represented in one timekeeping system, this crate can create the representation for the same day in another timekeeping system.
Additionally, the crate can convert dates to strings in some predefined formats.
For example, here is a conversion from the Gregorian calendar to the Julian:
use radnelac::calendar::*;
use radnelac::day_count::*;
let g = Gregorian::try_new(2025, GregorianMonth::July, 26).unwrap();
let j = g.convert::<Julian>();
assert_eq!(j, Julian::try_new(2025, JulianMonth::July, 13).unwrap());
Most of the calculations are based on Calendrical Calculations: The Ultimate Edition by Reingold & Dershowitz.
Project Links
The primary copy of the source is the Fossil repo at radnelac.org. If this code is hosted elsewhere, it is probably a mirror or fork.
Other relevant links:
Automated Builds
Automated tests are run daily and the results are available on radnelac.org.
Features | Results | Coverage |
---|---|---|
default | Test results | Coverage |
no default | Test results | Coverage |
Documentation for the trunk branch of the code (not yet released on crates.io) is available on radnelac.org.
License
Radnelac is provided under the Mozilla Public License Version 2.0.
The Fossil repository for radnelac uses highlight.js for syntax highlighting, and is provided under the BSD 3-Clause License. This is not used when building Radnelac or running code using Radnelac.