Skip to content

AlazabDev/UberFix.shop

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🛠️ UberFix - نظام إدارة الصيانة

UberFix Logo

📖 نظرة عامة

UberFix هو نظام متكامل لإدارة طلبات الصيانة مصمم خصيصاً للسوق المصري، يوفر منصة شاملة لربط العملاء بالفنيين وإدارة جميع عمليات الصيانة من البداية للنهاية.

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

Frontend

  • React 18 - مكتبة واجهة المستخدم
  • TypeScript - لغة البرمجة
  • Vite - أداة البناء والتطوير
  • Tailwind CSS - إطار تصميم CSS
  • Shadcn/ui - مكتبة مكونات UI
  • React Router - التنقل بين الصفحات
  • React Query - إدارة البيانات والتخزين المؤقت
  • React Hook Form - إدارة النماذج
  • Zod - التحقق من صحة البيانات

Backend

  • Supabase - قاعدة بيانات PostgreSQL
  • Edge Functions - وظائف خادم لا خدمية (Deno)
  • Resend - إرسال البريد الإلكتروني
  • Twilio - إرسال الرسائل النصية
  • Google Maps API - الخرائط والمواقع

خدمات خارجية

  • Resend - نظام البريد الإلكتروني
  • Twilio - الرسائل النصية والإشعارات
  • Google Maps - تحديد المواقع والمسافات

🚀 البدء السريع

المتطلبات الأساسية

Node.js >= 18
pnpm >= 8
Supabase CLI

التثبيت

  1. استنساخ المشروع
git clone <repository-url>
cd uberfix
  1. تثبيت التبعيات
pnpm install
  1. إعداد المتغيرات البيئية قم بإنشاء ملف .env في الجذر:
VITE_SUPABASE_URL=your_supabase_url
VITE_SUPABASE_ANON_KEY=your_supabase_anon_key
  1. تشغيل المشروع
pnpm dev

تثبيت وبناء نظيف للإنتاج

للحصول على بناء إنتاجي نظيف مع تثبيت التبعيات من الصفر، استخدم السكربت الجاهز:

bash scripts/production-build.sh

راجع دليل التشغيل الإنتاجي لمعرفة التفاصيل الكاملة والخطوات اليدوية البديلة.

العمل على نسخة Expo للهواتف

لديك فرع مخصص لتشغيل التطبيق عبر Expo على الهواتف الذكية بدلاً من نسخة الويب. اتبع دليل إعداد فرع Expo للهواتف للتبديل إلى الفرع الصحيح وتشغيل التطبيق على أجهزة Android أو iOS.

👥 الأدوار والصلاحيات

أدوار النظام

  1. العميل (Customer) - إنشاء ومتابعة طلبات الصيانة
  2. الفني (Technician) - استلام وتنفيذ طلبات الصيانة
  3. المدير (Admin) - إدارة كاملة للنظام

إعداد المسؤول الأول

راجع دليل ADMIN_SETUP.md للحصول على تعليمات مفصلة.

📱 الميزات الرئيسية

✨ للعملاء

  • 📝 إنشاء طلبات صيانة بسهولة
  • 📍 تحديد الموقع عبر الخريطة
  • 📊 متابعة حالة الطلبات في الوقت الفعلي
  • 💬 التواصل المباشر مع الفنيين
  • ⭐ تقييم الخدمة
  • 📧 إشعارات عبر البريد والرسائل

🔧 للفنيين

  • 📋 لوحة تحكم لإدارة المهام
  • 🗺️ عرض المواقع على الخريطة
  • ✅ تحديث حالة الطلبات
  • 📸 رفع صور العمل المنجز
  • 💰 إنشاء عروض الأسعار
  • 📱 إشعارات فورية

👨‍💼 للمديرين

  • 📊 لوحة تحكم شاملة
  • 👥 إدارة المستخدمين والأدوار
  • 📈 تقارير وإحصائيات مفصلة
  • ⚙️ إعدادات النظام
  • 🔍 سجل التدقيق (Audit Logs)
  • 💳 إدارة الفواتير والمدفوعات

🎯 نظام SLA (اتفاقية مستوى الخدمة)

يتضمن النظام مراقبة تلقائية لـ SLA مع مهل زمنية محددة:

مستويات الأولوية

  • عالية (High): قبول خلال ساعة، وصول خلال ساعتين، إنجاز خلال 8 ساعات
  • متوسطة (Medium): قبول خلال ساعتين، وصول خلال 4 ساعات، إنجاز خلال 24 ساعة
  • منخفضة (Low): قبول خلال 4 ساعات، وصول خلال 8 ساعات، إنجاز خلال 48 ساعة

إشعارات SLA

  • تلقائياً عند تجاوز المواعيد المحددة
  • إرسال عبر البريد الإلكتروني و SMS
  • تسجيل في نظام الإشعارات

📧 نظام الإشعارات

قوالب البريد الإلكتروني

تم تطوير قوالب احترافية باستخدام React Email:

  • 🔔 إشعارات طلبات الصيانة
  • ✅ طلبات الموافقة
  • 💰 الفواتير الإلكترونية
  • 📝 تأكيد التسجيل

القوالب المتاحة

// في: supabase/functions/_shared/email-templates/
- maintenance-notification.tsx  // إشعارات الصيانة
- approval-request.tsx           // طلبات الموافقة
- invoice-email.tsx              // الفواتير

تصميم القوالب

  • ✅ دعم كامل للغة العربية (RTL)
  • 🎨 ألوان العلامة التجارية: #f5bf23 (أصفر)، #111 (أسود)
  • 📱 تصميم متجاوب لجميع الأجهزة
  • 🖼️ شعار UberFix في الترويسة

🗂️ هيكل المشروع

راجع PROJECT_STRUCTURE.md للحصول على شرح مفصل لهيكل الملفات.

🔐 الأمان

Row Level Security (RLS)

  • ✅ تفعيل RLS على جميع الجداول الحساسة
  • 🔒 سياسات وصول دقيقة حسب الدور
  • 🛡️ حماية بيانات العملاء والفنيين

التدقيق

  • 📝 تسجيل جميع العمليات الحساسة
  • 👤 تتبع المستخدمين والإجراءات
  • ⏰ طوابع زمنية لكل عملية

البيانات الحساسة

  • 🔐 تشفير كلمات المرور
  • 🗝️ تخزين المفاتيح في Secrets
  • ❌ عدم تخزين بيانات الدفع

🔧 التطوير

الأوامر المتاحة

pnpm dev          # تشغيل في وضع التطوير
pnpm build        # بناء للإنتاج
pnpm preview      # معاينة بناء الإنتاج
pnpm lint         # فحص الكود

Edge Functions

supabase functions serve     # تشغيل محلي
supabase functions deploy    # نشر على الإنتاج

📄 الترخيص

هذا المشروع مخصص لشركة الأزعب للإنشاءات.

🤝 الدعم

للحصول على الدعم:

📝 ملاحظات مهمة

  1. امتثال البيانات: النظام يتوافق مع قانون حماية البيانات المصري رقم 151 لسنة 2020
  2. الأمان: لا تستخدم بيانات Demo في الإنتاج
  3. الترحيلات: ملفات supabase/migrations/ للقراءة فقط - استخدم أدوات Supabase للتعديل
  4. Edge Functions: يتم نشرها تلقائياً عند التحديث

🗺️ خارطة الطريق

  • تطبيق الهاتف المحمول الأصلي
  • نظام المحادثة المباشرة
  • التكامل مع بوابات الدفع
  • تقارير متقدمة وتحليلات
  • نظام نقاط الولاء


About

UberFix.shop

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •