نبذة عن المشروع:
منصة التعليم المتطورة هي منصة تعليمية رقمية متكاملة تم تطويرها كتطبيق متعدد المنصات باستخدام إطار عمل Flutter، وتهدف إلى ربط المتعلمين بالمعلمين في بيئة تعليمية مرنة وآمنة. تم تصميم التطبيق ليقدم تجربة مستخدم سلسة وعصرية، مع التركيز على واجهات مستخدم متطورة (UI/UX)، وإدارة فعّالة للحالة (State Management)، وتجربة تنقل مخصصة حسب نوع الجهاز، سواء على الهواتف الذكية أو الأجهزة اللوحية أو الويب.
**الميزات الأساسية:**
- **الشاشة الرئيسية:** تختلف حسب الدور، حيث تعرض للطلاب الدورات المميزة والتوصيات، وللمعلمين ملخص الأداء والإيرادات، وللمشرفين إحصائيات النظام والتنبيهات المهمة.
- **البحث في الدورات:** شريط بحث ذكي مع اقتراحات تلقائية، وفلاتر متقدمة حسب الفئة، السعر، التقييم، اللغة، والمدة، مع إمكانية الترتيب حسب الشعبية أو التاريخ.
- **تفاصيل الدورة:** عرض شامل للمحتوى، المُعلّم، المنهج، الفيديو الترويجي، التقييمات، والمراجعات، مع خيارات التسجيل، الإضافة إلى المفضلة، أو طرح الأسئلة.
- **الدورات المشتراة:** قائمة منظمة بالدورات المسجلة، مع مؤشر تقدم، وإمكانية استئناف المشاهدة من حيث توقف المستخدم.
- **مشغل الدورة:** وسائط متعددة تدعم الفيديو، العروض التقديمية، الاختبارات، والواجبات، مع ميزة تدوين الملاحظات وتنقل سلس بين الدروس.
- **قائمة المفضلة:** حفظ الدورات لشرائها لاحقًا، مع مزامنة عبر الأجهزة وإمكانية الانتقال المباشر إلى صفحة الشراء.
- **سجل المدفوعات:** عرض تفصيلي لجميع المعاملات السابقة، يتضمن اسم الدورة، التاريخ، المبلغ، وسيلة الدفع، وحالة العملية، مع إمكانية تنزيل الفاتورة.
- **الملف الشخصي:** إدارة البيانات الشخصية، تغيير كلمة المرور، إضافة وسائل الدفع، وتخصيص إعدادات الإشعارات.
- **لوحة تحكم المعلّم:** إنشاء الدورات، إدارة الطلاب، تتبع الإيرادات، الرد على الاستفسارات، وعرض تحليلات الأداء لكل دورة.
- **لوحة تحكم المشرف:** إدارة المستخدمين، مراجعة المحتوى، مراقبة المعاملات، توليد التقارير، وإدارة تذاكر الدعم الفني.
- **الإشعارات:** مركز مركزي للإشعارات الفورية مثل التحديثات، الرسائل، أو نتائج الاختبارات، مع إمكانية تمييزها كمقروءة أو حذفها.
- **الدعم الفني:** إرسال تذكرة دعم، متابعة الحالة، الوصول إلى الأسئلة الشائعة، ونموذج تواصل مباشر مع الفريق.
**مميزات التصميم:**
- الاعتماد الكامل على **مكتبة Material 3** لضمان مظهر حديث ومتسق مع دليل تصميم جوجل.
- تصميم متجاوب يتكيف تلقائيًا مع مختلف أحجام الشاشات باستخدام أدوات مثل `LayoutBuilder` و`Responsive Framework`.
- دعم **الوضع الداكن والفاتح** مع إمكانية التبديل من خلال إعدادات التطبيق.
- واجهات مستخدم مبنية بعناية مع تدرجات لونية واضحة، وأيقونات معبّرة، ومساحات بيضاء متوازنة لتحسين قابلية القراءة.
- التنقل عبر شريط تنقل سفلي في الهواتف، وقائمة جانبية في الويب، مع استخدام النوافذ المنبثقة للإجراءات الثانوية.
- تحميل الصور بكفاءة باستخدام مكتبة `cached_network_image` مع صور احتياطية عند الفشل.
**إدارة الحالة والبنية التقنية:**
- استخدام **Riverpod** كآلية رئيسية لإدارة الحالة، مما يضمن فصل المنطق عن واجهة المستخدم وتحقيق أداء عالٍ.
- بناء النماذج باستخدام **Freezed** لضمان الثبات (Immutability) ودعم التحقق من الحالة في وقت التشغيل.
- التعامل مع العمليات الآسيونكرنية عبر `AsyncValue` لعرض حالات التحميل، النجاح، أو الخطأ.
- استخدام `ConsumerWidget` و`HookConsumerWidget` لبناء واجهات ديناميكية تستجيب للتغيرات في الحالة.
- تنظيم الكود ضمن هيكل مجلدات واضح يفصل بين الطبقات (الواجهة، المنطق، الخدمات، النماذج).
- توثيق الكود بشكل دقيق لتسهيل الصيانة والتطوير المستقبلي.
**التقنيات المستخدمة:**
- **Flutter** – الإطار الأساسي للتطوير عبر المنصات.
- **Riverpod** – لإدارة الحالة بكفاءة وقابلية للتوسع.
- **Freezed** – لإنشاء نماذج بيانات غير قابلة للتغيير.
- **Firebase Authentication & Firestore** – للمصادقة، تخزين البيانات، والتحديثات الفورية.
- **Stripe / PayPal** – للدفع الآمن والموثوق.
- **cached_network_image** – لتحسين أداء تحميل الصور.
- **flutter_local_notifications** – لإرسال الإشعارات المحلية.
- **intl** – لدعم التنسيقات الدولية مثل التاريخ والعملة.
منصة التعليم المتطورة تمثل نموذجًا متقدمًا لمنصة تعليمية رقمية تجمع بين القوة الوظيفية، الجمالية البصرية، والأداء العالي، مما يجعلها خيارًا مثاليًا لكل من يسعى إلى بناء مستقبل التعليم الرقمي بطريقة احترافية وقابلة للتطوير.