هذا مشروع حر مفتوح المصدر FLOSS ذو حقوق نسخ ممنوحة وفق بنود رخصة "وقف" العامة يهدف لتوفير كل ما يتصل بدعم التقويم الهجري على المستويات التالية
نستخدم خوازمية خاصة من تصميمي (مؤيد السعدي). هذه الخوارزمية تستخدم حساب الأعداد الصحيحة أي أنه (وعلى عكس حسابات الفاصلة العائمة) لا يوجد أي نوع من التقريب. كما أنها تسمح بتغطية طيف واسع من السنين (مثلاً من العام الأول للهجرة إلى العام الهجري ٩٩٩٩ أي العام الجريجوي ١٠٣٢٢ بكل سهولة) هذه الخوارزمية لها ثلاث معاملات p و q و a. حيث p/q هي النسبة بأبسط صورة بين الأشهر الهجرية التامة (ذات ٣٠ يوماً) والأشهر الهجرية القصيرة (ذات ٢٩ يوماً) في السنة الواحدة أما a فهي إزاحة لضبط اختيار البداية. وحيث أننا لم ندخل p/q على شكل عدد نسبي محدود المنازل يمكن لهذه الخوارزمية إعطاء دقة يقينية في الحساب. إلا أن الحصول على هذه المعاملات لا يأتي إلا بالتجريب والملاحظة الذي قد يدخل فيه الخطأ كما أن مجرد افتراض أن هناك نسبة بين هذه الأشهر ليس يقينياً. إذا افترضنا أن هناك نسبة عددية بين الأشهر فهذه الخوارزمية تصبح يقينية إذا علمت النسبة.
تختلف هذه الخوارزمية عن خوارزمية EMACS الشائعة بان أطوال الشهور غير ثابتة، حيث في خوارزمية EMACS شهر رمضان في كل السنين ٣٠ يوما.
الواجهة الرسومية الاولية تظهر الشهر الهجري كاملاً وتحت كل يوم هجري ترى اليوم الميلادي بخط خفيف. تستطيع التحرك سنة سابقة أو لاحقة أو شهراً سابقا ولاحقا. تستطيع إغلاق البرنامج ويظل يعمل في لوحة النظام tray في منطقة التواصل (تلك التي توضع غالبا قرب الساعة) يظهر فيه اليوم الهجري في السطر الاول من الشهر الهجري في السطر الثاني لمعرفة التفاصيل قم بالتأشير عليه لعرض البرنامج مرة أخرى انقر على هذه الأيقونة بالزر الأيسر، ولعرض القائمة انقر بالزر الأيمن
توفر هذه المكتبة الوظائف التي يحتاجهة أي برنامج وفق تصميم موجه للكائنات OOP يسهل عمل برامج توظف التقويم الهجري بكل سهول. حيث توفر مثلاً مصفوفة للشهر الهجري بكل المعلومات الازمة وتسمح بتحديد أي يوم كبداية للسبوع وتحديد اتجاه تعبئة المصفوف من اليمين لليسار أو بالعكس. إن عمل أي واجهة جديدة للبرنامج يفترض أن لا يشكل أي صعوبة.
توفر هذه المكتبة الوظائف الاولية مثل تحويل أي يوم هجري إلى التقويم المطلق (عد الأيام) أو التقويم الجريجوري أو إيجاد عدد أيام شهر معين أو إيجاد عدد الأيام بين أي شهرين
طبعاً لا يغني أي برنامج مهما كان دقيقاً عن رؤية الهلال.
اما لماذا نهتم بالتقويم الهجري؛ فهذا سؤال بديهي، هناك الكثير من الخطب والمقالات التي تحث على التمسك بالتقويم الهجري وتفصل في ذلك، إليك بعضها
التقويم الهجري تقويم إجرائي يقوم على الملاحظة (بالرؤية) لأحداث دورية واضحة. يتم إعادة ضبطه في كل سنة مرتين.
في الحقيقية التقويم الميلادي ليس أقل اضطراباً إلا في الاصطلاح الذي وضعه أحد القسيسين لما يسمونه “البابا” جريجوري الثالث عشر (عام ١٥٨٢) وليس وفق الحقائق العلمية. أي أن التقويم الجريجوري هو تقويم تقريبي وفوق ذلك لا يعاد ضبطه بشكل دوري مع الحقائق الفلكية، جاء لتصحيح خطأ أكبر في تقويم يوليوس قيصر Julian الذي تم اعتماده كتقويم لاهوتي نصراني بقرار من البابا يوحنا الأول John I في عام ٥٢٥ ميلادية.
أقتبس من كتاب “حتى لا ندخل جحور الضباب” (الذي لم أنته من تأليفه):
لم يعطي هذا الراهب التقويم رقم السنة نسبة للإمبراطور ولا إلى روما التي كانت أطلالاً في حينه بل نسبة للعام الذي كان يشاع في حينه بأنه العام الذي ولد فيه سيدنا عيسى وعلى حد تعبيره “هو العام الذي تجسد فيه الإله مولوداً”، فكان تقويمه يحمل العنوان “anno Domini nostri Jesu Christi DXXXII” أي “في عام ربنا المسيح عيسى ٥٣٢” على حد تعبيره.
انتهى الاقتباس ذاك التقويم يخطئ بمعدل ٣ أيام كل ٤٠٠ سنةتقريباً! لذا جاء جريجوري ليحذف يوماً من كل رأس ثلاث قرون من بين أربعة. ويقفز ١٠ أيام تعويضاً عما فات من سنين لم تحذف فيها تلك الأيام الزائدة! ولم يعتمد التقويم الجريجوري من فوره بل بعد ١٧٠ سنة. فهل ننتظر “بابا” آخر يخبرنا بأن علينا عمل قفزات أخرى في التقويم. وبالمناسبة إن الرأي السائد بين الدارسين في الغرب بأن سيدنا عيسى بن مريم ولد في العام الرابع قبل الميلاد أو قبل ذلك (أي ولد قبل مولده المزعوم بأربع سنوات على الاقل)
الموقع الرسمي للبرنامج هو http://hijra.ojuba.org يمكن تنزيل آخر نسخة على شكل أرشيف مضغوط من موقع تنزيل الملفات الرسمي الخاص بأعجوبة www.ojuba.org/downloads
يمكن الحصول على البرنامج بواسطة GIT عبر الرابط http://git.ojuba.org/cgit/hijra/snapshot/hijra-master.tar.bz2 ويمكن تتبع تطوير المشروع على الرابط http://git.ojuba.org/cgit/hijra