Přejít na hlavní obsah
Většina CRM vám poskytne konfigurační panel. Twenty vám poskytne platformu. Aplikace jsou způsob, jak vývojáři rozšiřují Twenty nad rámec toho, co nabízí uživatelské rozhraní – definují datové modely, serverovou logiku, komponenty uživatelského rozhraní a schopnosti AI jako kód a nasazují je do jednoho nebo více pracovních prostorů.

Proč aplikace existují

Pracovní postupy pokrývají automatizaci bez kódu. Ale některé věci vyžadují kód: vlastní cenový modul, proprietární obohacovací datový řetězec, kontrolu souladu, která se spouští při každé aktualizaci záznamu, vlastní panel uživatelského rozhraní, který získává data z interního nástroje. Aplikace vám umožní budovat tyto věci jako plnohodnotná rozšíření – ne křehké skripty komunikující s API zvenčí, ale kód, který běží na platformě s plným přístupem k typovému systému, modelu oprávnění a UI.

Co může aplikace definovat

Aplikace je balíček TypeScriptu, který deklaruje entity pomocí twenty-sdk:
EntitaK čemu slouží
Objekty a poleNové datové tabulky a pole na existujících objektech — stejný režim jako pro vestavěné objekty
Logické funkceServerový TypeScript spouštěný HTTP trasami, plánovačem cron nebo událostmi databáze
Frontendové komponentySandboxované komponenty Reactu, které se vykreslují v uživatelském rozhraní Twenty (postranní panel, widgety, příkazová nabídka)
Dovednosti a agentiSchopnosti AI — opakovaně použitelné pokyny a autonomní asistenti
Pohledy a navigacePředkonfigurované seznamové pohledy a položky postranní nabídky
Vše je detekováno pomocí analýzy AST v čase sestavení — bez konfiguračních souborů a bez registračního boilerplate kódu. Umístěte export default defineObject(...) do libovolného souboru .ts a SDK ho načte.

Jak běží

  • Logické funkce se spouštějí v izolovaných procesech Node.js, sandboxovaných od hostitele. K datům přistupují prostřednictvím typovaného klienta API, jehož rozsah je omezen oprávněními 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).
  • Oprávnění jsou vynucována na úrovni API. Aplikace vidí pouze to, co jí její role dovoluje.

Zkušenost vývojáře

Svou aplikaci píšete jako projekt v TypeScriptu na svém počítači. CLI sleduje vaše zdrojové soubory a živě je synchronizuje s běžícím serverem Twenty — upravte soubor a změnu uvidíte v uživatelském rozhraní během sekundy. Typovaný klient API se při změně schématu automaticky znovu vygeneruje. Až budete připraveni, yarn twenty app:publish --private nasadí na produkční server a yarn twenty app:publish uvede vaši aplikaci na npm a v tržišti Twenty.

Vytvořte svou první aplikaci

Třífázový průvodce — vytvoření kostry projektu, spuštění lokálního serveru a synchronizace vašich změn.