Fonctionnement des applications
Une application est un ensemble d’entités déclarées à l’aide des fonctionsdefineEntity() du package twenty-sdk. Le SDK détecte ces déclarations via une analyse de l’AST au moment de la compilation et produit un manifeste — une description complète de ce que votre application ajoute à un espace de travail. Ces fonctions valident votre configuration au moment de la compilation et offrent l’autocomplétion dans l’IDE et une sécurité de typage.
L’organisation des fichiers vous revient. La détection des entités est basée sur l’AST — le SDK trouve les appels à
export default defineEntity(...) quel que soit l’emplacement du fichier. La structure de dossiers ci-dessus est une convention, pas une obligation.Types d’entités
Exécution en bac à sable
- Les fonctions logiques s’exécutent dans des processus Node.js isolés sur le serveur. Ils accèdent uniquement aux données via le client d’API typé, qui agit soit en tant que personne ayant déclenché l’exécution, soit en tant que l’application elle-même. Consultez Les accès utilisés par un appel.
- Les composants frontaux s’exécutent dans des Web Workers en utilisant Remote DOM — isolés en bac à sable de la page principale mais rendant des éléments DOM natifs (pas d’iframes). Ils communiquent avec Twenty via une API hôte de passage de messages.
- Les autorisations sont appliquées au niveau de l’API. Deux jetons d’exécution sont injectés, tous deux dérivés du rôle déclaré avec
defineApplicationRole(); le jeton par défaut est davantage restreint à ce que la personne ayant déclenché l’exécution peut faire lorsqu’une personne est à l’origine de l’exécution.
Cycle de vie de l’application
yarn twenty dev— surveille vos fichiers source et synchronise en direct les modifications avec un serveur Twenty connecté. Le client d’API typé est régénéré automatiquement lorsque le schéma change.yarn twenty dev:build— compile TypeScript, regroupe les fonctions logiques et les composants frontaux avec esbuild, et produit un manifeste.- Hooks pré/post-install et de désinstallation — fonctions optionnelles qui s’exécutent pendant l’installation ou juste avant la désinstallation. Voir Install Hooks pour plus de détails.
Prochaines étapes
Configuration
Identité de l’application, rôle par défaut et hooks d’installation et de désinstallation.
Données
Objets, champs et relations bidirectionnelles.
Logique
Fonctions logiques, compétences, agents et connexions OAuth.
Disposition
Vues, navigation, mises en page, composants front-end.
Opérations
CLI, tests, dépôts distants, CI et publication de votre application.