limudim-calendar

Crates.iolimudim-calendar
lib.rslimudim-calendar
version0.1.0
created_at2026-01-14 12:59:25.138062+00
updated_at2026-01-14 12:59:25.138062+00
descriptionA comprehensive Rust library for calculating Jewish learning schedules with the Hebrew calendar with no_std support
homepage
repository
max_upload_size
id2042768
size140,109
Moshe Dicker (dickermoshe)

documentation

README

Limudim

A Rust library for calculating various Jewish learning schedules (limudim), including Daf Yomi, Mishna Yomis, Pirkei Avos, and more.

Features

This library provides calculators for the following learning schedules:

  • Daf Yomi Bavli - Babylonian Talmud daily page (7.5 year cycle)
  • Daf Yomi Yerushalmi - Jerusalem Talmud daily page (Vilna edition, ~4 year cycle)
  • Amud Yomi Bavli Dirshu - Babylonian Talmud daily column (Dirshu schedule)
  • Daf Hashavua Bavli - Babylonian Talmud weekly page
  • Mishna Yomis - Daily Mishna (2 mishnayos per day)
  • Pirkei Avos - Ethics of the Fathers (seasonal, Shabbos afternoons between Pesach and Rosh Hashanah)
  • Tehillim Monthly - Complete book of Psalms monthly

Installation

cargo add limudim- icu_calendar

Or manually add to your Cargo.toml:

[dependencies]
limudim-calendar = "0.1.0"
icu_calendar = "1.5"

Usage

use limudim_calendar::{DafYomiBavli, LimudCalendar};
use icu_calendar::{cal::Hebrew, Date};

// Create a Hebrew date
let date = Date::try_new_iso(2020, 1, 5).unwrap().to_calendar(Hebrew);

// Calculate what should be learned
let daf = date.limud(DafYomiBavli::default()).unwrap();
println!("Today's Daf: {:?} page {}", daf.tractate, daf.page);

Other Calculators

use limudim_calendar::*;

// Mishna Yomis
let mishnas = date.limud(MishnaYomis::default());

// Pirkei Avos (Israel schedule)
let pirkei_avos = date.limud(PirkeiAvos::new(true));

// Tehillim Monthly
let tehillim = date.limud(TehillimMonthly::default());

License

Licensed under the LGPL-2.1 license. See LICENSE for details.

Commit count: 0

cargo fmt