Add Dirshu Amud HaYomi daily learning program#8
Merged
Conversation
Implements the Dirshu Amud HaYomi program which began on 1 Cheshvan
5784 (October 16, 2023). Learners study one amud (side of a Talmud
page) per day, cycling through all 40 tractates of the Babylonian
Talmud (5,407 amudim total).
- dirshuAmudYomiBase.ts: core algorithm with DirshuAmudYomi class
extending DafPage, storing blattNum and side ('a'/'b') separately
for proper Hebrew rendering (e.g. "שקלים דף ד ע״ב")
- DirshuAmudYomiEvent.ts: DafPageEvent subclass with custom render(),
url(), and getCategories(); Sefaria links use the actual amud side
- dirshuAmudYomi.ts: DailyLearning wrapper registration
- register.ts: include dirshuAmudYomi in global registry
- test/dirshuAmudYomi.spec.ts: 19 unit tests covering cycle start,
today's amud (Shekalim 4b on March 23 2026), tractate boundaries,
cycle wrap, Hebrew rendering, Sefaria URL generation, and error handling
https://claude.ai/code/session_016o5KhppqzAC6F68t2tRRho
Removes the duplicated sefariaNames map from DirshuAmudYomiEvent by exporting the existing dafYomiSefaria from DafPageEvent and importing it. The Shekalim entry is overridden locally since dafYomiSefaria points to the Yerushalmi page but Dirshu Amud HaYomi uses the Bavli edition. https://claude.ai/code/session_016o5KhppqzAC6F68t2tRRho
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR adds support for the Dirshu Amud HaYomi daily learning program, which cycles through all 5,407 amudim (pages) of the Talmud. The cycle began on October 16, 2023 (1 Cheshvan 5784) with Berachot 2a.
Key Changes
DirshuAmudYomiclass (dirshuAmudYomiBase.ts): ExtendsDafPageto represent a specific amud in the Dirshu program with tractate name, blatt number, and side (a/b)calculateDirshuAmud()function: Computes which amud should be studied on a given date by calculating days elapsed since the cycle start and mapping to the appropriate tractate and pageDirshuAmudYomiEventclass (DirshuAmudYomiEvent.ts): Event wrapper that integrates with the daily learning system, providing:dirshuAmudYomidirshuAmudYomi.ts): Registers the program with theDailyLearningsystem, making it available for calendar queries starting from the cycle start datedirshuAmudYomi.spec.ts): 177 lines of tests covering:Implementation Details
https://claude.ai/code/session_016o5KhppqzAC6F68t2tRRho