Ana içeriğe atla

Documentation Index

Fetch the complete documentation index at: https://docs.twenty.com/llms.txt

Use this file to discover all available pages before exploring further.

Her uygulamanın, tam olarak bir adet defineApplication çağrısı olması gerekir. Bu çağrı şunları bildirir:
  • Kimlik — evrensel tanımlayıcı, görünen ad, açıklama.
  • İzinler — mantık fonksiyonlarının ve ön uç bileşenlerinin hangi rol altında çalıştığı.
  • Değişkenler (isteğe bağlı) — kodunuza ortam değişkenleri olarak sunulan anahtar–değer çiftleri.
  • Kurulum öncesi / kurulum sonrası kancalar (isteğe bağlı) — bkz. Mantık Fonksiyonları.
src/application-config.ts
import { defineApplication } from 'twenty-sdk/define';

export default defineApplication({
  universalIdentifier: '39783023-bcac-41e3-b0d2-ff1944d8465d',
  displayName: 'My Twenty App',
  description: 'My first Twenty app',
  applicationVariables: {
    DEFAULT_RECIPIENT_NAME: {
      universalIdentifier: '19e94e59-d4fe-4251-8981-b96d0a9f74de',
      description: 'Default recipient name for postcards',
      value: 'Jane Doe',
      isSecret: false,
    },
  },
});
Notlar:
  • universalIdentifier alanları, size ait deterministik kimliklerdir. Bunları bir kez oluşturun ve senkronizasyonlar boyunca kararlı tutun.
  • applicationVariables, fonksiyonlarınız ve ön bileşenleriniz için ortam değişkenlerine dönüşür. Mantık fonksiyonlarında (sunucu tarafında), process.env.VARIABLE_NAME olarak kullanılabilirler. Ön bileşenlerde, twenty-sdk/front-component içindeki getApplicationVariable('VARIABLE_NAME') fonksiyonunu kullanın. isSecret: true ile işaretlenen değişkenler yalnızca mantık fonksiyonlarına enjekte edilir. Ön bileşenler yalnızca gizli olmayan değişkenleri alır.
  • Varsayılan rol, defineApplicationRole() ile işaretlenmiş rol dosyasından otomatik olarak algılanır — onu defineApplication() içinden belirtmenize gerek yoktur.
  • Kurulum öncesi ve kurulum sonrası fonksiyonlar manifest derlemesi sırasında otomatik olarak algılanır — bunlara defineApplication() içinde referans vermeniz gerekmez.
  • Geriye dönük uyumluluk için defaultRoleUniversalIdentifier değerini açıkça geçmek hâlâ desteklenmektedir, ancak defineApplicationRole() lehine kullanımdan kaldırılmıştır.

Varsayılan fonksiyon rolü

defineApplicationRole() ile bildirilen rol, uygulamanın iş mantığı işlevlerinin ve ön uç bileşenlerinin neye erişebileceğini kontrol eder:
  • TWENTY_APP_ACCESS_TOKEN olarak enjekte edilen çalışma zamanı belirteci bu rolden türetilir.
  • Türlendirilmiş API istemcisi, o role tanınan izinlerle sınırlandırılır.
  • En az ayrıcalık ilkesini izleyin: yalnızca fonksiyonlarınızın ihtiyaç duyduğu izinleri bildirin.
Yeni bir uygulama iskeleti oluşturduğunuzda, CLI src/roles/default-role.ts konumunda bir başlangıç rol dosyası oluşturur. Tam başvuru için bkz. Roller ve İzinler.

Pazaryeri meta verileri

Eğer uygulamanızı yayımlamayı planlıyorsanız, bu isteğe bağlı alanlar uygulamanızın pazaryerinde nasıl görüneceğini kontrol eder:
AlanAçıklama
authorYazar veya şirket adı
categoryPazaryerinde filtreleme için uygulama kategorisi
logoUrlUygulamanızın logosuna giden yol (örn. public/logo.png)
screenshotsEkran görüntüsü yollarının dizisi (örn. public/screenshot-1.png)
aboutDescription”Hakkında” sekmesi için daha uzun bir markdown açıklaması. Belirtilmezse, pazaryeri npm’deki paketin README.md dosyasını kullanır
websiteUrlWeb sitenize bağlantı
termsUrlHizmet Koşulları’na bağlantı
emailSupportDestek e-posta adresi
issueReportUrlSorun izleyicisine bağlantı