Wie Apps funktionieren
Eine App ist eine Sammlung von Entitäten, die mithilfe vondefineEntity()-Funktionen aus dem Paket twenty-sdk deklariert werden. Das SDK erkennt diese Deklarationen zur Build-Zeit per AST-Analyse und erzeugt ein Manifest — eine vollständige Beschreibung dessen, was Ihre App zu einem Arbeitsbereich hinzufügt. Diese Funktionen validieren Ihre Konfiguration zur Build-Zeit und bieten IDE-Autovervollständigung sowie Typsicherheit.
Die Dateiorganisation liegt bei Ihnen. Die Entitätserkennung ist AST-basiert — das SDK findet Aufrufe von
export default defineEntity(...), unabhängig davon, wo sich die Datei befindet. Die obige Ordnerstruktur ist eine Konvention, keine Anforderung.Entitätstypen
Sandboxing
- Logikfunktionen laufen in isolierten Node.js-Prozessen auf dem Server. Sie greifen nur über den typisierten API-Client auf Daten zu, begrenzt durch die Rollenberechtigungen der App.
- Frontend-Komponenten laufen in Web Workers mit Remote DOM — von der Hauptseite isoliert, rendern aber native DOM-Elemente (keine iframes). Sie kommunizieren über eine Message-Passing-Host-API mit Twenty.
- Berechtigungen werden auf API-Ebene durchgesetzt. Das Laufzeit-Token (
TWENTY_APP_ACCESS_TOKEN) wird aus der indefineApplication()definierten Rolle abgeleitet.
App-Lebenszyklus
yarn twenty dev— überwacht Ihre Quelldateien und synchronisiert Änderungen in Echtzeit mit einem verbundenen Twenty-Server. Der typisierte API-Client wird automatisch neu erzeugt, wenn sich das Schema ändert.yarn twenty dev:build— kompiliert TypeScript, bündelt Logikfunktionen und Frontend-Komponenten mit esbuild und erzeugt ein Manifest.- Pre/Post-Install-Hooks und Uninstall-Hooks — optionale Funktionen, die während der Installation oder direkt vor der Deinstallation ausgeführt werden. Details finden Sie unter Install Hooks.
Nächste Schritte
Konfiguration
App-Identität, Standardrolle sowie Install- und Uninstall-Hooks.
Daten
Objekte, Felder und bidirektionale Relationen.
Logik
Logikfunktionen, Skills, Agenten und OAuth-Verbindungen.
Layout
Ansichten, Navigation, Seiten-Layouts, Frontend-Komponenten.
Operationen
CLI, Tests, Remotes, CI und das Veröffentlichen Ihrer App.