أشارككم تجربة تطوير تطبيق تواتر (Tawatur)، وهو تطبيق ويب يهدف إلى مساعدتنا على حفظ القرآن وتثبيته باستخدام منهجية التكرار الدائري المتقاطع التي طرحها الشيخ أحمد شمس في هذا الموضوع. تحاكي الطريقة أسلوب شيوخ الكتاتيب، وقد دمجتها مع نظام مراجعة متباعدة لضمان عدم النسيان.
فكرة تطبيق تواتر وكيفية استخدامه
تعتمد الفكرة بشكل أساسي على التلقين المتدرج للآيات، حيث يشغل البرنامج آية (أو جزء من آية) بمفردها عدة مرات حتى يحفظها الحافظ، ثم يشغل الآية التالية يمفردها حتى يحفظها، وبعد ذلك يشغل الآية الجديدة من الآيات السابقة، وهكذا حتى انتهاء المقطع المراد حفظه، وأخيرًا يسرد المقطع كاملاً للتثبيت.
التطبيق عبارة عن نموذج أولي ويمكن تحسينه. لاستخدامه نختار السورة المراد حفظ مقطع منها، ثم نحدد من أي آية لأي آية نريد أن نحفظ، ثم نختار القارئ، وبعد ذلك نختار طريقة التقسيم. والطريقة المفضلة هنا هي حسب علامات الوقف لأن بعض الآيات قد تكون طويلة، حيث تتحقق مصفوفة مخصصة من وجود علامات الوقف مثل (ج', 'مـ)، وتقسم النص عندها، ولتقسيم النص يتم الاعتماد على بيانات التزمين التي يتم جلبها من Quran.com API.
بعد ذلك نحدد كم مرة سيتم تكرار الآية وكم مرة سيتم تكرارها مع الآيات السابقة، وكم مرة سيتم تكرار المقطع كاملًا للتثبيت في النهاية، ويمكن تحديد الوقت الذي سيترك للإعادة بعد القارئ، وأخيرًا نبدأ جلسة الحفظ بالنقر على زر بدء الحفظ.

فيتم تحميل البيانات اللازمة مثل الملفات الصوتية، وتبدأ جلسة الحفظ حيث يتم تكرار الآيات في خطوات محددة تظهر في شريط في الأعلى ويمكن التنقل بينها.

وبعد الانتهاء تظهر نافذة تسأل عن جودة الحفظ، حيث سيؤثر الرقم الذي نختاره هنا في جدولة المقطع في خطة المراجعة التي استخدمت لها خوارزمية SuperMemo 2 مع تعديلها برمجيًا لتناسب طبيعة القرآن الكريم، حيث قمت بوضع حد أقصى للمسافة الزمنية (60 يومًا كحد أقصى) لمنع تفلت المحفوظ، وإذا كان التقييم ضعيفًا يتم إعادة دورة المقطع من البداية.

وبعد تأكيد الحفظ يتم إضافة المقطع إلى خطة المراجعة.

نظرة تقنية على بنية المشروع
بنيت التطبيق كصفحة ويب تعمل مباشرة عبر المتصفح باستخدام تقنيات الويب الأساسية (Vanilla JavaScript, HTML, CSS) دون الاعتماد على أطر عمل معقدة، لضمان أن تكون الواجهة خفيفة وسريعة.
وبرمجت محركًا صوتيًا مخصصًا يعتمد على AudioContext للتحكم الدقيق في التوقيتات، وضمان الانتقال السلس بين المقاطع دون تقطيع. وبخصوص التوقيتات لتظليل الكلمات عند القراءة فيتم جلبها من quran.com API.
تجربة التطبيق والمساهمة
يمكن تجريب التطبيق مباشرة من خلال الرابط التالي:
https://alinice1998.github.io/Tawatur/
والتطبيق مشروع مفتوح المصدر يمكن الاطلاع على كوده والمساهمة في تطويره من خلال هذا المستودع:
https://github.com/alinice1998/Tawatur
ما رأيكم بالتطبيق، وهل لديكم اقتراحات لتحسينه بحيث يمكن لمن يريد البناء على هذا النموذج الأولي أن يأخذها بعين الاعتبار؟ وهل توجد أساليب حفظ أخرى أفضل من الأسلوب المعتمد في التطبيق حسب تجربتكم؟