formerly hijri-converter

A Python package to convert accurately between Hijri and Gregorian dates using the Umm al-Qura calendar.


  • Accurate and verified date conversion.

  • Optimized code performance compared to similar packages.

  • Intuitive, clean, and easy-to-use interface.

  • Most of the methods and formats are similar to those of standard library.

  • Multilingual representation of weekday names, months, and calendar era notations.

  • Easily extendable to support other natural languages.

  • Rich comparison between dates.

  • Validation of input dates.

  • Works on Python 3.8+ with zero dependencies.

  • Thoroughly tested with 100% test coverage.


  • The date range supported by converter is limited to the period from the beginning of 1343 AH (1 August 1924 CE) to the end of 1500 AH (16 November 2077 CE).

  • The conversion is not intended for religious purposes where sighting of the lunar crescent at the beginning of Hijri month is still preferred.


To install using pip, run:

pip install hijridate

To install using conda, run:

conda install -c conda-forge hijridate

Basic Usage#

from hijridate import Hijri, Gregorian

# Convert a Hijri date to Gregorian
g = Hijri(1403, 2, 17).to_gregorian()

# Convert a Gregorian date to Hijri
h = Gregorian(1982, 12, 2).to_hijri()