كيف تعمل التطبيقات
التطبيق عبارة عن مجموعة من الكيانات يتم إعلانها باستخدام دوالdefineEntity() من حزمة twenty-sdk. يكشف CLI هذه الإعلانات عن طريق تحليل AST في وقت البناء وينتج مظاهر - وصف كامل لما يضيفه التطبيق إلى مساحة عمل. تتحقق هذه الدوال من تكوينك وقت البناء وتوفّر إكمالًا تلقائيًا في بيئة التطوير وأمان الأنواع.
مؤسسة الملفات متروكة لك. الكشف عن الكيان يستند إلى AST-SDK
العثور على ‘تصدير افتراضي تعريف الكيانتي(. .))` مكالمات بغض النظر عن المكان الذي يعيش فيه الملف
. بنية المجلدات أعلاه هي اصطلاح وليست متطلبًا.
أنواع الكيانات
العزل
- الدوال المنطقية تعمل في عمليات Node.js معزولة على الخادم. يمكنهم الوصول إلى البيانات فقط من خلال عميل API المكتوب، الذي يعمل إما كشخص قام بتشغيل التشغيل أو كتطبيق نفسه. انظر الذين وصلوا إلى استخدامات المكالمة.
- المكوّنات الأمامية تعمل ضمن Web Workers باستخدام Remote DOM — معزولة عن الصفحة الرئيسية لكنها تعرض عناصر DOM الأصلية (وليس iframes). تتواصل مع Twenty عبر واجهة API للمضيف تعتمد تمرير الرسائل.
- الأذونات تُطبَّق على مستوى واجهة API. يتم حقن رمزين لوقت التشغيل، وكلاهما مستمد من الدور المعلن مع
defineApplicationRole()؛ يتم تضييق المجال الافتراضي أكثر إلى ما يمكن أن يفعله الشخص المحرك عندما يكون شخص ما وراء اللعب.
دورة حياة التطبيق
20 تطبيق dev- يشاهد الملفات المصدرية الخاصة بك والمزامنة المباشرة التغييرات على خادم عشرين متصل. بعد مزامنة ناجحة، يعيد إنشاء عميل API مضبوط الأنواع عند تغيير المخطط أو حزمة المُولِّد المثبّتة، أو عند فقدان ملفات العميل المُنشأة أو تغييرها. لتحديث الأنواع بعد تغيير مساحة العمل في واجهة المستخدم، شغّلtwenty app generate-client.بناء عشرين تطبيق- تجميع TypeScript، وحزم الدوال المنطقية والمكونات الأمامية مع esbuild، وإنتاج بيان بياني.- خطّافات ما قبل/ما بعد التثبيت وإلغاء التثبيت — دوال اختيارية تعمل أثناء التثبيت أو مباشرة قبل الإزالة. راجع خطّافات التثبيت للتفاصيل.
الخطوات التالية
تكوين
هوية التطبيق، الدور الافتراضي، والتثبيت وإلغاء روابط التثبيت.البيانات
كائنات وحقول وعلاقات ثنائية الاتجاه.المنطق
دوال المنطق، والمهارات، والوكلاء، والاتصالات، وقنوات المراسلة.تخطيط
مشاهدات، تصفح، تخطيطات الصفحات، المكونات الأمامية.العمليات
CLI ، اختبار ، إزالة ، CI ونشر التطبيق الخاص بك.