الانتقال إلى المحتوى الرئيسي
تطبيقك يعمل. والخطوة الأخيرة هي وصف ذلك للسوق والنشر.

إضافة بيانات التعريف للسوق

config يحمل الهوية التي تظهر في السوق: روابط المؤلف والفئة والشعار والدعم . ضع الشعار في public/ وقم بالرجوع إليه مع logoUrl.
import { defineApplication } from 'twenty-sdk/define';

export default defineApplication({
  universalIdentifier: APPLICATION_UNIVERSAL_IDENTIFIER,
  displayName: 'Document Generator',
  description:
    'Create reusable document templates and generate personalized documents from your CRM records.',
  logoUrl: 'public/document-generator.svg',
  author: 'Twenty',
  category: 'Productivity',
  websiteUrl: 'https://docs.twenty.com/l/ar/developers/extend/apps',
  termsUrl: 'https://www.twenty.com/terms',
  emailSupport: 'contact@twenty.com',
  issueReportUrl: 'https://github.com/twentyhq/twenty/issues',
});
يتم الإعلان عن الدور الافتراضي مع ‘defineApplicationRole()’ في ملفه الخاص - أنت لا تتجاوز ‘defaultRoleUniversalIdentifier’ هنا بعد الآن.
أضف أيضا الكلمة المفتاحية ٢٢app إلى package.json حتى يكون التطبيق قابلا للاكتشاف:
{ "keywords": ["twenty-app"] }

إضافة لقطات شاشة معرض الصور

قائمة السوق تبيع نفسها مع لقطات شاشة. إسقاط عدد قليل من PNGs في public/gallery/ والإشارة إليهم بـ `screenshots’ - يتم عرضهم كمعرض في صفحة الإدراج في القائمة.
export default defineApplication({
  // ...identity from above
  screenshots: [
    'public/gallery/01-generated-document.png',
    'public/gallery/02-command-menu.png',
    'public/gallery/03-template-editor.png',
    'public/gallery/04-documents.png',
  ],
});
الرصاص مع الدفع: اجعل أول لقطة للشاشة النتيجة النهائية (وثيقة تم إنشاؤها)، ثم اظهر كيف تم تشغيلها وكتابتها. استخدم التقاط عالي الدقة - إنها أول شيء يراه المستخدم.
إعطاء العلاج نفسه ‘README.md’ - إنها الصفحة الأولى على npm و GitHub. افتح مع اقتراح القيمة و لقطة شاشة، قائمة بميزات العنوان، ثم ابقي تفاصيل البناء تحت الطبع.

تحقق قبل الشحن

تشغيل نفس البوابات CI :
yarn lint          # oxlint
yarn typecheck     # tsgo
yarn test:unit     # unit tests
yarn twenty dev --once --dry-run   # preview the metadata diff
يعرض التشغيل التجريبي بالضبط ما سيتغيّر على الخادم من دون تطبيقه — وهو فحص نهائي جيّد للسلامة. انظر Testing و المزامنة والاسترداد.

النشر

# Public app → npm (default)
yarn twenty app:publish

# Or deploy privately to a specific server's registry
yarn twenty app:publish --private -r <remote>
‘app:publish’ يبني وينشر إلى npm بشكل افتراضي؛ ‘—private’ يرفع قاعدة tarball إلى السجل الخاص لخادم 20 بدلا من ذلك. لتظهر تطبيق منشور في سوق مثيل ما، قم بتفعيل مزامنة الكتالوج:
yarn twenty dev:catalog-sync -r <remote>
التفاصيل الكاملة وقائمة التحقق من الإصدار: Publishing.

قمت ببناء تطبيق 🎉

في ستة فصول استخدمت معظم سطح SDK:
  • الكائنات، الحقول و العلاقة لنموذج البيانات
  • دالة منطقية مكشوفة كأداة **AI **، و سير العمل، و مسارات HTTP
  • مشاهدات, تصفح, أمر و مكون أمامي لواجهة المستخدم
  • وكيل + مهارة لتوليد اللغة الطبيعية
  • **البيانات الوصفية للسوق ** وتدفق النشر
التطبيق النهائي هو في packages/XXapps/examples/document-Generator.

من أين تذهب بعد

مرجع البيانات

كل نوع من أنواع الحقول والعلاقة وخيارات الفهرس.

مرجع منطقي

مشغلات أحداث Cron وقاعدة البيانات، ومتجر القيمة المفتاح، واتصالات OAuth.

مرجع التخطيط

مخططات الصفحة، ودويدات لوحة المعلومات، ومزيد من أسطح واجهة المستخدم.

العمليات

() CLI، والاختبار، وعمليات الإزالة، وCI.