المتطلبات الأساسية
- Node.js 24+ — تنزيل
- Yarn 4 — يأتي مع Node.js عبر Corepack. قم بتمكينه:
corepack enable - Docker — تنزيل. مطلوب لتشغيل خادم Twenty محليًا. تخطَّ ذلك إذا كان لديك Twenty يعمل في مكان آخر.
| المرحلة | ماذا تفعل | الأداة | النتيجة |
|---|---|---|---|
| 1. تهيئة الهيكل | توليد الشفرة المصدرية للتطبيق | npx create-twenty-app | مشروع TypeScript على القرص |
| 2. تشغيل خادم | بدء تشغيل خادم Twenty للمزامنة معه | Docker + yarn twenty server | مثيل Twenty قيد التشغيل |
| 3. مزامنة | قم بمزامنة شفرتك مباشرةً مع الخادم | yarn twenty dev | تظهر تغييراتك في واجهة المستخدم |
المرحلة 1 — تهيئة هيكل مشروعك
أنشئ تطبيقًا جديدًا من القالب:my-twenty-app/ يتضمن ملف بداية application-config.ts، ودورًا افتراضيًا، وسير عمل CI، واختبار تكامل.
بعد هذه المرحلة: سيكون لديك الشفرة المصدرية لتطبيق على جهازك. ليس قيد التشغيل بعد — وهذه هي المرحلة 2.
المرحلة 2 — تشغيل خادم Twenty محلي
يحتاج تطبيقك إلى خادم Twenty للمزامنة معه. الخادم هو مثيل Twenty كامل — واجهة مستخدم، واجهة برمجة تطبيقات GraphQL، PostgreSQL — يعمل محليًا داخل Docker. ترفع شفرتك المحلية تعريفاتها إلى ذلك الخادم، مما يجعلها تظهر في واجهة المستخدم. تقترح أداة توليد الهيكل تشغيل خادم لك:هل ترغب في إعداد مثيل محلي من Twenty؟
- نعم (موصى به) — ستسحب صورة Docker
twentycrm/twenty-app-devوتبدأ تشغيلها على المنفذ2020. تأكّد أولًا من أن Docker قيد التشغيل. - لا — اختر هذا إذا كان لديك بالفعل خادم Twenty تريد الاتصال به. يمكنك ربطه لاحقًا باستخدام
yarn twenty remote:add.

- البريد الإلكتروني:
tim@apple.dev - كلمة المرور:
tim@apple.dev



إذا لم يكن Docker مثبتًا أو قيد التشغيل، فستخبرك أداة توليد الهيكل بأمر البدء المناسب لنظام التشغيل لديك. عند تشغيل Docker، يمكنك المتابعة باستخدام
yarn twenty docker:start — لا حاجة لإعادة إنشاء الهيكل.المرحلة 3 — مزامنة تغييراتك
هذه هي الحلقة الداخلية التي ستقضي معظم وقتك فيها.src/، ويُعيد البناء عند كل تغيير، ويزامن الناتج إلى الخادم. حرّر ملفًا، واحفظه، وخلال بضع ثوانٍ سينعكس التغيير على الخادم. سترى لوحة حالة مباشرة في الطرفية.
للحصول على مخرجات أكثر تفصيلاً (سجلات البناء، طلبات المزامنة، تتبعات الأخطاء)، أضِف --verbose.




src/ وسيظهر في واجهة المستخدم.
مزامنة لمرة واحدة لـ CI والبرامج النصية
مرّر--once لتشغيل عملية بناء واحدة + مزامنة واحدة ثم الخروج — نفس خط الأنابيب، من دون مراقِب:
| أمر | السلوك | متى يُستخدم |
|---|---|---|
yarn twenty dev | يراقب ويعيد المزامنة عند كل تغيير. يستمر في العمل حتى توقفه. | تطوير محلي تفاعلي. |
yarn twenty dev --once | بناء واحد + مزامنة واحدة، يخرج برمز 0 عند النجاح، و1 عند الفشل. | CI، وخطافات ما قبل الالتزام، ووكلاء الذكاء الاصطناعي، وسير عمل مكتوب بنصوص. |
yarn twenty dev --once --dry-run | يبني تغييرات البيانات الوصفية ويطبعها من دون تطبيقها. | فحص ما الذي سيُغيِّره التزامن قبل تطبيقه. |
--dry-run.
خيارات وضع التطوير
| خيار | الوصف |
|---|---|
--once | قم بالإنشاء والمزامنة مرة واحدة، ثم اخرج. |
--dry-run | باستخدام --once، يمكنك معاينة تغييرات البيانات الوصفية دون تطبيقها. لا يكتب أي شيء. |
--debounceMs \<ms> | اضبط مهلة إزالة الارتداد لتغييرات الملفات بالميلي ثانية (القيمة الافتراضية: 2000). |
--verbose / --debug | إظهار سجلات إنشاء تفصيلية، وطلبات المزامنة، وتتبع الأخطاء. |
ما الذي يمكنك بناؤه
تتكون التطبيقات من كيانات — يُعرَّف كل منها كملف TypeScript يحتوي علىexport default واحد:
| كيان | ماذا يفعل |
|---|---|
| الكائنات والحقول | نماذج بيانات مخصّصة (بطاقة بريدية، فاتورة، إلخ) بحقول ذات أنواع محددة |
| الوظائف المنطقية | TypeScript على جانب الخادم يتم تشغيله عبر مسارات HTTP، أو جداول cron، أو أحداث قاعدة البيانات |
| المكوّنات الأمامية | مكوّنات React تُعرَض داخل واجهة مستخدم Twenty (اللوحة الجانبية، الودجات، قائمة الأوامر) |
| المهارات والوكلاء | قدرات الذكاء الاصطناعي — تعليمات قابلة لإعادة الاستخدام ومساعدون مستقلون ذاتيًا |
| طرق العرض والتنقّل | طرق عرض قوائم مُعدّة مسبقًا وعناصر قائمة الشريط الجانبي |
| تخطيطات الصفحات | صفحات تفاصيل سجلات مخصصة تتضمن علامات تبويب وعناصر واجهة |
الخطوات التالية
التهيئة
هوية التطبيق، الدور الافتراضي، وخطّافات التثبيت، والأصول العامة.
بيانات
الكائنات، الحقول، والعلاقات ثنائية الاتجاه.
المنطق
الوظائف المنطقية، المهارات، الوكلاء، واتصالات OAuth.
التخطيط
العروض، التنقل، تخطيطات الصفحات، ومكوّنات الواجهة الأمامية.
العمليات
سطر الأوامر (CLI)، الاختبار، الوجهات البعيدة، التكامل المستمر (CI)، ونشر تطبيقك.