تفاصيل العمل

## مشروع متجر إلكتروني للبقالة (FreshMart)

مشروع **متجر إلكتروني متكامل لبيع المنتجات الغذائية** تم تطويره باستخدام أحدث تقنيات الويب. يوفر النظام تجربة تسوق سهلة للمستخدمين مع لوحة تحكم للإدارة لإدارة المنتجات والطلبات.

المشروع مبني بهيكلية **Full Stack** باستخدام React في الواجهة الأمامية و Node.js و MongoDB في الواجهة الخلفية.

---

## مميزات المشروع

### واجهة المستخدم

* صفحة رئيسية تعرض المنتجات المميزة والفئات

* عرض جميع المنتجات مع إمكانية **البحث والتصفية حسب الفئة**

* صفحة تفاصيل لكل منتج

* تصميم متجاوب يعمل على **الكمبيوتر والموبايل**

### نظام التسوق

* إضافة المنتجات إلى **سلة التسوق**

* تعديل الكميات داخل السلة

* إتمام عملية الطلب بسهولة

### نظام المستخدمين

* تسجيل حساب جديد

* تسجيل الدخول

* حفظ بيانات المستخدم في قاعدة البيانات

* صفحة حساب المستخدم تحتوي على **سجل الطلبات**

### نظام الطلبات

* كل طلب يتم حفظه في قاعدة البيانات

* ربط الطلبات بحساب المستخدم

* إمكانية عرض **تاريخ الطلبات**

### لوحة تحكم الإدارة (Admin Dashboard)

لوحة تحكم خاصة بالمشرف تسمح بـ:

* إضافة منتجات جديدة

* تعديل بيانات المنتجات

* حذف المنتجات

* إدارة محتوى المتجر بسهولة

---

## التقنيات المستخدمة

### الواجهة الأمامية (Frontend)

* React 18

* Vite

* React Router

* Tailwind CSS

* Context API لإدارة الحالة

* Lucide React للأيقونات

* Sonner لإشعارات النظام

### الواجهة الخلفية (Backend)

* Node.js

* Express.js

* MongoDB

* Mongoose

---

## هيكلية المشروع

المشروع مقسم إلى قسمين رئيسيين:

### Frontend

يحتوي على:

* المكونات القابلة لإعادة الاستخدام

* صفحات الموقع مثل:

* الصفحة الرئيسية

* صفحة المنتجات

* صفحة تفاصيل المنتج

* صفحة السلة

* تسجيل الدخول

* التسجيل

* لوحة تحكم الإدارة

* صفحة حساب المستخدم

### Backend

* خادم API مبني باستخدام Express

* اتصال بقاعدة بيانات MongoDB

* إدارة المستخدمين والمنتجات والطلبات

---

## تشغيل المشروع

لتشغيل المشروع يجب تشغيل الواجهة الأمامية والخلفية:

1. تشغيل خادم الـ Backend

2. تشغيل خادم الـ Frontend

3. فتح الموقع عبر المتصفح

---

## قاعدة البيانات

المشروع يعتمد على **MongoDB** لتخزين:

* المستخدمين

* المنتجات

* الطلبات

كما يوجد ملف بيانات أولية يمكن استخدامه لملء قاعدة البيانات عند التشغيل لأول مرة.

بطاقة العمل

اسم المستقل
عدد الإعجابات
0
عدد المشاهدات
1
تاريخ الإضافة
تاريخ الإنجاز
المهارات