Moride هي منصة نقل ذكية ومتطورة تهدف إلى تسهيل عملية التنقل وجعلها أكثر كفاءة وذكاء من خلال نظام متعدد الأدوار يشمل المستخدمين والسائقين.
تم بناء المشروع باستخدام TypeScript مع React وTailwind CSS للواجهة الأمامية، وNestJS كخادم خلفي، مع قاعدة بيانات MongoDB. كما يعتمد المشروع على بنية حديثة في النشر والصيانة، مع استخدام Docker لتوحيد بيئة العمل، وأنظمة CI/CD عبر GitHub Actions، ونشر مستقر على AWS EC2 مع سيرفر Nginx
المميزات الرئيسية:
نظام تسجيل دخول متقدم:
دعم المصادقة عبر Google OAuth، تسجيل عادي مع التحقق عبر البريد الإلكتروني، استعادة وتحديث كلمة المرور، وتفعيل الحماية باستخدام JWT.
أدوار متعددة:
المستخدم: إنشاء حساب، بناء ملف شخصي، نشر رحلات، مشاركة الرحلات مع الآخرين، اختيار السائق المفضل، عرض الأسعار وتحديد مواقع الرحلات، ومتابعة رحلاته عبر Dashboard مخصص.
السائق: إنشاء حساب خاص، إدارة ملفه الشخصي، إضافة وتعديل معلومات السيارات، تلقي التقييمات، والتقدم للرحلات المنشورة للربح.
التواصل الفوري:
دعم الدردشة الحية بين المستخدمين والسائقين باستخدام WebSocket.io لتعزيز التفاعل والتنسيق.
واجهة مستخدم متجاوبة (Responsive):
تصميم الواجهة بحيث تتكيف بشكل كامل مع جميع أنواع الشاشات (هواتف ذكية، تابلت، حواسيب)، لضمان تجربة استخدام سلسة في أي جهاز.
RESTful API كاملة مع عمليات CRUD لإدارة البيانات بسلاسة وأمان.
رفع الملفات:
تخزين الملفات والبيانات المرتبطة في AWS S3 لتوفير استقرار وأمان عالي.
الأمان:
تطبيق ممارسات أمان متقدمة لحماية بيانات المستخدمين والتأكد من صحة العمليات باستخدام التحقق، التشفير، وإدارة الجلسات.
التقنيات المستخدمة:
Frontend: React, TypeScript, Tailwind CSS
Backend: NestJS, MongoDB
DevOps: Docker, GitHub Actions (CI/CD), AWS EC2، Nginx
التخزين: AWS S3
المصادقة والأمان: JWT, Google OAuth, Email Validation
التواصل: WebSocket.io
الهدف من المشروع:
توفير منصة نقل متكاملة تجمع بين سهولة الاستخدام، الأمان، والتفاعل الذكي بين المستخدمين والسائقين، مما يسهل رحلات التنقل ويجعلها أكثر تخصيصًا ومرونة.