نظام حجز الفعاليات
قمت بتطوير هذا المشروع كتطبيق متكامل من طرفين، يتيح للمستخدمين استعراض الفعاليات المتاحة والتسجيل فيها وإدارة حجوزاتهم بكل سهولة ويسر. يعتمد المشروع على بنية Full-Stack حديثة، حيث يتولى الـ Backend تقديم API قوي ومرن، بينما يوفر الـ Frontend تجربة مستخدم سلسة وسريعة الاستجابة.
الواجهة الخلفية
بُني الـ Backend باستخدام NestJS مع TypeScript، مما يضمن هيكلاً معيارياً قابلاً للتوسع بسهولة. يعتمد على MongoDB مع Mongoose لإدارة البيانات، ونظام JWT للمصادقة وحماية المسارات. تم تقسيم المشروع إلى وحدات مستقلة تشمل المصادقة، الفعاليات، الفئات، والحجوزات، مع تطبيق Guards لحماية المسارات وException Filters للتعامل مع الأخطاء بشكل موحد.
الواجهة الأمامية
تم بناء الـ Frontend باستخدام React وVite مع TypeScript، مما يجعله سريع الأداء وسهل الصيانة. يعتمد على Tailwind CSS لتصميم واجهة جذابة ومتجاوبة مع جميع أحجام الشاشات. تم تنظيم الكود ضمن صفحات ومكونات وخدمات API منفصلة، مع استخدام Custom Hooks لفصل منطق العمل عن العرض.
مميزات النظام
يتيح النظام للمستخدمين تصفح الفعاليات وتصنيفها حسب النوع والتاريخ، مع إمكانية حجز المقاعد ومراجعة الحجوزات السابقة وإلغائها. كما يتضمن لوحة تحكم خاصة بالمدير تمكنه من إضافة الفعاليات وتعديلها وحذفها، وإدارة الفئات والحجوزات والمستخدمين بشكل كامل. نظام التسجيل والدخول مؤمن بالكامل مع تشفير البيانات وإدارة الجلسات عبر JWT.
التوثيق والنشر
يأتي المشروع مع توثيق كامل للـ API عبر Postman، ومتاح للتجربة مباشرة عبر Vercel.
التقنيات المستخدمة: NestJS, React, Vite, TypeScript, MongoDB, Mongoose, JWT, Tailwind CSS