Ana içeriğe atla
Twenty uygulamaları, çalışma alanınızı özel nesneler, mantık, UI bileşenleri ve yapay zekâ yetenekleriyle genişleten TypeScript paketleridir. Tam korumalı alan ve izin kontrolleriyle Twenty platformunda çalışırlar.

Uygulamalar nasıl çalışır

Bir uygulama, twenty-sdk paketindeki defineEntity() işlevleri kullanılarak bildirilen varlıklar koleksiyonudur. SDK, bu bildirimleri derleme sırasında AST analiziyle algılar ve bir manifest üretir — uygulamanızın bir çalışma alanına neler eklediğinin eksiksiz bir açıklaması.
your-app/
├── src/
│   ├── application-config.ts    ← defineApplication (required, one per app)
│   ├── roles/                   ← defineRole
│   ├── objects/                 ← defineObject
│   ├── fields/                  ← defineField
│   ├── logic-functions/         ← defineLogicFunction
│   ├── front-components/        ← defineFrontComponent
│   ├── skills/                  ← defineSkill
│   ├── agents/                  ← defineAgent
│   ├── views/                   ← defineView
│   ├── navigation-menu-items/   ← defineNavigationMenuItem
│   └── page-layouts/            ← definePageLayout
├── public/                      ← Static assets (images, icons)
└── package.json
Dosya organizasyonu size kalmış. Varlık algılama AST tabanlıdır — dosyanın nerede bulunduğundan bağımsız olarak SDK export default defineEntity(...) çağrılarını bulur. Yukarıdaki klasör yapısı bir gelenektir, zorunluluk değildir.

Varlık türleri

VarlıkAmaçBelgeler
UygulamaUygulama kimliği, izinler, değişkenlerVeri Modeli
RolNesneler ve alanlar için izin kümeleriVeri Modeli
ObjectAlanlara sahip özel veri tablolarıVeri Modeli
AlanMevcut nesneleri genişletme, ilişkileri tanımlamaVeri Modeli
Mantık İşleviTetikleyicilerle sunucu tarafı TypeScriptMantıksal İşlevler
Ön Uç BileşeniTwenty’nin sayfasında korumalı alanda React kullanıcı arayüzüÖn Uç Bileşenleri
BeceriYeniden kullanılabilir yapay zekâ temsilcisi yönergeleriBeceriler ve Temsilciler
TemsilciÖzel istemlere sahip yapay zekâ asistanlarıBeceriler ve Temsilciler
GörünümÖnceden yapılandırılmış kayıt listesi görünümleriDüzen
Gezinme Menüsü ÖğesiÖzel kenar çubuğu öğeleriDüzen
Sayfa DüzeniÖzel kayıt sayfası sekmeleri ve widget’larDüzen

Korumalı alan

  • Mantık işlevleri sunucuda yalıtılmış Node.js işlemlerinde çalışır. Verilere yalnızca, kapsamı uygulamanın rol izinleriyle sınırlandırılmış tipli API istemcisi üzerinden erişirler.
  • Ön uç bileşenleri, Remote DOM kullanan Web Worker’larda çalışır — ana sayfadan yalıtılmıştır ancak yerel DOM öğelerini (iframe’ler değil) oluşturur. Twenty ile mesaj iletimi yapan bir ana makine API’si aracılığıyla iletişim kurarlar.
  • İzinler, API düzeyinde uygulanır. Çalışma zamanı belirteci (TWENTY_APP_ACCESS_TOKEN), defineApplication() içinde tanımlanan rolden türetilir.

Uygulama yaşam döngüsü

┌─────────────────────────────────────────────────────────┐
│ Development                                             │
│   npx create-twenty-app → yarn twenty dev (live sync)   │
├─────────────────────────────────────────────────────────┤
│ Build & Deploy                                          │
│   yarn twenty build → yarn twenty deploy                │
├─────────────────────────────────────────────────────────┤
│ Install flow                                            │
│   upload → [pre-install] → metadata migration →         │
│   generate SDK → [post-install]                         │
├─────────────────────────────────────────────────────────┤
│ Publish                                                 │
│   npm publish → appears in Twenty marketplace           │
└─────────────────────────────────────────────────────────┘
  • yarn twenty dev — kaynak dosyalarınızı izler ve bağlı bir Twenty sunucusuna değişiklikleri canlı olarak senkronize eder. Şema değiştiğinde tipli API istemcisi otomatik olarak yeniden oluşturulur.
  • yarn twenty build — TypeScript’i derler, mantık işlevlerini ve ön uç bileşenlerini esbuild ile paketler ve bir manifest üretir.
  • Kurulum öncesi/sonrası kancaları — kurulum sırasında çalışan isteğe bağlı mantık işlevleri. Ayrıntılar için Mantık İşlevleri bölümüne bakın.

Sonraki adımlar

Veri modeli

Nesneleri, alanları, rolleri ve ilişkileri tanımlayın.

Mantıksal işlevler

HTTP, cron ve olay tetikleyicilerine sahip sunucu tarafı işlevler.

Ön uç bileşenleri

Twenty’nin kullanıcı arayüzünde korumalı alanda React bileşenleri.

Düzen

Görünümler, gezinme öğeleri ve kayıt sayfası düzenleri.

Beceriler ve Ajanlar

Özel istemlere sahip yapay zekâ becerileri ve temsilciler.

CLI ve Testler

CLI komutları, test, varlıklar, uzak depolar ve CI.

Yayımlama

Bir sunucuya dağıtın veya pazaryerine yayınlayın.