حسابات وصلاحيات ومدفوعات وبيانات حقيقية وأحمال حقيقية — نوع التطبيق الذي تُدار به شركة، لا صفحة تسويقية عليها نموذج تواصل. مبني بـ React وTypeScript فوق Node وPostgres، بالعربية والإنجليزية من بناء واحد لا من موقع ثانٍ.
كثيرون يستطيعون إخراج صفحة جميلة. أقل بكثير من يستطيع أن يخبرك بما يحدث حين يعدّل شخصان السجل نفسه، أو حين تخصم بوابة الدفع المبلغ ثم يضيع ردّها في الطريق، أو حين تحتاج قاعدة البيانات تعديلًا في بنيتها على بيانات حيّة وعملاء في منتصف جلساتهم.
هذه هي الأسئلة التي تحدّد إن كان التطبيق سينجو من سنته الثانية. وهي أيضًا غير مرئية في التصميم المبدئي، ولهذا تُكتشف بعد الإطلاق.
نحن نبني النوع الثاني. والموقع الذي تقرأه الآن هو المثال نفسه: مُهيّأ مسبقًا لعناكب البحث، ويُقدَّم بلغتين تحت نظام توجيه واحد، مع خريطة موقع مولّدة وحماية من الأخطاء الصامتة — لأن تطبيق صفحة واحدة يردّ بنجاح على رابط ميت يسمّم ترتيبه في البحث بهدوء.
كل بند هنا شيء بنيناه وما زلنا نشغّله بأنفسنا — لا خدمة قرأنا عنها فقط.
حزمة تقنية مستقرّة ومفهومة جيدًا، اخترناها كي تستطيع التوظيف عليها. أنواعها محدَّدة من الطرف إلى الطرف، فيكسر تغييرُ اسم حقلٍ عمليةَ البناء لا شاشة عميل.
تخطيط من اليمين لليسار، وأيقونات وتنقّل معكوسة، وصيغ الجمع العربية، وروابط تحمل لغتها مع وسوم hreflang صحيحة. أضفنا هذا كله إلى منتجنا بعد بنائه مرة — ولهذا صار يدخل عندنا قبل أول شاشة.
HTML كامل يصل من الخادم لعناكب البحث، ورابط معياري (canonical) ووسوم وصفية لكل صفحة، وخرائط موقع مولّدة، وبيانات منظّمة. تطبيق جافاسكربت لا يرسل إلا هيكلًا فارغًا لن يتصدّر مهما كان نصّه جيدًا.
قياس مؤشرات الويب الأساسية والعمل عليها مباشرة — تفعيل مؤجَّل لما هو خارج الشاشة، وCSS حرج مضمَّن، وصيغ صور حديثة. السرعة عامل ترتيب وعامل تحويل في الوقت نفسه.
تجزئة كلمات المرور بـ Argon2id، وإدارة جلسات، وتحقق ثنائي للحسابات ذات الصلاحيات، وتحكم بالأدوار مفروض على الخادم حيث يهم — لا في الواجهة وحدها أبدًا.
ترحيلات مُرقَّمة بإصدارات تُنفَّذ بالترتيب على بيانات حيّة مع مسار للتراجع. لا مطوّر يتصل بالإنتاج ويتمنى السلامة.
اختبارات وحدة، وتكامل على محرك قاعدة بيانات حقيقي، واختبارات متصفح شاملة مربوطة بعملية البناء، فيسقط الانحدار قبل الشحن لا بعده.
تنقّل بلوحة المفاتيح، وتسميات لقارئات الشاشة، وتخطيطات تصمد من هاتف صغير إلى شاشة عريضة — مفحوصة على أجهزة، لا مفترضة من نقطة توقف.
الترتيب نفسه في كل مشروع، أيًّا كانت التقنية المستخدمة.
قبل أي شاشة: ما الكيانات، ومن يرى ماذا، وأي القواعد يجب أن يفرضها الخادم. أغلب عمليات إعادة الكتابة المكلفة تعود إلى تخطّي هذه الخطوة.
أضيق نسخة يستطيع فيها مستخدم حقيقي إنجاز مهمة حقيقية، منشورة مبكرًا — ثم تتوسّع. هذا يكشف الافتراضات الخاطئة وهي ما زالت رخيصة.
مراقبة وفحوص صحة ونسخ احتياطي ومسار تراجع قبل الإطلاق، لا بعد أن يعلّمك أول عُطل أنها كانت ناقصة.
الأسئلة التي تُطرح فعلًا في أول مكالمة.
غالبًا نعم، وسنخبرك بصراحة إن كانت إعادة البناء أرخص من الإنقاذ. نبدأ بمراجعة للقراءة فقط — الاعتماديات والترحيلات والنشر والاختبارات والأمان — ونعطيك النتائج كمستند يبقى لك في الحالتين.
نصمّم الواجهة ونبنيها. إن كان لديك مصمّم أو نظام هوية بصرية نلتزم به، وإن لم يكن فننتج واجهة نظيفة ومتّسقة بأنفسنا بدل أن نرسلك للبحث عن مصمّم أولًا.
نعم — وهذا ادعاء أكبر مما يبدو. يعني تخطيطًا وأيقونات معكوسة، وصيغ الجمع العربية الست كاملة لا مفردًا وجمعًا، وتنسيق التواريخ والأرقام حسب اللغة، وروابط لكل لغة مع hreflang متبادل، ونصًا عربيًا يُقرأ وكأنه كُتب لا تُرجم. بنينا هذا كله لمنتجنا أولًا.
لك، من أول سطر كود، وفي مستودعك أنت. والبنية التحتية تعمل داخل حساباتك. لا يوجد ترتيب يجعل مغادرتنا تكلّفك المنتج.
أرسل لنا المشكلة ونرسل لك نطاقًا مكتوبًا: ما يُبنى أولًا، وما يؤجَّل، وما الذي يتطلبه ذلك.
كل مشروع يبدأ بمكالمة لتحديد النطاق ثم تقدير مكتوب، قبل كتابة أي سطر برمجي. ولا نطلب عقدًا مسبقًا لمجرد الحديث.