BACUAواجهة تطبيق جزائري لدراسة البكالوريا
BACUA واجهة تطبيق جزائري لدراسة البكالوريا، تجمع الدروس المنظمة وتقدم القراءة والمحادثة المرتبطة بالدرس. المصادقة وإجابات المساعد محاكاة.
واجهة تطبيق جزائري لدراسة البكالوريا
React Native / Expo / RTLالمشكلة وسير العمل
اختيار شعبة ← فتح مادة ودرس ← تسجيل التقدم ← نقل سياق الدرس للمحادثة ← استقبال أو إلغاء جواب محاكى ← استعادة الحالة المحلية بعد إعادة التشغيل.
الوظائف الرئيسية
- تهيئة واختيار الشعبة الدراسية
- تصفح المواد والوحدات والدروس مع تقدم القراءة
- نقل سياق الدرس إلى مساعد محاكى بإجابات متدرجة
- حفظ المحادثات وإلغاء الإجابة والتفضيلات المحلية
- RTL صريح وخط عربي وحركة وإعداد تقليل الحركة
- تهيئة Skia وCanvasKit وسلوك بديل
البنية والقرارات
- استخدمت واجهة AIProvider لفصل تجربة المحادثة عن تكامل مزود مستقبلي. المصادقة والإجابات محاكاة.
- حفظت المحادثات وتقدم القراءة محلياً لاستمرار تجربة الدراسة بين الجلسات.
- الخط العربي وتخطيط RTL والإلغاء وتفضيلات تقليل الحركة جزء من تصميم الواجهة.
من الشيفرة
واجهة أمامية بحد تكامل واضح
طورت BACUA كواجهة تطبيق دراسة للبكالوريا الجزائرية باللغة العربية.
يستكشف BACUA تجربة دراسة البكالوريا الجزائرية بالعربية عبر التهيئة واختيار الشعبة والدروس المنظمة والتقدم والدردشة المرتبطة بالسياق. تكمن قيمته في الواجهة وانتقالات الحالة. المصادقة وردود المساعد محاكاة؛ يحدد عقد AIProvider موضع اتصال خدمة حقيقية مستقبلاً دون ادعاء وجودها الآن.
تحفظ المحادثات وتقدم القراءة محلياً. ينتقل سياق الدرس إلى المحادثة ويحدث النص المتدفق الواجهة ويوقف الإلغاء الرد الجاري. تحتاج هذه التفاعلات حالة متسقة أثناء التنقل والتحديث وانقطاع المخرجات. اختيارات RTL والطباعة العربية جزء من التصميم وليست ترجمة للعناوين فقط.
التعامل مع النص المتدفق كمدخل غير مكتمل
كشف فحص الإصدار أن عنوان جدول Markdown جزئياً قد يدخل المحلل في حلقة لا تنتهي. يمكن أن تكون الرسالة صحيحة عند اكتمالها وغير صحيحة في إحدى بادئات البث. أصبح المحلل وحدة صافية بفحوص لكل بادئة، تشمل العناوين غير المكتملة والنص العربي.
يستخدم عرض الويب المدعوم البديل الموجود دون Skia. يبقى CanvasKit وعرض الأجهزة فحصين مستقلين. يمكن مستقبلاً ربط مزود حقيقي وتقييم استرجاع الدروس وفحص إتاحة الأجهزة؛ هذه خطة مستقبلية وليست وظائف منفذة.
حالة المشروع
تطبيق واجهة مصمم بعناية. المصادقة وإجابات المساعد محاكاة؛ لا يُفترض وجود خدمة ذكاء اصطناعي منشورة.
استخدم اعتماديات Expo SDK 54 المثبتة في القفل. لا يحتاج العرض خادماً أو بيانات مزود. الويب افتراضياً EXPO_PUBLIC_ENABLE_SKIA_WEB=0؛ القيمة 1 لمسار CanvasKit مستقل. يقبل الدخول المحاكى بيانات تجريبية؛ استخدم learner@example.test دون كلمة مرور حقيقية. التخزين محلي في الجهاز أو المتصفح وليس حساباً بعيداً.
فحوص التطوير وحدود التشغيل
نجح فحص الأنواع وتصدير Expo الثابت للويب. أمكن أن يدخل محلل Markdown في حلقة لا تنتهي عند وصول عنوان جدول جزئي أثناء البث؛ أُصلح وأضيفت فحوص لكل بادئة. يستخدم عرض الويب البديل الموجود دون Skia. نجح إكمال الرد المحاكى واستعادة المحادثة بعد التحديث والإلغاء. تبقى المصادقة محاكاة ويوضح شريط العرض ذلك. فحص الأجهزة ومسار CanvasKit الاختياري منفصلان ولم يكتملَا.
المصادقة وإجابات المساعد محاكاة محلية. البديل الافتراضي هو مسار العرض المدعوم؛ تفعيل EXPO_PUBLIC_ENABLE_SKIA_WEB=1 يختار CanvasKit غير المفحوص مستقلاً. لا ندعي نموذجاً حقيقياً أو أمان حساب بعيد أو مزامنة أجهزة.
التفاصيل التقنية ↗