4 releases (2 stable)

1.1.0 Mar 25, 2023
1.0.0 Jan 6, 2017
0.1.1 Mar 31, 2016
0.1.0 Mar 30, 2016

#232 in Date and time

Download history 140/week @ 2025-09-14 154/week @ 2025-09-21 257/week @ 2025-09-28 466/week @ 2025-10-05 632/week @ 2025-10-12 1335/week @ 2025-10-19 1829/week @ 2025-10-26 1134/week @ 2025-11-02 1193/week @ 2025-11-09 2932/week @ 2025-11-16 2758/week @ 2025-11-23 3134/week @ 2025-11-30 2112/week @ 2025-12-07

10,946 downloads per month
Used in 10 crates (7 directly)

MIT license

8KB
138 lines

Overview

Calculate the date of Easter Sunday in Gregorian/Julian calendar using the computus method.

Features

Optional features:

  • chrono: Enable directly producing a chrono::NaiveDate

Example

You can find when Easter is for a particular year with:

// For Gregorian calendars
let easter = computus::gregorian(2016).unwrap();
assert_eq!((easter.month, easter.day), (3, 27));
// For Julian calendars
let easter = computus::julian(2016).unwrap();
assert_eq!((easter.month, easter.day), (4, 18));
// With `chrono` feature
#[cfg(feature = "chrono")] {
    use chrono::Datelike;
    let easter = computus::gregorian_naive(2023).unwrap();
    assert_eq!((easter.month(), easter.day()), (4, 9));
}

Computus

crates.io Documentation

Computus Easter calculation in Rust

Usage

Add this to your Cargo.toml:

[dependencies]
computus = "1.1.0"

You can find when Easter Sunday is for a particular year with:

// For Gregorian calendars
let easter = computus::gregorian(2016).unwrap();
assert_eq!((easter.month, easter.day), (3, 27));
// For Julian calendars
let easter = computus::julian(2016).unwrap();
assert_eq!((easter.month, easter.day), (4, 18));
// With `chrono` feature
#[cfg(feature = "chrono")] {
    use chrono::Datelike;
    let easter = computus::gregorian_naive(2023).unwrap();
    assert_eq!((easter.month(), easter.day()), (4, 9));
}

Dependencies

~0–280KB