Cum funcționează aplicațiile
O aplicație este o colecție de entități declarate folosind funcțiiledefineEntity() din pachetul twenty-sdk. CLI detectează aceste declarații prin intermediul analizei AST la momentul creării și produce un manifest — o descriere completă a ceea ce aplicația ta adaugă la un spațiu de lucru. Aceste funcții validează configurația în timpul build-ului și oferă completare automată în IDE și siguranța tipurilor.
Organizarea fișierelor depinde de tine. Detectarea entității este bazată pe AST - SDK
găsește `export default defineEntity(. .)” apelează indiferent de locul unde trăieşte fişierul
. Structura de foldere de mai sus este o convenție, nu o cerință.
Tipuri de entități
Izolare (sandboxing)
- Funcțiile logice rulează în procese Node.js izolate pe server. Accesează datele doar prin intermediul clientului tastat API, care acționează fie ca persoană care a declanșat rularea, fie ca aplicație în sine. Vezi Cine accesează un apel utilizat.
- Componentele front-end rulează în Web Workers folosind Remote DOM — izolate de pagina principală, dar randând elemente DOM native (nu iframes). Acestea comunică cu Twenty printr-un API al gazdei bazat pe transmiterea de mesaje.
- Permisiunile sunt aplicate la nivelul API-ului. Două tokeni runtime sunt injectaţi, ambele derivate din rolul declarat cu `defineApplicationRole()”; cea implicită este îngustată și mai mult la ceea ce persoana declanșatoare poate face ori de câte ori cineva se află în spatele rulării.
Ciclul de viață al aplicației
douăzeci de aplicații dev— îți urmărește fișierele sursă și modificările live-syncs la un server conectat. După o sincronizare reușită, regenerează clientul API tipizat atunci când schema sau pachetul generator instalat s-au modificat ori când fișierele client generate lipsesc sau au fost modificate. Pentru a reîmprospăta tipurile după schimbarea spațiului de lucru în interfața cu utilizatorul, ruleazătwenty app generate-client.douăzeci de aplicații construite— compilează TypeScript, împachetează funcțiile logice și componentele frontale cu esbuild, și produce un manifest.- Hook-uri pre/post-instalare și dezinstalare — funcții opționale care rulează în timpul instalării sau chiar înainte de eliminare. Vezi Install Hooks pentru detalii.
Pașii următori
Configurați
Identitatea aplicației, rolul implicit, și instalați și dezinstalați hook-uri.Date
Obiecte, domenii și relații bidirecționale.Logic
Funcții de logică, competențe, agenți, conexiuni și canale de mesagerie.Layout
vizualizări, navigare, layout-uri de pagini, componente din față.Operații
CLI, testare, telecomenzi, CI și publicarea aplicației tale.