Vai al contenuto principale
Il comando create della CLI di Base44 crea nuovi progetti con tutti i file e la configurazione necessari. Questo articolo descrive la struttura di un progetto backend Base44 e spiega cosa fa ogni file e directory.

Struttura del progetto backend

Quando crei un progetto Base44 solo backend, la CLI genera questa struttura minima:
<your-project-name>
base44
.app.jsonc
config.jsonc
.gitignore
Man mano che sviluppi il tuo progetto, aggiungi file per le tue risorse come entità, funzioni, agenti, connettori e configurazione auth:
<your-project-name>
base44
.app.jsonc
config.jsonc
.types
types.d.ts
agents
<agent-name>.jsonc
auth
config.jsonc
connectors
<connector-type>.jsonc
entities
<entity-name>.jsonc
functions
<function-name>
entry.ts
function.jsonc
.gitignore
Le funzioni richiedono solo un file entry.ts o entry.js. Puoi opzionalmente aggiungere function.jsonc per configurazioni avanzate come nomi personalizzati o automazioni. Consulta Funzioni backend per i dettagli.

base44/

Contiene tutta la configurazione e le definizioni delle risorse backend di Base44.

config.jsonc

Definisce la configurazione del tuo progetto, inclusi i percorsi verso entità, funzioni, agenti, connettori, configurazione auth e le impostazioni di hosting del sito per progetti full-stack. La CLI lo crea solo con il nome del tuo progetto e puoi aggiungere altra configurazione secondo necessità. Il tuo progetto richiede un file config.jsonc (o config.json) nella directory base44/:
// Base44 Project Configuration
{
  "name": "my-project",
  "description": "My Base44 app",

  // Directory paths (relative to config file)
  "entitiesDir": "./entities",
  "functionsDir": "./functions",
  "agentsDir": "./agents",
  "connectorsDir": "./connectors",
  "authDir": "./auth",

  // Site/hosting configuration (for full-stack projects)
  "site": {
    "outputDirectory": "./dist", // Required - where your built files are located
  },
}
ProprietàDescrizionePredefinito
nameNome del progetto (richiesto)
descriptionDescrizione del progetto
entitiesDirPercorso alla directory delle entità./entities
functionsDirPercorso alla directory delle funzioni./functions
agentsDirPercorso alla directory degli agenti./agents
connectorsDirPercorso alla directory dei connettori./connectors
authDirPercorso alla directory della configurazione auth./auth
site.outputDirectoryDove si trovano i file compilati del tuo sito (richiesto per la distribuzione del sito)
site.buildCommandUsato solo durante base44 create per la distribuzione automatica
site.installCommandUsato solo durante base44 create per la distribuzione automatica
site.serveCommandComando usato da base44 dev per avviare il tuo dev server frontend insieme al backend locale
Le proprietà buildCommand, installCommand e serveCommand vengono incluse automaticamente quando crei un progetto dal template full-stack. Le proprietà buildCommand e installCommand vengono usate durante il flusso iniziale di base44 create per la distribuzione automatica. La proprietà serveCommand viene usata da base44 dev per avviare il tuo dev server frontend, con VITE_BASE44_APP_ID e VITE_BASE44_APP_BASE_URL iniettate in modo che l’SDK punti al backend locale. Quando distribuisci il tuo sito successivamente con site deploy, viene usata solo outputDirectory.

.app.jsonc

Collega il tuo progetto locale alla tua app Base44. Questo file viene creato automaticamente dalla CLI quando crei o colleghi un progetto. I singoli comandi CLI possono sovrascrivere questo valore predefinito con il flag --app-id o la variabile d’ambiente BASE44_APP_ID. Consulta Seleziona un’app di destinazione.
// Base44 App Configuration
// This file links your local project to your Base44 app.
// Do not commit this file to version control.
{
  "id": "your-app-id",
}
Il file .app.jsonc non deve essere sottoposto a versionamento. La CLI crea automaticamente un file .gitignore che esclude questo file.

.types/types.d.ts

Definizioni di tipo TypeScript generate per le tue entità, funzioni, agenti e connettori. Create eseguendo base44 types generate. Questo file fornisce autocompletamento e sicurezza dei tipi quando usi l’SDK in progetti TypeScript. Consulta Tipi dinamici per maggiori dettagli.

agents/

Directory che contiene le configurazioni degli agenti IA. Ogni agente è definito in un file .json o .jsonc separato.

auth/

Directory che contiene la configurazione di autenticazione della tua app. Contiene un unico file config.jsonc che definisce quali metodi di login sono disponibili per i tuoi utenti finali. Recupera la configurazione corrente da Base44 con auth pull.

connectors/

Directory che contiene le configurazioni dei connettori OAuth. Ogni connettore è definito in un file .json o .jsonc separato che prende il nome dal tipo di integrazione, ad esempio slack.jsonc o googlecalendar.jsonc.

entities/

Directory che contiene le definizioni di schema delle entità. Ogni entità è definita in un file .json o .jsonc separato. Crea questa directory quando sei pronto a definire la tua prima entità.

functions/

Directory che contiene le funzioni backend serverless. Ogni funzione richiede una propria sottodirectory con un file di codice entry.ts o entry.js. La CLI usa il percorso della directory relativo alla root delle funzioni come nome della funzione. Ad esempio, functions/sendEmail/entry.ts crea una funzione chiamata sendEmail. Puoi opzionalmente aggiungere un file di configurazione function.jsonc per personalizzare il nome della funzione o aggiungere automazioni.
functions
<function-name>
entry.ts
function.jsonc

.gitignore

Impedisce che i file vengano sottoposti a versionamento. Il tuo progetto parte con questo file per evitare che .app.jsonc venga sottoposto a versionamento.

Cartelle delle skill degli agenti IA

Quando crei un progetto con base44 create, le skill degli agenti IA vengono installate automaticamente. Compaiono in cartelle specifiche dell’agente come .claude/skills/, .cursor/skills/ o simili, a seconda dell’assistente IA di programmazione che usi. Queste cartelle aiutano il tuo agente di programmazione a capire come lavorare con Base44 e possono essere sottoposte a versionamento in sicurezza.

Vedi anche

Questa pagina è stata tradotta utilizzando l’IA. Per informazioni più accurate e aggiornate, consulta la versione inglese.