Methodology

Every result names its method. Umm al-Qura civil is the default. Tabular is an explicit comparison.

Umm al-Qura civil

We ship a month-start table generated from ICU’s islamic-umalqura calendar, the Unicode CLDR encoding of the KACST Umm al-Qura civil table. Supported range: 1 Muharram 1356 to 30 Dhu al-Hijjah 1500 AH (14 March 1937 to 16 November 2077 CE).

Hijri day N is the month start plus N−1 civil days. Gregorian to Hijri is a binary search on that table. We do not compute Mecca moonset live in the browser.

Tabular civil

The second method is CLDR islamic-civil: 30/29 alternating months, Dhu al-Hijjah 30 in leap years 2, 5, 7, 10, 13, 16, 18, 21, 24, 26, 29 of each 30-year cycle. The JDN epoch 1948439 matches ICU. This is not Umm al-Qura.

What we refuse

We do not present moon-sighting as the default calendar. We do not switch methods in the background. “Today” is computed in the selected IANA timezone, default Asia/Riyadh.

Sources and test fixtures are listed in docs/SOURCES.md and docs/TESTING.md.