[{"data":1,"prerenderedAt":110},["ShallowReactive",2],{"seo-verification":3,"marketplace-app-ar-trigger-dev":6},{"google":4,"bing":5},"EycwPY2XMyTkVzas3n1ygeNJFGAH513qrMjfDljzsMQ","",{"key":7,"data":8},"marketplace-app-ar-trigger-dev",{"slug":9,"slugs":10,"categorySlugs":11,"name":16,"description":17,"phase":18,"unavailableReason":19,"docsUrl":20,"logo":19,"github":19,"tagline":21,"longDescription":22,"features":23,"useCases":30,"steps":40,"faq":56,"specs":72,"compatibleOs":86,"relatedApps":87,"relatedPosts":105,"category":107},"trigger-dev",{"fr":9,"en":9,"ar":9,"es":9},{"fr":12,"en":13,"ar":14,"es":15},"automatisation","automation-workflows","الأتمتة-وسير-العمل","automatizacion","Trigger.dev","منصة مفتوحة المصدر لتنسيق المهام في الخلفية بـ TypeScript: مهام دائمة، إعادة محاولة تلقائية، سير عمل متعدد الخطوات ولوحة تحكم فورية — مستضافة ذاتياً على VPS دون حدود تنفيذ أو فوترة للمهمة.",1,null,"https:\u002F\u002Fservorbit.com\u002Fblog\u002F%D8%AA%D8%AB%D8%A8%D9%8A%D8%AA-triggerdev-%D8%B9%D9%84%D9%89-%D8%AE%D8%A7%D8%AF%D9%85-vps-%D8%A3%D8%AA%D9%85%D8%AA%D8%A9-%D8%B0%D8%A7%D8%AA%D9%8A%D8%A9-%D8%A7%D9%84%D8%A7%D8%B3%D8%AA%D8%B6%D8%A7%D9%81%D8%A9","Trigger.dev — منصة مهام الخلفية TypeScript مستضافة ذاتياً.","Trigger.dev منصة مفتوحة المصدر لمهام الخلفية، صُممت لمطوري TypeScript الذين يحتاجون إلى تنفيذ موثوق وقابل للمراقبة دون تعقيد إدارة الطوابير والعمال ومنطق إعادة المحاولة.\n\nخلافاً لـ BullMQ أو مهام cron البسيطة، مهام Trigger.dev *دائمة*: تحفظ حالتها بين الخطوات، لذا لا يضيع أي تقدم عند حدوث عطل مفاجئ. يمكن للمهام طويلة الأمد (ETL، الإرسال الجماعي، سلاسل الذكاء الاصطناعي) أن تعمل دقائق أو ساعات دون انقطاع.\n\nتعمل البنية المستضافة ذاتياً على Docker Compose: حاوية webapp (UI + API + جدولة)، PostgreSQL (تخزين الحالة والطوابير مع النسخ المنطقي لـ ElectricSQL)، Redis، خدمة electric من ElectricSQL، واثنتان من خدمات تنفيذ المهام (docker-provider وcoordinator) تُشغّلان حاويات العمال المعزولة عند الطلب.\n\nيستخدم أول وصول آلية magic-link: أدخل بريدك الإلكتروني في صفحة الدخول واسترجع الرابط من سجلات حاوية webapp — لا إعداد SMTP مطلوب من اليوم الأول.",[24,25,26,27,28,29],"مهام دائمة — تستأنف المهام تلقائياً من نقطة التوقف الأخيرة بعد أي عطل أو إعادة تشغيل، حتى لو كانت تعمل لساعات.","إعادة محاولة تلقائية مع تأخير أسي — حدد عدد المحاولات واستراتيجية التأخير لكل مهمة، وتظهر الإخفاقات في لوحة التحكم مع سجلاتها الكاملة.","التحكم في التزامن — ضع حدوداً للتزامن لكل قائمة انتظار أو مهمة لحماية APIs وقواعد البيانات من الحمل الزائد.","لوحة تشغيل فورية — راقب تنفيذ المهام مباشرة، وافحص الحمولات والسجلات والمدد دون الحاجة لمس الخادم.","المهام المجدولة — عرّف مهام دورية قائمة على cron مباشرة في الكود دون الحاجة إلى برنامج cron خارجي.","تجربة مطور أولى — عرّف المهام بـ `task()` في قاعدة كود TypeScript الموجودة لديك دون تعلم لغة أو نظام جديد.",[31,34,37],{"title":32,"body":33},"معالجة المهام في الخلفية","أفرغ العمليات البطيئة أو غير الموثوقة — تغيير حجم الصور، إنشاء PDF، استدعاءات API الخارجية — من دورة طلب الويب. تُعاد المحاولة تلقائياً عند الإخفاق وتظهر النتائج في لوحة التحكم.",{"title":35,"body":36},"خطوط أنابيب الذكاء الاصطناعي طويلة الأمد","اربط استدعاءات LLM واستعلامات قواعد البيانات الاتجاهية وخطوات المعالجة في مهمة دائمة واحدة. في حال فشل خطوة أو انقضاء وقتها، يستأنف Trigger.dev من نقطة التوقف الأخيرة دون بدء من الصفر.",{"title":38,"body":39},"سير عمل البيانات المجدول","استبدل مهام cron الهشة بمهام مجدولة مكتوبة وقابلة للمراقبة. عرّف الجدول في الكود، راقب التشغيلات في لوحة التحكم وتلقَّ تنبيهات عند الإخفاقات المتتالية.",[41,44,47,50,53],{"title":42,"body":43},"فتح صفحة تسجيل الدخول","انتقل إلى `https:\u002F\u002F\u003Cdomain>` وأدخل عنوان بريدك الإلكتروني. سيُنشئ Trigger.dev رابط magic-link لأول دخول.",{"title":45,"body":46},"استرجاع الرابط من سجلات الحاوية","نفّذ `docker compose logs webapp | grep 'magic-link'` وانسخ الرابط. الصقه في المتصفح لإتمام المصادقة والوصول إلى لوحة التحكم.",{"title":48,"body":49},"إنشاء أول مشروع","في لوحة التحكم، انقر على **Create project**، اختر اسماً وبيئة (تطوير أو إنتاج). احتفظ بـ `TRIGGER_SECRET_KEY` المعروض — ستحتاجه لربط تطبيقك.",{"title":51,"body":52},"تثبيت SDK وتعريف مهمة","في مشروع TypeScript، نفّذ `npm install @trigger.dev\u002Fsdk` ثم وجّه SDK إلى VPS:\n```env\nTRIGGER_API_URL=https:\u002F\u002F\u003Cdomain>\nTRIGGER_SECRET_KEY=\u003Ckey>\n```\nعرّف مهمة بـ `task()` وشغّلها بـ `myTask.trigger(payload)` — يظهر التشغيل في لوحة التحكم فوراً.",{"title":54,"body":55},"تشغيل CLI للتطوير (اختياري)","للتطوير المحلي، نفّذ `npx trigger.dev@latest dev` في مشروعك. يُنشئ CLI نفقاً إلى نسختك المستضافة لاختبار التغييرات دون إعادة النشر.",[57,60,63,66,69],{"q":58,"a":59},"كيف أسجّل الدخول للمرة الأولى؟","يستخدم Trigger.dev مصادقة magic-link. افتح `https:\u002F\u002F\u003Cdomain>`، أدخل بريدك الإلكتروني ونفّذ `docker compose logs webapp | grep 'magic-link'` لاسترجاع الرابط من سجلات الحاوية. لا إعداد SMTP مطلوب من اليوم الأول.",{"q":61,"a":62},"لماذا يتطلب Trigger.dev اسم نطاق؟","تُنشئ آلية magic-link روابط استدعاء باستخدام متغيري البيئة `LOGIN_ORIGIN` و`APP_ORIGIN`. بدون نطاق صالح تكون هذه الروابط معطوبة ويفشل التحقق. على ServOrbit يمكنك استخدام النطاق الفرعي المجاني أو ربط نطاقك الخاص.",{"q":64,"a":65},"هل يحتاج Trigger.dev إلى بريد صادر للعمل؟","لا. في اليوم الأول، تُطبع روابط magic-link مباشرة في سجلات حاوية webapp — لا يلزم مفتاح Resend API ولا خادم SMTP. لتفعيل توصيل البريد لاحقاً، أضف `RESEND_API_KEY` و`FROM_EMAIL` في بيئة compose.",{"q":67,"a":68},"لماذا يحتاج PostgreSQL إلى `wal_level=logical`؟","يستخدم Trigger.dev خدمة ElectricSQL للمزامنة الفورية بين قاعدة البيانات وواجهة webapp. تتطلب ElectricSQL فتحات النسخ المنطقي في PostgreSQL، وهي متاحة فقط عند ضبط `wal_level` على `logical`. يتضمن قالب compose هذا الإعداد.",{"q":70,"a":71},"كيف أحدّث Trigger.dev؟","اسحب أحدث الصور وأعد التشغيل: `docker compose pull && docker compose up -d`. يُشغّل Trigger.dev ترحيلات قاعدة البيانات تلقائياً عند بدء webapp. راجع ملاحظات الإصدار على github.com\u002Ftriggerdotdev\u002Ftrigger.dev\u002Freleases قبل الترقية.",{"version":73,"license":74,"ram":75,"cpu":76,"disk":77,"port":78,"os":79,"stack":80},"v3 (latest)","Apache-2.0","2 غيغابايت كحد أدنى (4 غيغابايت موصى به)","2 vCPU","20 غيغابايت كحد أدنى","3030","Ubuntu 22.04 \u002F 24.04",[81,82,83,84,85],"Docker","Node.js","PostgreSQL 16","Redis 7","ElectricSQL",[],[88,95,100],{"name":89,"slug":89,"categorySlug":14,"categoryName":90,"categoryColor":91,"logo":92,"tagline":93,"description":94},"n8n","الأتمتة وسير العمل","text-brand-action bg-brand-action\u002F10","https:\u002F\u002Fcdn.simpleicons.org\u002Fn8n","أتمتة عملياتك التجارية مع أكثر من 400 تكامل — مستضاف ذاتيًا 100% على خادمك VPS.","أتمتة سير عملك بين التطبيقات دون كتابة أي شيفرة. أكثر من 400 تكامل، مستضاف ذاتيًا 100% على خادمك VPS.",{"name":96,"slug":97,"categorySlug":14,"categoryName":90,"categoryColor":91,"logo":19,"tagline":98,"description":99},"Windmill","windmill","شغّل نصوصك البرمجية كسير عمل وواجهات API وواجهات مستخدم — 100% مستضاف ذاتيًا على خادمك VPS.","منصة أتمتة self-hosted قائمة على الشيفرة: حوّل نصوص Python وTypeScript وGo وBash إلى سير عمل وواجهات API داخلية — 17 ألف ⭐، AGPLv3.",{"name":101,"slug":102,"categorySlug":14,"categoryName":90,"categoryColor":91,"logo":19,"tagline":103,"description":104},"Kestra","kestra","تنسيق YAML التصريحي لأنابيب البيانات وETL — ذاتي الاستضافة على VPS، Apache-2.0، أكثر من 15 ألف نجمة.","منصة تنسيق سير عمل تصريحية بصيغة YAML — أنابيب بيانات وETL وأتمتة موجّهة بالأحداث ذاتية الاستضافة. قائد أوركسترا لعمليات معالجتك الداخلية، تُطلَق بجدول زمني أو webhook أو API.",[106],"installer-trigger-dev-vps",{"key":12,"slug":14,"name":90,"objective":108,"icon":109,"color":91},"أتمتة العمليات التجارية.","automation",1789046191014]