Jak aplikace fungují
Aplikace je kolekce entit deklarovaných pomocí funkcídefineEntity() z balíčku twenty-sdk. SDK tyto deklarace detekuje pomocí analýzy AST při sestavení a vytváří manifest — úplný popis toho, co vaše aplikace přidává do pracovního prostoru. Tyto funkce validují vaši konfiguraci v době sestavení a poskytují automatické doplňování v IDE a typovou bezpečnost.
Uspořádání souborů je na vás. Detekce entit je založená na AST — SDK najde volání
export default defineEntity(...) bez ohledu na to, kde se soubor nachází. Výše uvedená struktura složek je konvence, nikoli požadavek.Typy entit
| Entita | Účel | Dokumentace |
|---|---|---|
| Aplikace | Identita aplikace, výchozí role, proměnné | Application Config |
| Role | Sady oprávnění pro objekty a pole | Roles & Permissions |
| Objekt | Vlastní typy záznamů s poli | Objects |
| Pole | Přidání polí k objektům z jiných aplikací | Extending Objects |
| Vztah | Obousměrná propojení mezi objekty | Relations |
| Logická funkce | TypeScript na straně serveru se spouštěči | Logické funkce |
| Dovednost | Znovupoužitelné pokyny pro AI agenty | Dovednosti a agenti |
| Agent | AI asistenti s vlastními prompty | Dovednosti a agenti |
| Poskytovatel připojení | Přihlašovací údaje OAuth pro externí rozhraní API třetích stran | Connections |
| Zobrazení | Předkonfigurovaná zobrazení seznamu záznamů | Views |
| Položka navigační nabídky | Vlastní položky postranního panelu | Navigation Menu Items |
| Rozvržení stránky | Karty a widgety na stránce s podrobnostmi záznamu | Page Layouts |
| Frontendová komponenta | Izolované React UI uvnitř Twenty | Frontendové komponenty |
| Položka příkazové nabídky | Rychlé akce a položky Cmd+K | Command Menu Items |
Izolace (sandboxing)
- Logické funkce běží v izolovaných procesech Node.js na serveru. K datům přistupují pouze prostřednictvím typovaného klienta API, a to v rozsahu oprávnění role aplikace.
- Frontendové komponenty běží ve Web Workerech s využitím Remote DOM — jsou oddělené od hlavní stránky, ale vykreslují nativní prvky DOM (nikoli iframy). Komunikují s Twenty prostřednictvím hostitelského API pro předávání zpráv.
- Oprávnění jsou vynucována na úrovni API. Běhový token (
TWENTY_APP_ACCESS_TOKEN) je odvozen z role definované vdefineApplication().
Životní cyklus aplikace
yarn twenty dev— sleduje vaše zdrojové soubory a průběžně synchronizuje změny s připojeným serverem Twenty. Typovaný klient API se při změně schématu automaticky znovu vygeneruje.yarn twenty dev:build— zkompiluje TypeScript, zabalí logické funkce a frontendové komponenty pomocí esbuild a vytvoří manifest.- Pre/post-install hooks — volitelné funkce, které běží během instalace. Podrobnosti viz Install Hooks.
Další kroky
Konfigurace
Identita aplikace, výchozí role a instalační hooky.
Data
Objekty, pole a obousměrné relace.
Logika
Logické funkce, dovednosti, agenti a připojení přes OAuth.
Rozvržení
Zobrazení, navigace, rozvržení stránek, frontendové komponenty.
Operace
CLI, testování, vzdálené repozitáře, CI a publikování vaší aplikace.