EduNova هي منصة تعليمية إلكترونية متكاملة (Learning Management System) تهدف إلى سد الفجوة بين المعلمين والطلاب. تتيح المنصة للمعلمين إنشاء وبيع دوراتهم التعليمية بكل سهولة، وتوفر للطلاب بيئة تفاعلية لاكتشاف الكورسات، شرائها، ومتابعة تقدمهم الدراسي. تم بناء المشروع بالاعتماد على أحدث تقنيات الـ Full-Stack لضمان أداء عالٍ، أمان، وتجربة مستخدم (UX/UI) استثنائية.
التقنيات المستخدمة (Tech Stack)
- لواجهة الأمامية (Frontend - Client)
إطار العمل الأساسي: React
التصميم والتنسيق: Tailwind CSS
إدارة الحالة وجلب البيانات: React Query للتعامل مع البيانات القادمة من السيرفر بكفاءة، و React Router v7 للتنقل بين الصفحات.
- الواجهة الخلفية (Backend - Server)
بيئة التشغيل وإطار العمل: Node.js و Express.js لبناء واجهة برمجة تطبيقات (RESTful API) قوية.
قاعدة البيانات: MongoDB مع استخدام Mongoose
التخزين: التكامل مع Cloudinary و Multer لرفع وتخزين الوسائط مثل الصور المصغرة ومقاطع الفيديو.
البوابات المالية: دمج Stripe لمعالجة المدفوعات والاشتراكات بشكل آمن وموثوق.
الأمان والمصادقة (Authentication & Security)
إدارة الحسابات: استخدام Clerk كنظام متطور لإدارة تسجيل الدخول، إنشاء الحسابات
المميزات الأساسية (Key Features)
1. واجهة وتجربة الطالب (Student Experience)
تصفح الكورسات: صفحة رئيسية (Home) تحتوي على أقسام تفاعلية مثل بطل الصفحة (Hero)، مميزات المنصة، آراء الطلاب (Testimonials)، وقائمة لأفضل الكورسات.
نظام الفلترة والبحث: صفحة مخصصة للبحث عن الكورسات وعرض تفاصيل كل دورة (Course Details) قبل الشراء.
إدارة المشتريات: سلة مشتريات (Cart)، وقائمة أمنيات (Wishlist) لحفظ الدورات المفضلة.
بيئة التعلم (Player): مشغل فيديو متطور لمتابعة الدروس مع نظام يتتبع "نسبة الإنجاز" (Course Progress) وتحديد الدروس المكتملة.
كوبونات الخصم: إمكانية إدخال كود خصم أثناء عملية الدفع للاستفادة من العروض.
2. لوحة تحكم المعلم (Educator Dashboard)
الإحصائيات العامة (Dashboard): لوحة تحكم تعرض أرباح المعلم، عدد الطلاب المسجلين، ورسوم بيانية لتقييم الأداء العام.
إدارة المحتوى (CRUD): صفحات متكاملة تتيح للمعلم إضافة كورسات جديدة (Add Course)، وتعديل الكورسات الحالية (Edit Course) بما يشمل رفع الفيديوهات وتحديد الأسعار.
إدارة العروض الكوبونات (Coupons): لوحة خاصة لتوليد وإدارة كوبونات الخصم الترويجية للدورات الخاصة به.
متابعة التسجيلات (Enrollments): صفحة خاصة لرؤية الطلاب المشتركين في كل دورة وحالة اشتراكهم.