Vai al contenuto principale
Una nuova app generata da npx create-twenty-app si presenta così:

File principali

L’organizzazione dei file dipende da te. Le cartelle sopra sono convenzioni — l’SDK rileva le entità tramite analisi AST sulle chiamate a export default defineEntity(...) indipendentemente da dove si trova il file.

Dipendenze

Entrambi i pacchetti Twenty SDK devono essere inseriti sotto devDependencies, non sotto dependencies:
Lo scaffolder blocca twenty-sdk e twenty-client-sdk alla propria versione — mantieni i due allineati durante l’aggiornamento.
  • twenty-sdk fornisce la CLI twenty e gli strumenti di build/scaffolding. Viene eseguito solo in fase di sviluppo e di build e non viene mai importato dal runtime dell’app pubblicata.
  • twenty-client-sdk viene importato dal codice della tua app (CoreApiClient, MetadataApiClient, RestApiClient), ma Twenty lo fornisce a runtime: le funzioni di logica lo ricevono da un layer SDK generato e i componenti di front-end lo risolvono da moduli forniti dal server. La copia installata viene utilizzata solo per il type checking e per la build al momento del deploy, quindi non è mai necessario includerla nel bundle distribuito.
Mantenere uno qualsiasi dei pacchetti sotto dependencies lo inserisce nel bundle di runtime dell’app installata, dove rappresenta solo zavorra. twenty dev:build emette un avviso quando uno dei due è ancora elencato sotto dependencies. Aggiungi come di consueto le dipendenze di runtime proprie della tua app (librerie che le tue funzioni di logica importano effettivamente a runtime) sotto dependencies.