

تم بناء منصة موحدة بنظام Turborepo تضم تطبيقين من تطبيقات Next.js 16 (البوابة العامة عبر المنفذ 3000 ولوحة الإدارة عبر المنفذ 3001) معززين بـ 13 حزمة داخلية مشتركة. يتميز النظام بعدم وجود أي نصوص ثابتة، حيث تُخزن جميع الأقسام والعقارات والميزات في PostgreSQL وتُعدل فورياً؛ مع مزامنة آنية فائقة السرعة عبر Supabase Realtime؛ ومستكشف خرائط تفاعلي عبر MapLibre GL وتجميع Supercluster؛ وتوافق كامل ثلاثي اللغات (العربية RTL بخط Cairo، والإنجليزية، والتركية)؛ وطبقة تشغيل احتياطية بدون اتصال (Offline Fallback)؛ ومركز أمان متقدم مع فحص تكرار كلمات المرور عبر pgcrypto وقفل الحسابات التلقائي.
تواجه المنصات العقارية الحديثة تحديات معمارية حاسمة: القوالب الجامدة التي تتطلب تدخلاً برمجياً لكل تعديل في العقارات أو اللافتات؛ وبطء انتقال التحديثات مما يسبب تبايناً بين لوحة الإدارة ومحرك بحث الزوار؛ وتشتت إدارة البوابة العامة عن النظام الإداري في مشاريع منفصلة؛ وضعف دعم الاتجاه من اليمين إلى اليسار (RTL) والخطوط العربية؛ وغياب أنظمة الأمان المؤسسية المتقدمة مثل الحماية من هجمات التخمين وسجلات التدقيق الجنائي.
تم بناء منصة موحدة بنظام Turborepo تضم تطبيقين من تطبيقات Next.js 16 (البوابة العامة عبر المنفذ 3000 ولوحة الإدارة عبر المنفذ 3001) معززين بـ 13 حزمة داخلية مشتركة. يتميز النظام بعدم وجود أي نصوص ثابتة، حيث تُخزن جميع الأقسام والعقارات والميزات في PostgreSQL وتُعدل فورياً؛ مع مزامنة آنية فائقة السرعة عبر Supabase Realtime؛ ومستكشف خرائط تفاعلي عبر MapLibre GL وتجميع Supercluster؛ وتوافق كامل ثلاثي اللغات (العربية RTL بخط Cairo، والإنجليزية، والتركية)؛ وطبقة تشغيل احتياطية بدون اتصال (Offline Fallback)؛ ومركز أمان متقدم مع فحص تكرار كلمات المرور عبر pgcrypto وقفل الحسابات التلقائي.
إطلاق منظومة عقارية متكاملة جاهزة للإنتاج تحقق تحديثات فورية في شاشات العملاء في غضون (~250-1000 مللي ثانية)، واستقراراً تاماً بنسبة 100% لواجهات RTL العربية دون أي تشوه في الخطوط أو المحاذاة، وتجميعاً سلساً لخرائط المتجهات بمعدل 60 إطاراً في الثانية، مع أمان مؤسسي فائق وتتبع شامل لسجلات النشاط.
بنية معمارية ثنائية التطبيقات: بوابة عامة عالية الأداء (apps/website) ولوحة تحكم إدارية شاملة (apps/admin) في مستودع موحد (Turborepo)
نظام إدارة محتوى ديناميكي 100%: بدون نصوص ثابتة، مع منشئ بصري لأقسام الصفحة الرئيسية بالسحب والإفلات (@dnd-kit) وإمكانية إخفاء/إظهار فورية
مزامنة آنية فائقة السرعة: مستمعات لقاعدة بيانات Supabase Realtime مع تحديث ذكي بمعدل تأخير 250 مللي ثانية لمنع إعادة التحميل العشوائية
مستكشف خرائط تفاعلي مخصص (/explore): محرك MapLibre GL بملء الشاشة مع تجميع Supercluster وعلامات أسعار تفاعلية وقائمة عقارات متزامنة
دعم ثلاثي اللغات وتوجيه كامل (RTL): تنقل سلس بين العربية والإنجليزية والتركية مع دعم كامل لخط Cairo وانعكاس دقيق للعناصر عبر Base UI
حاسبات تمويل وتكاليف الشراء: حاسبة أقساط رهن عقاري تفاعلية مع أشرطة تعديل الفائدة والمدة وتفصيل شامل لرسوم الطابو والضرائب والوساطة
مركز أمان متطور للمؤسسات: معايير أمان موحدة، منع إعادة استخدام كلمات المرور عبر pgcrypto bcrypt، قفل تلقائي للحسابات بعد محاولات فاشلة، وإلغاء الجلسات النشطة
نظام CRM متكامل لإدارة الاستفسارات: مسار متعدد المراحل للعملاء المحتملين (جديد ← مراجع ← تم التواصل ← متابعة ← تفاوض ← منجز) مع تعيين الموظفين وتدوين الملاحظات
مدير وسائط هرمي متعدد المجلدات: إدارة ملفات هرمية مع التحقق من أنواع الملفات، وسعة قصوى 10MB للصور و50MB للفيديو، وحذف التكرار عبر SHA-256
طبقة بيانات احتياطية بدون اتصال: أكثر من 260 سطراً من البيانات النموذجية تتيح تصفح واختبار المنصة بالكامل حتى في حال غياب الاتصال بقاعدة البيانات
صُممت المنصة بنظام Turborepo Monorepo وتضم تطبيقات Next.js 16.2.6 (App Router + Turbopack) وReact 19.2.4 بتصميم Tailwind CSS v4 ومكونات Base UI / Shadcn. تعتمد الطبقة الخلفية على Supabase (PostgreSQL 15+) مع 25 ترقية تسلسلية لملفات SQL وسياسات أمان صارمة (RLS) ودوال RPC المحمية. تستخدم الخرائط MapLibre GL مع متجهات MapTiler، بينما يُدار الأمان والتحقق عبر Zod وتشفير pgcrypto.
تصميم معمارية Turborepo مكونة من 13 حزمة داخلية مشتركة مع ضمان استقلاليتها الكاملة وتفادي أي اعتماديات دائرية بين تطبيقات Next.js 16
تطبيق مزامنة فائقة السرعة عبر Supabase Realtime مع نظام منع الوميض وتكرار التحديثات للحفاظ على كفاءة أداء المتصفح أثناء التعديلات الإدارية
بناء خريطة تفاعلية تدعم التوجيه من اليمين إلى اليسار (RTL) بدمج MapLibre GL مع إضافة mapbox-gl-rtl-text لضمان ظهور أسماء الشوارع العربية بالحروف المتصلة الصحيحة
برمجة محرك أمان لكلمات المرور وقفل الحسابات مباشرة داخل محرك PostgreSQL باستخدام خوارزميات pgcrypto bcrypt ودوال SECURITY DEFINER
تطوير طبقة تشغيل احتياطية ذكية تحاكي استعلامات قاعدة البيانات وتقدم بيانات واقعية تمنع انهيار النظام عند غياب الاتصال بقاعدة البيانات
معمارية المستودعات الموحدة المتقدمة (Monorepo): بناء التطبيقات المتعددة مع Turborepo وتوحيد رموز التصميم ومكتبات Tailwind CSS v4 المشتركة
أمان ونمذجة قواعد بيانات PostgreSQL: كتابة ترقيات SQL التسلسلية، وسياسات أمان مستوى الصف (RLS)، وضوابط الصلاحيات الصارمة (المالك/المشرف/المحرر)
تطبيقات الويب الجغرافية (Spatial): دمج MapLibre GL وضبط خوارزميات Supercluster وبناء محدد مواقع تفاعلي مع الترميز الجغرافي العكسي
مزامنة الحالة اللحظية: التوفيق بين صفحات Next.js المبنية على الخادم مع أحداث قنوات الويب سوكت الحية من Supabase Realtime
هندسة اللغات المتعددة والتوافق مع RTL: إدارة خطوط Google المتغيرة ديناميكياً، وانعكاس الواجهات، وتصميم جداول التصنيفات متعددة اللغات
تقديم منصة عقارية رقمية عالمية المستوى تجمع بين تجربة بحث عقاري استثنائية للجمهور وإدارة إدارية محكمة وسريعة تمنح الوكالات العقارية تحكماً كاملاً دون كتابة سطر كود واحد.
تم تنظيم الكود البرمجي في تطبيقين مستقلين يعملان بنظام Next.js 16 و13 حزمة داخلية مشتركة تُدار عبر Turborepo:
apps/website: البوابة العقارية العامة (المنفذ 3000) مع دليل العقارات، مستكشف الخرائط التفاعلي، حاسبة التمويل، والصفحة الرئيسية الديناميكية
apps/admin: لوحة التحكم الإدارية (المنفذ 3001) مع صلاحيات متعددة المستويات، محرر العقارات، مسار إدارة العملاء (CRM)، ومركز الأمان
13 حزمة برمجية متخصصة: واجهات الاستخدام (@workspace/ui)، الخرائط، الهوية البصرية، اللغات (RTL)، إدارة البيانات، قاعدة البيانات، والأنماط المشتركة
بُنيت البنية الخلفية عبر 25 ترقية SQL تسلسلية تضمن تكامل البيانات وأعلى معايير أمان مستوى الصف (RLS):
المخطط الأساسي والتصنيفات: اللغات، أدوار المستخدمين (مالك، مشرف، محرر)، التصنيفات، المواقع، وسائل الراحة، والعقارات مع البحث النصي الكامل
نظام إدارة المحتوى الديناميكي: جدول الترجمات الشامل، أقسام الموقع، إعدادات المظهر والـ SEO في JSONB، وقوائم التنقل
أمان مستوى الصف (RLS): صلاحيات قراءة عامة للعقارات المنشورة وصلاحيات كتابة مقتصرة على الموظفين مع اشتراكات Realtime
حاويات التخزين ومنع تكرار الوسائط: حاويات للملفات والصور مع دوال تخزين تمنع تكرار الملفات المتطابقة
سجلات التدقيق والحذف المؤقت: تسجيل تفصيلي لنشاط المستخدمين، عناوين IP، واستعادة العناصر المحذوفة من سلة المهملات
بنية أمنية متكاملة متعددة الطبقات لحماية العمليات الإدارية، وبيانات الموظفين، ومعلومات العملاء:
فحص تكرار كلمات المرور المشفر: سجل كلمات مرور مشفر بالكامل باستخدام pgcrypto crypt() وأملاح Blowfish داخل PostgreSQL
محرك القفل التلقائي للحسابات: حظر تلقائي بعد عدد محدد من المحاولات الفاشلة مع صلاحية الفك المقتصرة على المالك فقط
إلغاء الجلسات النشطة وتحديث الإصدار: إبطال فوري لجميع جلسات المستخدم عبر كافة الأجهزة عند تغيير كلمة المرور عبر session_version
حواجز حماية الإجراءات البرمجية (Server Actions): بوابات تحقق صارمة تضمن تنفيذ العمليات الحساسة من قبل المالك أو المشرف فقط
بنية لغوية أصلية متكاملة تدعم العربية (RTL) والإنجليزية والتركية دون أي عيوب في المحاذاة أو العرض:
التوجيه الديناميكي للغات: مدعوم بواسطة next-intl بمسارات صريحة (/ar, /en, /tr) مع تحويل اتجاه المستند تلقائياً
الخطوط العربية الأصيلة: تحميل محسّن لخط Google Cairo لضمان وضوح النصوص وتناسق المسافات العمودية
انعكاس الواجهات البرمجية: مزود DirectionProvider من Base UI يعكس القوائم الجانبية، الأزرار، والبطاقات تلقائياً في الوضع العربي
خرائط متجهات تدعم العربية: دمج MapLibre مع إضافة mapbox-gl-rtl-text لربط حروف أسماء الشوارع والمدن العربية بالشكل الصحيح
آليات اتصال لحظية وطبقة بيانات احتياطية تضمن استمرارية واستقرار العمل في مختلف الظروف:
بث Supabase Realtime الفوري: اتصال مباشر بقنوات التغيير يحدّث واجهات الزوار في (~250-1000 مللي ثانية) دون الحاجة لإعادة تحميل الصفحة
تحديث ذكي ومضاد للتكرار: مكون RealtimeRefresher يطبق تأخيراً مدروساً (250ms) لمنع تكدس التحديثات المتتالية
طبقة بيانات افتراضية قوية (Offline Fallback): أكثر من 260 سطراً من البيانات المتكاملة تضمن تجربة كاملة وسلسة عند انقطاع الاتصال بقاعدة البيانات