v1.0.0
12 Sep 2026First release.
Added
- Umm al-Qura conversion from the published month table, covering 1300–1600 AH. The table is
generated from ICU by
scripts/table.mjsand verified against it; a test re-checks every week of a century on each build. - The tabular calendar as well, and an automatic fall back to it outside the table — with
exact: falseon any date that needed it, so nothing pretends to be authoritative when it is not. offsetin whole days, which is how ministries publish their difference from Umm al-Qura when the moon is sighted a day either way.- Formatting in English, Arabic and Urdu, with Arabic-Indic or Persian numerals, and patterns
(
d MMMM yyyy G,EEEE,yyyy-MM-dd). - Parsing what people type:
1448-09-01,1/9/1448,1 Ramadan 1448,١٠ ذی الحجہ ١٤٤٨. - Arithmetic that stays inside the calendar:
addDays,addMonths(clamping to the month's length),addYears,diffDays,monthDaysfor drawing a calendar. ramadan(year)andevents(year)— the new year, Ashura, Mawlid, Isra and Mi'raj, Ramadan, Laylat al-Qadr, both Eids and Arafah — with their Gregorian dates and how far away they are.today({ timeZone }), because "today" is a local question.- 4.1 kB gzip, zero dependencies, and no
Intlat runtime.