🐰

Algorithms to calculate the date of Easter Sunday: namespace Timely\Easter, Java package timely.easter.

## [Calculator.java](https://github.com/hermajan/time/blob/master/src/timely/easter/Calculator.java) 1. **Butcher's Algorithm (`easterSundayButcher`)** - Calculates Easter Sunday in the **Gregorian calendar** using Butcher's explicit formula. - Input: `int year` - Output: `int[]` in format `[day, month, year]` 2. **Oudin's Algorithm (`easterSundayOudin`)** - Alternative astronomical/mathematical method for calculating Easter Sunday in the **Gregorian calendar**. - Input: `int year` - Output: `int[]` in format `[day, month, year]` 3. **Meeus's Algorithm (`easterSundayMeeus`)** - Calculates Easter Sunday in the **Julian calendar**. - Input: `int year` - Output: `int[]` in format `[day, month, year]` ## [Calculator.php](https://github.com/hermajan/time/blob/master/src/timely/easter/Calculator.php) - `Calculator::sunday(?int $year)`: Returns Easter Sunday as a `DateTime`. Uses `easter_days()` when the `calendar` extension is installed, otherwise Butcher's algorithm. - `Calculator::friday(?int $year)` and `Calculator::monday(?int $year)`: Good Friday and Easter Monday. - `Calculator::sundayButcher(int $year)`: Butcher's algorithm ported to PHP. ```php use Timely\Easter\Calculator; Calculator::sunday(2026)->format("j.n.Y"); // "5.4.2026" ``` ## [Calculator.js](https://github.com/hermajan/time/blob/master/src/timely/easter/Calculator.js) JavaScript class `Timely.Calculator` with `sundayOudin(year)`, `friday(year)` and `monday(year)`, each returning a `Converter`; see [JavaScript](JavaScript.md). Try it in the [Examples](Examples.md) (`examples/easter.html`). The [Holidays](Holidays.md) use `EasterCalculator` for holidays relative to Easter.