Cosa sono le app?
Le app ti consentono di estendere Twenty con oggetti, campi, funzioni logiche, componenti front-end, competenze IA e altro ancora — il tutto gestito come codice. Invece di configurare tutto tramite l’interfaccia utente, definisci in TypeScript il modello dati e la logica e li distribuisci in uno o più spazi di lavoro.Prerequisiti
Prima di iniziare, assicurati che quanto segue sia installato sul tuo computer:- Node.js 24+ — Scarica qui
- Yarn 4 — Incluso con Node.js tramite Corepack. Abilitalo eseguendo
corepack enable - Docker — Scarica qui. Necessario per eseguire un’istanza locale di Twenty. Non necessario se hai già un server Twenty in esecuzione.
Crea la tua prima app
Crea lo scheletro della tua app
Apri un terminale ed esegui:my-twenty-app con tutto il necessario.
Configura un’istanza locale di Twenty
Lo strumento di scaffolding chiederà:Vuoi configurare un’istanza locale di Twenty?
- Digita
yes(consigliato) — Questo scarica l’immagine Dockertwenty-app-deve avvia un server Twenty locale sulla porta2020. Assicurati che Docker sia in esecuzione prima di continuare. - Digita
no— Sceglilo se hai già un server Twenty in esecuzione in locale.

Accedi al tuo spazio di lavoro
Successivamente si aprirà una finestra del browser con la pagina di accesso di Twenty. Accedi con l’account demo preconfigurato:- Email:
tim@apple.dev - Password:
tim@apple.dev

Autorizza l’app
Dopo l’accesso, vedrai una schermata di autorizzazione. Questo consente alla tua app di interagire con il tuo spazio di lavoro. Fai clic su Authorize per continuare.

Inizia a sviluppare
Entra nella nuova cartella della tua app e avvia il server di sviluppo:--verbose:

Sincronizzazione una tantum con yarn twenty dev --once
Se non vuoi un watcher in esecuzione in background (ad esempio in una pipeline CI, un hook di Git o un flusso di lavoro scriptato), passa il flag --once. Esegue la stessa pipeline di yarn twenty dev — genera il manifest, effettua il bundling dei file, carica, sincronizza, rigenera il client API tipizzato — ma termina non appena la sincronizzazione è completata:
Entrambe le modalità richiedono un server Twenty in esecuzione in modalità di sviluppo e un remote autenticato — si applicano gli stessi prerequisiti.
Visualizza la tua app in Twenty
Apri http://localhost:2020/settings/applications#developer nel browser. Vai su Settings > Apps e seleziona la scheda Developer. Dovresti vedere la tua app elencata in Your Apps:



src/ e le modifiche verranno rilevate automaticamente.
Cosa puoi creare
Le app sono composte da entità — ciascuna definita come un file TypeScript con un singoloexport default:
Vai a Creare app per una guida dettagliata su ogni tipo di entità.
Struttura del progetto
Lo scaffolder genera la seguente struttura dei file:Partire da un esempio
Per iniziare da un esempio più completo con oggetti personalizzati, campi, funzioni logiche, componenti front-end e altro, usa il flag--example:
yarn twenty add (vedi Creare app).
File principali
Server di sviluppo locale
Lo scaffolder ha già avviato per te un server Twenty locale. Per gestirlo in seguito, usayarn twenty server:
I dati vengono mantenuti tra i riavvii in due volumi Docker (
twenty-app-dev-data per PostgreSQL, twenty-app-dev-storage per i file). Usa reset per cancellare tutto e ripartire da zero.
Esecuzione di un’istanza di test
Passa--test a qualsiasi comando server per gestire una seconda istanza completamente isolata — utile per eseguire test di integrazione o per sperimentare senza toccare i tuoi dati di sviluppo principali.
L’istanza di test viene eseguita nel proprio container Docker (
twenty-app-dev-test) con volumi dedicati (twenty-app-dev-test-data, twenty-app-dev-test-storage) e configurazione dedicata, così può essere eseguita in parallelo con la tua istanza principale senza conflitti. Combina --test con --port per sovrascrivere il valore predefinito 2021.
Il server richiede che Docker sia in esecuzione. Se vedi l’errore “Docker not running”, assicurati che Docker Desktop (o il demone Docker) sia avviato.
Configurazione manuale (senza lo scaffolder)
Se preferisci configurare tutto manualmente invece di usarecreate-twenty-app, puoi farlo in due passaggi.
1. Aggiungi twenty-sdk e twenty-client-sdk come dipendenze:
twenty al tuo package.json:
yarn twenty dev, yarn twenty help e tutti gli altri comandi.
Non installare
twenty-sdk globalmente. Usalo sempre come dipendenza locale del progetto, in modo che ogni progetto possa fissare la propria versione.Risoluzione dei problemi
Se riscontri problemi:- Assicurati che Docker sia in esecuzione prima di avviare lo strumento di scaffolding con un’istanza locale.
- Assicurati di usare Node.js 24+ (
node -vper verificare). - Assicurati che Corepack sia abilitato (
corepack enable) in modo che Yarn 4 sia disponibile. - Prova a eliminare
node_modulesed eseguire di nuovoyarn installse le dipendenze sembrano danneggiate.