EvoMarket
EvoMarket Logo
مشروع ويب المغربتطوير فول ستاكSaidia BayElectro Skyوكالة ويب المغربNext.js المغرب

كيف تبني مشروعاً ويب متميزاً في المغرب : دروس من Saidia Bay و Electro Sky

20 يونيو 2026
8 min
EvoMarket

ماذا يعني "المستوى الرفيع" في الرقمي المغربي؟

ثمة فرق جوهري بين موقع ويب مغربي عادي ومنصة رقمية عالية المستوى. هذا الفرق لا يظهر للعيان من الوهلة الأولى — لا يكمن في السعر، ولا حتى في التصميم. يكمن في القرارات التقنية غير المرئية: بنية قاعدة البيانات، وتطبيق الأمان، والأداء الفعلي تحت الحمل الحقيقي، وقدرة النظام على النمو مع المشروع التجاري.

في EvoMarket، بنينا مشروعين يجسّدان هذا المستوى من الاحترافية: Saidia Bay، منصة عقارية فول ستاك لساحل البحر المتوسط المغربي، وElectro Sky، نظام تجارة إلكترونية بالوقت الفعلي لمتجر إلكترونيات في الرباط.

إليك ما كشف عنه بناء هاتين المنصتين حول ما يعنيه العمل الرقمي الاحترافي الحقيقي في المغرب.

---

Saidia Bay : عندما تدير منصة عقارية نموذجين تجاريين في آنٍ واحد

السياق

Saidia Bay (saidibay.ma) هي منصة عقارية مخصصة للمنتجع الشاطئي للسعيدية في شمال شرق المغرب. كان لدى العميل متطلب معقد: إدارة نوعين من المعاملات على نفس العقارات في آنٍ واحد — الإيجار الموسمي مع حجوزات التقويم، وبيع العقارات مع متابعة قائمة العملاء المحتملين بشكل منظم.

نموذجان تجاريان مختلفان، وتطبيق واحد متسق. هنا تبدأ الطموحات التقنية.

نقطة القوة #1 — محرك تسعير موسمي ديناميكي

سعر الليلة في فيلا بالسعيدية لا يكون متماثلاً في أغسطس، وخلال رمضان، وفي الموسم المنخفض. بدلاً من إجبار المسؤول على تحديث الأسعار يدوياً في كل فترة، صممنا محرك `PricePeriod` الذي يتيح:

تحديد عدد غير محدود من فترات التسعير بأسعار ليلة مختلفة لكل فترة
حساب التكلفة الإجمالية تلقائياً مع تفصيل ليلة بليلة مرئي للعميل قبل التأكيد
اكتشاف الفترات المتداخلة وإدارتها بذكاء لمنع التعارضات في التسعير

هذا المستوى من الدقة نادر في منصات العقارات المغربية، حيث تكتفي معظمها بسعر ثابت واحد.

نقطة القوة #2 — التحقق من تعارض الحجوزات على جانب الخادم

لا يمكن حجز عقار مرتين في نفس التواريخ. يبدو الأمر بديهياً، لكن أغلب الأنظمة البسيطة لا تتحقق من هذا إلا على جانب العميل — مما يخلق تعارضات حقيقية عند الحجز المتزامن من قِبل مستخدمَين في نفس الوقت.

يتحقق نظامنا من كل حجز مقابل قاعدة البيانات من جانب الخادم، باستخدام خوارزمية اكتشاف الفترات الزمنية المتداخلة بالوقت الفعلي. لا يمر أي حجز دون فحص حالة التوفر الفعلية — وليس النسخة المخزنة مؤقتاً في متصفح العميل.

نقطة القوة #3 — نموذجان تجاريان في بنية موحدة

تتعايش إدارة الإيجار (تدفق PENDING → CONFIRMED → COMPLETED) وإدارة البيع (خط أنابيب NEW → CONTACTÉ → QUALIFIÉ → CONCLU) داخل لوحة تحكم المسؤول نفسها، مع واجهات مخصصة وتنبيهات بريد إلكتروني تلقائية في كل مرحلة وتحليلات منفصلة لكل نشاط.

هذا يلغي الحاجة لأن يتنقل المسؤول بين أداتين منفصلتين ويمركز الرؤية التجارية الكاملة في مكان واحد.

نقطة القوة #4 — خرائط تفاعلية وأمان مسؤول محكم

يعرض كل عقار موقعه الدقيق على خريطة Leaflet + OpenStreetMap تفاعلية مع إحداثيات GPS المخزنة في قاعدة البيانات. يمكن للمشترين المحتملين تقييم القرب من البحر والطرق والمرافق مباشرة من صفحة العقار.

على صعيد الأمان، يُحمى وصول المسؤول بـOTP 2FA إلزامي (تأكيد بالبريد الإلكتروني) وتسجيل خروج تلقائي بعد 5 دقائق من الخمول — قيد مُصمَّم للبيئات حيث يتشارك عدة أشخاص نفس جهاز الكمبيوتر.

المكدس التقني لـ Saidia Bay

`Next.js 14 · React 18 · TypeScript · Tailwind CSS · GSAP · Express.js · Node.js · PostgreSQL · Prisma ORM · Leaflet + OpenStreetMap · Zustand · TipTap · Cloudinary · Resend + Nodemailer · Railway · Docker`

---

Electro Sky : التجارة الإلكترونية بالوقت الفعلي لمتجر فيزيائي بالرباط

السياق

Electro Sky (electrosky.ma) متجر إلكترونيات فيزيائي في الرباط. تمثّل المشروع في بناء منصة تجارة إلكترونية بنموذج click-and-collect: يطلب العملاء عبر الإنترنت من هواتفهم ويستلمون مشترياتهم من المتجر في غضون 30 دقيقة.

يفرض هذا النموذج قيوداً تقنية لا تستطيع حلول التجارة الإلكترونية القياسية كـ Shopify معالجتها: يجب أن يرى الصرافون الطلبات بالوقت الفعلي، ويجب أن يتحدث المخزون آنياً، ويجب أن تكون الصلاحيات قابلة للتخصيص لكل موظف.

نقطة القوة #1 — الوقت الفعلي بـ Socket.io

هذا هو الجوهر التقني لـ Electro Sky. عندما يؤكد عميل طلبه من هاتفه، يراه الصراف على المنضدة يظهر في أقل من ثانية واحدة، دون إعادة تحميل الصفحة.

نفّذنا:

غرفة Socket.io مخصصة (`orders_room`) للإشعارات الفورية بالطلبات
أحداث `new_order` و `order_status_changed` متزامنة بين واجهة المتجر ولوحة تحكم المسؤول
بنية خادم خلفي Fastify + Node.js 20 غير متزامنة لاستيعاب اتصالات متزامنة متعددة دون تدهور في الأداء

هذا المستوى من الاستجابة يحوّل إدارة صف الكاشير إلى عملية سلسة واحترافية.

نقطة القوة #2 — التحكم الدقيق بالوصول: 3 مستويات من الأدوار

ليس لكل متجر نفس هيكل الفريق. يعمل في Electro Sky عدة صرافون بمسؤوليات مختلفة. يتيح نظام الأذونات لدينا للمسؤول:

إنشاء حسابات صرافين مع وصول محدود لوحدات بعينها فقط (الطلبات، المخزون، العملاء، التحليلات...)
تعديل أذونات صرّاف واحد دون التأثير على الآخرين
تسجيل كل إجراء من كل مستخدم في `ActionLog` كامل للتدقيق والتتبع

نقطة القوة #3 — لوحة تحليلات كاملة

يمتلك المسؤول لوحة تحكم مع:

الإيرادات حسب الفترة (يوم، أسبوع، شهر)
أفضل 10 منتجات مبيعاً
مقاييس الأداء الفردية لكل صرّاف
تنبيهات تلقائية للمنتجات التي تنخفض عن الحد الأدنى للمخزون
رسوم بيانية لـ 30 يوماً بالوقت الفعلي (Recharts)

نقطة القوة #4 — البحث النصي الكامل ومسار التدقيق الشامل

يستخدم البحث عن المنتجات امتداد PostgreSQL `pg_trgm` — بحث نصي كامل عالي الأداء يتحمل الأخطاء الإملائية والتطابقات الجزئية، وهو أفضل بكثير من استعلام SQL `LIKE` البسيط.

يُسجَّل كل بحث مستخدم في `SearchLog` للتحليلات المستقبلية، وكل إجراء مسؤول في `ActionLog` — تتبع كامل لكل ما يجري على المنصة.

نقطة القوة #5 — نشر الإنتاج على VPS مع Docker

يعمل Electro Sky على VPS Contabo (4 vCPU / 8 GB RAM) تحت Ubuntu 24.04 LTS مع:

Docker Compose لتنسيق الخدمات: API وقاعدة بيانات PostgreSQL وRedis وCaddy كـ proxy في حاويات منفصلة
Caddy كـ reverse proxy مع SSL تلقائي من Let's Encrypt، دون أي إعداد يدوي
Redis 7 لتدوير JWT وسلة التسوق الدائمة للعميل والحد من المعدل العام

هذا المستوى من البنية التحتية يضمن توفراً وأداءً لا تستطيع الاستضافة المشتركة أو المنصات بدون كود تحقيقه.

المكدس التقني لـ Electro Sky

`Next.js 15 · React 19 · TypeScript · Tailwind CSS · TanStack Query · Zustand · Recharts · Fastify · Node.js 20 · Zod · Socket.io · JWT · PostgreSQL 16 · Prisma ORM · Redis 7 · pg_trgm · Docker Compose · Caddy · Ubuntu VPS · Cloudinary · Resend · TipTap`

---

ما الذي يميز هذين المشروعين عن المتوسط المغربي

بناء Saidia Bay وElectro Sky رسّخ فرقاً واضحاً بين ما تقدمه معظم وكالات الويب في المغرب وما نبنيه في EvoMarket:

| المعيار | مشروع عادي | Saidia Bay / Electro Sky |

|---|---|---|

| قاعدة البيانات | MySQL أساسي بلا علاقات | PostgreSQL + Prisma ORM، مخطط علائقي محسّن |

| المصادقة | تسجيل دخول/كلمة مرور بسيطة | OTP 2FA، تدوير JWT، خروج تلقائي، سجل كلمات مرور |

| الإدارة | واجهة أساسية بلا تحليلات | CMS كامل، تحليلات بالوقت الفعلي، ActionLog |

| البنية التحتية | استضافة مشتركة | VPS + Docker + Caddy + Redis |

| الوقت الفعلي | لا تحديثات مباشرة | Socket.io للطلبات الفورية |

| البحث | SQL LIKE بسيط | pg_trgm بحث نصي كامل مع تسجيل |

معظم وكالات الويب المغربية تتوقف عند العمود الأول. EvoMarket تُسلِّم العمود الثاني.

---

مشروعك يستحق منصة بمستوى طموحاتك

سواء كنت تدير عقارات مثل Saidia Bay، أو متجراً فيزيائياً مثل Electro Sky، أو أي نشاط تجاري آخر في المغرب — يجب أن يُبنى مشروعك الرقمي ليدوم ويحمي بياناتك وينمو مع نموك.

إذا كنت مستعداً لبناء منصة تغيّر فعلاً طريقة عمل مشروعك، تحدث معنا.

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

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

📧 evomarketagency@gmail.com

📱 @evomarket.ma