npx create-twenty-app ile oluşturulan yeni bir uygulama şöyle görünür:
Temel dosyalar
Dosya organizasyonu size kalmış. Yukarıdaki klasörler birer konvansiyondur — SDK, dosyanın nerede olduğundan bağımsız olarak
export default defineEntity(...) çağrılarını AST analizi yoluyla algılar.Bağımlılıklar
Her iki Twenty SDK paketi dedependencies değil, devDependencies altında olmalıdır:
twenty-sdk ve twenty-client-sdk paketlerini kendi sürümüne sabitler — yükseltme yaparken bu ikisini senkron tutun.
twenty-sdk,twentyCLI’yi ve derleme/iskelet oluşturma araçlarını sağlar. Yalnızca geliştirme ve derleme zamanında çalışır ve yayımlanmış uygulamanızın çalışma zamanında asla içe aktarılmaz.twenty-client-sdkuygulama kodunuz tarafından (CoreApiClient,MetadataApiClient,RestApiClient) içe aktarılır, ancak Twenty bunu çalışma zamanında sağlar — mantık fonksiyonları bunu oluşturulan bir SDK katmanından alır ve ön yüz bileşenleri bunu sunucu tarafından sunulan modüllerden çözümler. Yüklediğiniz kopya yalnızca tür denetimi ve dağıtım zamanındaki derleme için kullanılır, bu yüzden dağıtılan paket ile birlikte gönderilmesine gerek yoktur.
dependencies altında bu paketlerden herhangi birinin tutulması, onu kurulu uygulamanın çalışma zamanı paketine dahil eder ve orada gereksiz yük haline getirir. twenty dev:build, bunlardan herhangi biri hâlâ dependencies altında listelendiğinde bir uyarı verir.
Uygulamanızın kendi çalışma zamanı bağımlılıklarını (mantık fonksiyonlarınızın çalışma zamanında gerçekten içe aktardığı kütüphaneler) her zamanki gibi dependencies altına ekleyin. Ağacı sade tutun: dependencies, açılmış hali 250 MB ile sınırlandırılmış bir çalışma zamanı katmanına kurulur ve bu sınırın ötesinde bağımlılık boyutu hatasıyla senkronizasyon veya kurulum başarısız olur — UI kütüphaneleri ve geliştirme araçları devDependencies içinde yer almalıdır.