> ## Documentation Index
> Fetch the complete documentation index at: https://docs.devin.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# App Deploys

> Distribuisci applicazioni web direttamente da Devin Desktop su Netlify con URL pubblici, build automatiche e acquisizione del progetto per Next.js, React, Vue e Svelte.

App Deploys ti consente di distribuire applicazioni e siti web direttamente in Devin Desktop tramite le chiamate allo strumento Cascade. Questa funzionalità ti aiuta a condividere il tuo lavoro tramite URL pubblici, aggiornare le distribuzioni e acquisire i progetti per personalizzarli ulteriormente. La funzionalità è in beta e il supporto per framework aggiuntivi, build più robuste e altro ancora arriverà presto.

<Frame>
  <img src="https://mintcdn.com/cognitionai/hxeMffzXgF_RWx-U/desktop/assets/windsurf/cascade/app-deploys-ui.png?fit=max&auto=format&n=hxeMffzXgF_RWx-U&q=85&s=874c98c462094169ac798cecca2a6221" width="2072" height="576" data-path="desktop/assets/windsurf/cascade/app-deploys-ui.png" />
</Frame>

<div id="overview">
  ## Panoramica
</div>

Con App Deploys, puoi:

* Distribuire un sito web o un'app web JS su un dominio pubblico
* Ridistribuire sullo stesso URL dopo aver apportato modifiche
* Rivendicare il progetto nel tuo account personale

<Warning>
  App Deploys è pensato principalmente per scopi di anteprima. Per le
  applicazioni di produzione con dati sensibili, consigliamo di rivendicare la
  distribuzione e seguire le best practice di sicurezza.
</Warning>

<div id="supported-providers">
  ## Provider supportati
</div>

Attualmente supportiamo il seguente provider di distribuzione:

* **Netlify** - Per siti statici e applicazioni web

<Note>Il supporto per altri provider è previsto nelle prossime versioni.</Note>

<div id="how-it-works">
  ## Come funziona
</div>

Quando usi App Deploys, il tuo codice viene caricato sul nostro server e distribuito presso il provider tramite il nostro account centralizzato. Il sito distribuito sarà disponibile a un URL pubblico nel seguente formato:

```
<SUBDOMAIN_NAME>.windsurf.build
```

<video autoPlay muted loop playsInline className="w-full aspect-video" src="https://mintcdn.com/cognitionai/hxeMffzXgF_RWx-U/desktop/assets/windsurf/cascade/app-deploys-demo1.mp4?fit=max&auto=format&n=hxeMffzXgF_RWx-U&q=85&s=e2e734de5e247eb6d310f90e657da37f" data-path="desktop/assets/windsurf/cascade/app-deploys-demo1.mp4" />

<div id="deployment-process">
  ### Processo di distribuzione
</div>

1. Cascade analizza il tuo progetto per determinare il framework più adatto
2. I file del tuo progetto vengono caricati in modo sicuro sul nostro server
3. La distribuzione viene creata sulla piattaforma del provider
4. Ricevi un URL pubblico e un collegamento per rivendicarne la proprietà

<div id="project-configuration">
  ### Configurazione del progetto
</div>

Per facilitare le distribuzioni successive, creiamo un file `windsurf_deployment.yaml` nella directory radice del progetto. Questo file contiene informazioni utili per le distribuzioni future, come l'ID del progetto e il framework.

<div id="using-app-deploys">
  ## Usare App Deploys
</div>

Per distribuire la tua applicazione, ti basta chiedere a Cascade qualcosa come:

```
"Deploy this project to Netlify"
"Update my deployment"
```

Cascade ti guiderà durante la procedura e ti aiuterà a risolvere i problemi più comuni.

<div id="team-deploys">
  ## Deploy del team
</div>

<Note> Per attivare o disattivare questa funzionalità, sono necessari privilegi di amministratore del team.</Note>

Gli utenti dei piani Team ed Enterprise possono collegare i propri account Netlify ai propri account Devin Desktop ed eseguire il deploy nel proprio team Netlify.

Questa opzione può essere attivata o disattivata in Team Settings, a cui puoi accedere dalla pagina Profile oppure facendo clic [qui](https://windsurf.com/team/settings).

<div id="security-considerations">
  ## Considerazioni sulla sicurezza
</div>

<Warning>
  Il tuo codice verrà caricato sui nostri server per la distribuzione. Distribuisci
  solo codice che sei disposto a condividere pubblicamente.
</Warning>

Adottiamo diverse misure precauzionali per garantire la sicurezza:

* Limiti di dimensione dei file e convalida
* Limitazione della frequenza in base al livello del tuo account
* Gestione sicura dei file di progetto

Per una maggiore privacy, visita [clear-cookies.windsurf.build](https://clear-cookies.windsurf.build) per verificare la presenza di eventuali cookie impostati dai siti sotto `windsurf.build` e cancellarli. Se vengono rilevati cookie, non dovrebbero esserci: rimuoverli aiuta a prevenire problemi di cookie tra siti e a mantenere pulita la tua esperienza.

I siti di Devin Desktop sono creati da persone e dall'IA e, anche se incoraggiamo l'IA a seguire le best practice, è consigliabile mantenere un atteggiamento prudente. Devin Desktop non è responsabile dei problemi causati dai siti distribuiti dai nostri utenti.

<div id="claiming-your-deployment">
  ## Rivendicare la tua distribuzione
</div>

Dopo la distribuzione, riceverai un URL per rivendicarla. Seguendo questo collegamento, puoi rivendicare il progetto nel tuo account personale del provider, ottenendo:

* Controllo completo sulla distribuzione
* Accesso alle funzionalità specifiche del provider
* Possibilità di modificare il nome di dominio
* Accesso diretto ai log e alle informazioni di build

<Note>
  Le distribuzioni non rivendicate potrebbero essere eliminate dopo un certo
  periodo. Consigliamo di rivendicare tempestivamente i progetti importanti.
</Note>

<div id="rate-limits">
  ## Limiti
</div>

Per prevenire abusi, applichiamo questi limiti in base al piano:

| Piano | Distribuzioni al giorno | Numero massimo di siti non rivendicati |
| ----- | ----------------------- | -------------------------------------- |
| Free  | 1                       | 1                                      |
| Pro   | 10                      | 5                                      |

<div id="supported-frameworks">
  ## Framework supportati
</div>

App Deploys funziona con la maggior parte dei framework JavaScript più diffusi, tra cui:

* Next.js
* React
* Vue
* Svelte
* Siti statici in HTML/CSS/JS

<div id="troubleshooting">
  ## Risoluzione dei problemi
</div>

<div id="failed-deployment-build">
  ### Errore di build della distribuzione
</div>

Se la distribuzione non va a buon fine:

1. Verifica i log di build forniti da Cascade
2. Assicurati che il progetto possa essere compilato in locale (esegui `npm run build` per verificarlo)
3. Verifica che il progetto segua la struttura consigliata dal framework
4. Consulta la documentazione su come distribuire [il tuo framework su Netlify tramite `netlify.toml`](https://docs.netlify.com/configure-builds/file-based-configuration/)
5. Valuta se rivendicare il progetto per accedere ai log dettagliati nella dashboard del provider

<Warning>
  Non possiamo fornire supporto diretto per errori di build specifici del framework. Se la
  distribuzione non va a buon fine a causa di problemi nel codice, esegui il debug in locale oppure rivendica il progetto per
  interfacciarti con il team di supporto del provider.
</Warning>

<div id="netlify-site-not-found">
  ### Sito Netlify non trovato
</div>

<Frame>
  <img src="https://mintcdn.com/cognitionai/hxeMffzXgF_RWx-U/desktop/assets/windsurf/cascade/netlify-site-not-found.png?fit=max&auto=format&n=hxeMffzXgF_RWx-U&q=85&s=3d3f9ec85716d984c8da2d3847b28afa" width="2430" height="1618" data-path="desktop/assets/windsurf/cascade/netlify-site-not-found.png" />
</Frame>

Questo probabilmente significa che la build non è andata a buon fine. Rivendica il sito (puoi trovarlo nella tua [cronologia delle distribuzioni](https://windsurf.com/deploy)) e verifica i log di build per maggiori dettagli. Spesso puoi incollare i log di build in Cascade e chiedere aiuto.

<div id="changing-your-subdomain-url">
  ### Modificare il sottodominio / URL
</div>

<div id="updating-netlifyapp-domain">
  #### Aggiornare il dominio `netlify.app`
</div>

Puoi cambiare il sottodominio rivendicando la distribuzione e aggiornando le impostazioni del sito Netlify. In questo modo verrà aggiornato il dominio `.netlify.app`.

<div id="updating-custom-windsurfbuild-subdomain">
  #### Aggiornamento del sottodominio personalizzato `.windsurf.build`
</div>

<Warning>
  Non puoi modificare il tuo sottodominio personalizzato `.windsurf.build` dopo
  la distribuzione. Dovrai invece distribuire un nuovo sito con un nuovo sottodominio.
</Warning>

Per aggiornare il tuo sottodominio personalizzato `.windsurf.build`, dovrai distribuire un nuovo sito con un nuovo sottodominio:

1. Elimina il file `windsurf_config.yaml` dal tuo progetto
2. Chiedi a Cascade di distribuire un nuovo sito con un nuovo sottodominio, specificando quale vuoi
3. Può essere utile avviare una nuova conversazione o cancellare le memorie generate automaticamente, così Cascade non tenterà di eseguire di nuovo la distribuzione sul vecchio sottodominio
4. Quando crei una nuova distribuzione, potrai fare clic sul pulsante "Modifica" nell'interfaccia del sottodominio per aggiornarlo prima di fare clic su "Distribuisci"

<div id="error-unable-to-get-project-name-for-project-id">
  ### Errore: `Unable to get project name for ID del progetto`
</div>

Questo errore si verifica quando l'ID del progetto non viene trovato nei nostri sistemi oppure quando Cascade usa erroneamente il sottodominio come ID del progetto. Per risolvere:

1. Verifica che il progetto esista ancora nel tuo account Netlify (se è stato rivendicato).
2. Verifica che l'ID del progetto sia presente nel file `windsurf_deployment.yaml`. Se non è presente, puoi scaricare il file di configurazione dal menu a discesa della tua [cronologia delle distribuzioni](https://windsurf.com/deploy).
3. Prova a eseguire di nuovo la distribuzione e a indicare a Cascade di usare più esplicitamente il `project_id` del file `windsurf_deployment.yaml`

<Frame>
  <img src="https://mintcdn.com/cognitionai/hxeMffzXgF_RWx-U/desktop/assets/windsurf/cascade/app-deploys-download-config-file.png?fit=max&auto=format&n=hxeMffzXgF_RWx-U&q=85&s=fbbc9d8789e65ff8926bd8dad20e828d" width="1966" height="1408" data-path="desktop/assets/windsurf/cascade/app-deploys-download-config-file.png" />
</Frame>
