Clasify منتجنا نحن: منصة بعلامة بيضاء تدير عليها الأكاديميات تدريسها. وهي أيضًا الإجابة الصادقة على سؤال «ماذا بنيتم؟» — نظام حيّ متعدد المستأجرين تستطيع التسجيل فيه وفحصه، بدل شعار على حائط.
كان بإمكاننا حشو هذا القسم. معظم مواقع الشركات تفعل — شبكة شعارات، وعدد مشاريع مُسلَّمة، ونسبة رضا لا يدقّقها أحد. نفضّل أن نعرض نظامًا واحدًا بعمق يكفي لتحكم أنت على الهندسة بنفسك.
Clasify تدير أكاديميات حقيقية بطلاب حقيقيين في دروس فيديو مباشرة، وتستقبل مدفوعات حقيقية، وتحتفظ ببياناتهم تحت هويتهم البصرية ونطاقاتهم. كل مشكلة تشغيلية في هذه الجملة اضطررنا لحلّها كما ينبغي، لأننا نحن من يُوقَظ حين تنكسر.
ما يلي هو ما يعمل فعلًا. والموقع العام الذي تقرأه جزء من قاعدة الكود نفسها.
للقارئ التقني، الحزمة التقنية: React وVite مع TypeScript في الواجهة؛ وExpress وPrisma فوق PostgreSQL خلفها؛ وSocket.IO للحضور وحالة الفصل المباشر، مع Redis يحمل الحالة المشتركة بين العمليات؛ وWebRTC للوسائط نفسها، مُرحَّلة عبر خادم coturn نستضيفه؛ وتخزين كائني متوافق مع S3 للتسجيلات؛ وCaddy ينهي TLS ويصدر شهادات نطاقات العملاء؛ ومقاييس Prometheus في كل مكان؛ وVitest وPlaywright في خط البناء. اختيرت لتكون سهلة التوظيف عليها، لا لتكون مثيرة.
كل بند هنا شيء بنيناه وما زلنا نشغّله بأنفسنا — لا خدمة قرأنا عنها فقط.
كل أكاديمية مستأجر له نطاقه الفرعي أو نطاقه الخاص الموثّق. وصفحات المزوّد وأصول علامته وملف robots.txt كلها محجوبة عن نطاقات المستأجرين، فلا يوجد على صفحة الأكاديمية بنطاقها الخاص أي شيء يدلّ على مزوّد.
دروس فيديو داخل المتصفح مع خادم ترحيل TURN مستضاف ذاتيًا، فيتصل الطالب خلف الشبكات المقيّدة بدل أن يفشل الانضمام بصمت.
الدروس تُسجَّل وتُبثّ مباشرة إلى تخزين كائني، مع تشغيل مقصور على المسؤولين وآلة حالات تنجو من جلسة منقطعة.
فوترة اشتراكات عبر بوابة دفع بمفاتيح عدم تكرار وحجز قبل الخصم، فلا يستطيع ردّ مفقود أن يخصم مرتين — خلل وجدناه وأغلقناه قبل أن يقابله عميل.
العملاء يوجّهون نطاقاتهم إلى المنصة فتُصدَر الشهادة دون أن يلمس أحد خادمًا، مع صفحات المزوّد التسويقية تردّ بخطأ 404 على ذلك النطاق بالتصميم.
فهرس نصوص مُنمَّط يجعل نطاقًا غير مسجَّل خطأ في البناء بدل شاشة مفاتيح خام، مع قواعد الجمع العربية وروابط تحمل لغتها بوسوم hreflang متبادلة.
مقاييس، ونقاط فحص للصحة والجاهزية، وتنبيهات، ونسخ احتياطية مشفّرة خارج الخادم جرى استعادتها والتحقق منها لا مجرد جدولتها.
بناء مثبّت على بصمة صورة مع تراجع بأمر واحد، وترحيلات المخطط تُطبَّق في خطوة منفصلة قبل تبديل الصورة الجديدة — فيُجهض الترحيل الفاشل الإصدارَ بدل أن يُسقط التطبيق العامل معه.
الترتيب نفسه في كل مشروع، أيًّا كانت التقنية المستخدمة.
تعدد المستأجرين والفوترة والصلاحيات تُحسم أولًا. كل واحدة من الثلاث مكلفة بقسوة بعد أن يعتمد العملاء على سلوكها.
ردود مفقودة، وإشعارات مكررة، وتسجيلات منقطعة، واتصالات ساقطة. المسار السعيد هو العُشر السهل؛ وما تبقّى هو حيث تُحاكَم المنتجات فعلًا.
أن تشغّل منتجك يعني أن كل اختصار يعود إليك شخصيًا. وهو أسرع تعليم متاح في معرفة ما يستحق أن يُعمل كما ينبغي.
الأسئلة التي تُطرح فعلًا في أول مكالمة.
نعم — إنه منصة SaaS عامة تدير أكاديميات اليوم. لا توجد باقة مجانية، فبدل أن نطلب منك الاشتراك لمجرد الاطّلاع، سنمشّيك على أكاديمية حيّة في مكالمة: درس حقيقي في المتصفح، والتسجيل الناتج عنه، والإدارة حولهما. وهذا أكثر بكثير مما تتيح لك معظم معارض الأعمال التحقق منه.
ليس كود المنتج، للسبب نفسه الذي يجعلك لا تريد نشر كودك. لكن يسعدنا أن نشرح لمراجع تقني المعمارية والقرارات والمفاضلات بالتفصيل في مكالمة، بما في ذلك ما أخطأنا فيه أولًا.
نعم — المعمارية والواجهة والخلفية والبنية التحتية وتطبيق الجوال وأدوات التشغيل. وما زال قيد البناء؛ والممارسات الموصوفة هنا هي ما يعمل اليوم، لا لقطة من وقت الإطلاق.
لا في برمجيات الأكاديميات الإلكترونية — سيكون ذلك تعارض مصالح وسنقوله في أول مكالمة لا في آخرها. وفي أي مجال آخر، منتجنا ليس قيدًا.
إن كان منتجك يحتاج مستأجرين أو اشتراكات أو وسائط مباشرة أو مسار دفع لا يحتمل الخطأ، فهذا هو عملنا. احكِ لنا ما في بالك.
كل مشروع يبدأ بمكالمة لتحديد النطاق ثم تقدير مكتوب، قبل كتابة أي سطر برمجي. ولا نطلب عقدًا مسبقًا لمجرد الحديث.
يستحق القراءة أيضًا