EvoMarket
EvoMarket Logo
منصة رقمية المغرببنية فول ستاكأمان الويب المغربنشر Dockerوكالة ويب المغرب

المنصة الرقمية الاحترافية في المغرب : ما تجرؤ قليل من الوكالات على بنائه

20 يونيو 2026
8 min
EvoMarket

الهوّة التي لا يريك أحد

في المغرب، انقسق سوق وكالات الويب إلى عالمين متوازيين. في أحدهما، مئات المزودين الذين يسلّمون مواقع WordPress وقوالب Shopify وصفحات Wix بضع آلاف من الدراهم. وفي الآخر، عدد ضئيل جداً من الفرق القادرة على بناء منصات رقمية احترافية حقيقية — أنظمة تتعامل مع البيانات الحساسة والمعاملات المالية والفرق وآلاف المستخدمين المتزامنين.

الفرق بين هذين العالمين لا يتعلق بالسعر فحسب. يتعلق بـالخيارات المعمارية الجوهرية — قرارات تُتخذ قبل السطر الأول من الكود وتحدد ما إذا كانت المنصة ستصمد بعد 6 أشهر أو سنتين أو تحت حمل غير متوقع.

في EvoMarket، نبني منصات في العالم الثاني. إليك ما يعنيه ذلك على أرض الواقع.

---

1. قاعدة بيانات ترقى إلى مستوى طموح المشروع

اختيار قاعدة البيانات هو القرار الأول الذي يفصل المشروع الهاوي عن المشروع الاحترافي.

PostgreSQL : معيار المنصات الجادة

تستخدم منصاتنا PostgreSQL — لا MySQL، ولا SQLite، ولا قاعدة بيانات NoSQL عامة. تتيح PostgreSQL:

قيوداً علائقية صارمة (مفاتيح خارجية، cascades) تضمن سلامة البيانات في جميع الأوقات
معاملات ACID تمنع الحالات المتضاربة في حالة حدوث خطأ أو انقطاع
البحث النصي الكامل بـ`pg_trgm` — كما في Electro Sky حيث يتحمل كل بحث عن منتج الأخطاء الإملائية والمطابقات الجزئية، مع تسجيل تلقائي لكل استعلام
أداء محسَّن للاستعلامات المعقدة على ملايين الصفوف

في Saidia Bay، تستند إدارة تعارضات الحجوزات وفترات التسعير الموسمي والتدفقَين التجاريين (إيجار + بيع) كلياً على مخطط PostgreSQL مُنمذَج بدقة مع Prisma ORM — مما يضمن تناسق الأنواع بين قاعدة البيانات وكود TypeScript.

المخطط : قرار استراتيجي لا تقني

مخطط قاعدة بيانات سيئ في موقع تجارة إلكترونية مغربي قد يعني عدم القدرة على إضافة متغيرات المنتج دون ترحيل محفوف بالمخاطر، أو عدم إمكانية وضع أسعار متعددة لنفس المنتج، أو عدم تتبع سجل تحركات المخزون.

في Electro Sky، نمّطنا منذ اليوم الأول: منتجات بمتغيرات (اللون، التخزين)، تحركات المخزون بسجل كامل (ADD/REMOVE)، الموردين، تعدد الأدوار، و`ActionLog` / `SearchLog` لتتبع كامل. أكثر من 15 جدولاً مترابطاً — أساس يمكنه التطور دون الحاجة لإعادة البناء.

---

2. الأمان : أبعد بكثير من HTTPS

قفل HTTPS هو الحد الأدنى. تُطبّق المنصة الاحترافية أماناً متعمقاً في كل طبقة.

OTP 2FA : المصادقة الثنائية عبر البريد الإلكتروني

في Saidia Bay وElectro Sky، يتطلب وصول المسؤول OTP مُرسَلاً بالبريد الإلكتروني عند كل تسجيل دخول. هذا ليس اختيارياً — إنه حماية حقيقية ضد هجمات حشو بيانات الاعتماد والوصول غير المصرح به.

يذهب Electro Sky أبعد من ذلك: أي تعديل حساس على الملف الشخصي (البريد الإلكتروني، الهاتف، كلمة المرور) يُطلق تأكيد OTP جديداً. يمنع سجل كلمات المرور إعادة استخدام كلمات المرور القديمة.

تدوير JWT وإدارة الجلسات

لرموز JWT مدة صلاحية قصيرة. يدير Redis 7 في Electro Sky تدوير رموز التحديث — إذا سُرق رمز، يصبح غير صالح عند التدوير التالي. إلغاء الجلسة فوري.

في Saidia Bay، يحمي تسجيل الخروج التلقائي بعد 5 دقائق من الخمول الجلسات على محطات العمل المشتركة — سيناريو حقيقي في وكالات العقارات المغربية حيث يتشارك الموظفون الأجهزة.

الحد من المعدل العالمي على الـ Reverse Proxy

في Electro Sky، يُطبّق Caddy (الـ reverse proxy) حداً عالمياً للمعدل قبل أن تصل الطلبات إلى الـ API — حماية ضد هجمات القوة الغاشمة والبوتات على مستوى البنية التحتية بدلاً من مستوى التطبيق.

التحقق من الوسائط بـ Magic Bytes

يستخدم رفع الصور في Electro Sky Cloudinary مع التحقق من magic bytes — التحقق من أن الملف صورة فعلاً من بايتاته الأولية، لا من امتداده فحسب. يمنع هذا رفع ملفات ضارة مُتنكّرة في شكل صور.

---

3. الوقت الفعلي : ميزة تجارية لا مجرد زخرفة

يُقدَّم الوقت الفعلي كثيراً باعتباره ميزة "جيد وجودها". في Electro Sky، هو جوهر العمل التجاري.

نموذج click-and-collect يعمل لأنه عندما يؤكد عميل طلبه، يرى الصرّاف على بُعد 200 متر الطلبَ يظهر على شاشته في أقل من ثانية. دون وقت فعلي، يفشل النموذج — يصل العميل إلى المنضدة قبل أن يجهّز الصراف طلبه.

بنية Socket.io

نفّذنا غرفة مخصصة `orders_room` في Socket.io مع:

أحداث `new_order` و `order_status_changed` مُصدَرة من خادم Fastify عند كل تغيير في الحالة
استقبال على جانب لوحة التحكم دون إعادة تحميل الصفحة
معالجة إعادة الاتصال التلقائية للاتصالات غير المستقرة (شبكة 4G داخل المتجر)

يدعم خادم Fastify + Node.js 20 غير المتزامن اتصالات صرافين متعددين في آنٍ واحد دون تدهور — نقطة حاسمة لمتجر بعدة كاشيرات.

---

4. لوحة تحكم المسؤول : أداة قرار لا مجرد قائمة بيانات

لوحة تحكم المسؤول الاحترافية ليست قائمة بيانات خام. إنها أداة قرار تحوّل البيانات إلى رؤى قابلة للتطبيق.

في Electro Sky، يمتلك المسؤول:

الإيرادات الموحدة حسب الفترة مع رسوم بيانية لـ 30 يوماً بالوقت الفعلي (Recharts)
أفضل 10 منتجات — لتحديد الأكثر مبيعاً وتعديل المخزون وفقاً لذلك
مقاييس الأداء الفردي لكل صرّاف — لتحديد عدم الكفاءات التشغيلية
تنبيهات تلقائية لانخفاض المخزون — لعدم المفاجأة خلال الطلب المرتفع
`ActionLog` كامل — كل إجراء من كل مستخدم مُتتبَّع مع الطابع الزمني والسياق

في Saidia Bay، يدير المسؤول أيضاً CMS الصفحة الرئيسية الكامل: إعادة ترتيب carousel البطل، تفعيل/تعطيل البانرات، CTA قابلة للتخصيص، وتحليلات النقر لكل بانر لقياس فعالية كل ترويج — كل ذلك دون لمس الكود.

---

5. النشر : جاهز للإنتاج منذ اليوم الأول

النشر هو الخطوة التي تتسرع فيها كثير من الوكالات. "يعمل محلياً" ليس ضماناً للإنتاج.

Docker Compose : بيئات قابلة للتكرار

يعمل Electro Sky على VPS Contabo (4 vCPU / 8 GB RAM) تحت Ubuntu 24.04 LTS مع Docker Compose — كل خدمة (API Fastify، PostgreSQL 16، Redis 7، Caddy) تعمل في حاويتها المعزولة.

المزايا الفعلية:

قابلية التكرار: بيئة التطوير مطابقة للإنتاج
العزل: عطل إحدى الخدمات لا يؤثر على الأخريات
قابلية التوسع: إضافة نسخة API خلف موازن تحميل أمر بسيط

Caddy : SSL تلقائي بدون تعقيدات

يدير Caddy شهادات Let's Encrypt SSL تلقائياً — تجديد تلقائي، إعادة توجيه HTTP إلى HTTPS، وحد عالمي للمعدل، دون تكوين nginx/certbot يدوي. هذا مكسب موثوقية تشغيلية كبير لوكالة مغربية تدير مشاريع متعددة.

Railway للمشاريع الخفيفة

تستخدم Saidia Bay Railway.app — منصة PaaS تتعامل مع تنسيق Docker ومتغيرات البيئة والنشر التلقائي من Git. إنها الحل المثالي للمشاريع فول ستاك التي لا تحتاج بعد إلى VPS مخصص ولكنها تريد بنية تحتية جادة منذ البداية.

---

ما الذي يغيّره هذا في عملك التجاري

هذه الخيارات التقنية ليست غاية في حد ذاتها. لها عواقب مباشرة على عملك التجاري:

PostgreSQL + مخطط صارم → صفر فساد بيانات، صفر حجز مزدوج، صفر تعارض في المخزون
OTP 2FA + تدوير JWT → وصول المسؤول محمي حتى لو تعرضت كلمة مرور للاختراق
Socket.io بالوقت الفعلي → نموذج click-and-collect قابل للتطبيق، تقليل أخطاء الكاشير
Docker + VPS مخصص → uptime مضمون، أداء متوقع، لا مشاركة مع آخرين على نفس الخادم
لوحة التحليلات → قرارات مبنية على البيانات لا على الحدس

---

مستعد لبناء منصة رقمية حقيقية؟

إذا كنت شركة مغربية تحتاج أكثر من موقع عرض — إذا كنت تدير طلبات أو فرقاً أو مخزوناً أو معاملات أو مستخدمين — فأنت تستحق منصة مبنية وفق المعايير نفسها لـ Saidia Bay وElectro Sky.

EvoMarket هي إحدى الوكالات القليلة جداً في المغرب التي تبني بهذا المستوى. تحدث معنا عن مشروعك.

EvoMarket تدفع عملك نحو النجاح.

📞 06 24 45 88 47 — 05 37 70 59 11

📧 evomarketagency@gmail.com

📱 @evomarket.ma