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

# App Deploys

> Stellen Sie Webanwendungen direkt von Windsurf aus auf Netlify bereit – mit öffentlichen URLs, automatischen Builds und Projektübernahme für Next.js, React, Vue und Svelte.

Mit App Deploys können Sie Webanwendungen und Websites direkt in Windsurf über Cascade-Toolaufrufe bereitstellen. So teilen Sie Ihre Arbeit über öffentliche URLs, aktualisieren Ihre Deployments und übernehmen Projekte für weitere Anpassungen. Diese Funktion befindet sich in der Beta-Phase; Unterstützung für weitere Frameworks, robustere Builds usw. folgt in Kürze.

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

<div id="overview">
  ## Überblick
</div>

Mit App Deploys kannst du:

* Eine Website oder JS‑Web‑App auf einer öffentlichen Domain bereitstellen
* Nach Änderungen erneut unter derselben URL bereitstellen
* Das Projekt deinem persönlichen Konto zuordnen

<Warning>
  App Deploys sind in erster Linie für Vorschauzwecke gedacht. Für
  Produktionsanwendungen mit sensiblen Daten empfehlen wir, deine Bereitstellung
  zu claimen und Sicherheits‑Best Practices zu befolgen.
</Warning>

<div id="supported-providers">
  ## Unterstützte Anbieter
</div>

Derzeit unterstützen wir den folgenden Bereitstellungsanbieter:

* **Netlify** – für statische Websites und Webanwendungen

<Note>Unterstützung für zusätzliche Anbieter ist für zukünftige Versionen geplant.</Note>

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

Wenn Sie App Deploys verwenden, wird Ihr Code auf unseren Server hochgeladen und über unser übergeordnetes Konto beim Anbieter bereitgestellt. Die bereitgestellte Website ist unter einer öffentlichen URL verfügbar, die wie folgt formatiert ist:

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

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

<div id="deployment-process">
  ### Bereitstellungsprozess
</div>

1. Cascade analysiert Ihr Projekt, um das geeignete Framework zu ermitteln
2. Ihre Projektdateien werden sicher auf unseren Server hochgeladen
3. Das Deployment wird auf der Plattform des Anbieters erstellt
4. Sie erhalten eine öffentliche URL und einen Claim-Link

<div id="project-configuration">
  ### Projektkonfiguration
</div>

Um spätere Deployments zu erleichtern, erstellen wir im Stammverzeichnis Ihres Projekts die Datei `windsurf_deployment.yaml`. Diese Datei enthält Informationen für zukünftige Deployments, etwa eine Projekt-ID und das verwendete Framework.

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

Um Ihre Anwendung zu deployen, bitten Sie Cascade einfach mit einer Anfrage wie:

```
"Dieses Projekt auf Netlify bereitstellen"
"Mein Deployment aktualisieren"
```

Cascade führt Sie durch den Ablauf und hilft bei der Behebung gängiger Probleme.

<div id="team-deploys">
  ## Team-Deployments
</div>

<Note> Sie benötigen Team-Administratorrechte, um diese Funktion zu aktivieren oder zu deaktivieren.</Note>

Benutzer:innen mit Teams- und Enterprise-Plänen können ihre Netlify-Konten mit ihren Windsurf-Konten verbinden und in ihr Netlify-Team deployen.

Dies kann in den Team-Einstellungen umgeschaltet werden, auf die Sie über die Profilseite oder über diesen [Link](https://windsurf.com/team/settings) zugreifen können.

<div id="security-considerations">
  ## Sicherheitshinweise
</div>

<Warning>
  Ihr Code wird für das Deployment auf unsere Server hochgeladen. Deployen Sie nur Code,
  den Sie bedenkenlos öffentlich teilen würden.
</Warning>

Wir ergreifen mehrere Maßnahmen, um die Sicherheit zu gewährleisten:

* Limits für Dateigröße und Validierung
* Rate Limiting basierend auf Ihrem Kontotarif
* Sichere Verarbeitung von Projektdateien

Für zusätzlichen Datenschutz besuchen Sie [clear-cookies.windsurf.build](https://clear-cookies.windsurf.build), um nach Cookies zu prüfen, die von Sites unter `windsurf.build` gesetzt wurden, und diese zu löschen. Wenn dort Cookies erscheinen, sollten sie nicht vorhanden sein; das Löschen hilft, bereichsübergreifende Cookie-Probleme zu vermeiden und sorgt für ein sauberes Nutzungserlebnis.

Windsurf‑Sites werden von Menschen und KI erstellt. Obwohl wir die KI zu Entscheidungen nach Best Practices anhalten, ist es sinnvoll, vorsichtig zu bleiben. Windsurf ist nicht verantwortlich für Probleme, die durch von unseren Nutzern bereitgestellte Sites verursacht werden.

<div id="claiming-your-deployment">
  ## Beanspruchen Ihrer Bereitstellung
</div>

Nach der Bereitstellung erhalten Sie eine Claim-URL. Über diesen Link können Sie das Projekt in Ihrem persönlichen Provider-Konto beanspruchen und erhalten dadurch:

* Vollständige Kontrolle über die Bereitstellung
* Zugriff auf anbieterspezifische Funktionen
* Die Möglichkeit, den Domainnamen zu ändern
* Direkten Zugriff auf Logs und Build-Informationen

<Note>
  Nicht beanspruchte Bereitstellungen können nach einer gewissen Zeit gelöscht werden. Wir empfehlen,
  wichtige Projekte zeitnah zu beanspruchen.
</Note>

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

Um Missbrauch zu verhindern, wenden wir folgende stufenbasierte Limits an:

| Tarif | Deployments pro Tag | Max. nicht zugeordnete Sites |
| ----- | ------------------- | ---------------------------- |
| Free  | 1                   | 1                            |
| Pro   | 10                  | 5                            |

<div id="supported-frameworks">
  ## Unterstützte Frameworks
</div>

App Deploys funktioniert mit den gängigsten JavaScript-Frameworks, darunter:

* Next.js
* React
* Vue
* Svelte
* Statische HTML/CSS/JS‑Sites

<div id="troubleshooting">
  ## Problembehandlung
</div>

<div id="failed-deployment-build">
  ### Fehlgeschlagener Deployment-Build
</div>

Wenn Ihr Deployment fehlschlägt:

1. Prüfen Sie die von Cascade bereitgestellten Build-Logs
2. Stellen Sie sicher, dass sich Ihr Projekt lokal bauen lässt (führen Sie zum Test `npm run build` aus)
3. Vergewissern Sie sich, dass Ihr Projekt der empfohlenen Struktur des Frameworks folgt
4. Lesen Sie die Dokumentation dazu, wie Sie [Ihr Framework über `netlify.toml` auf Netlify deployen](https://docs.netlify.com/configure-builds/file-based-configuration/)
5. Erwägen Sie, das Projekt zu claimen, um auf detaillierte Logs im Dashboard des Providers zuzugreifen

<Warning>
  Wir können keinen direkten Support für frameworkspezifische Build-Fehler leisten. Wenn Ihr
  Deployment aufgrund von Code-Problemen fehlschlägt, debuggen Sie lokal oder claimen Sie das Projekt, um
  mit dem Support-Team des Providers zusammenzuarbeiten.
</Warning>

<div id="netlify-site-not-found">
  ### Netlify‑Site nicht gefunden
</div>

<Frame>
  <img src="https://mintcdn.com/codeium/qJj_RRojefb93yIg/assets/windsurf/cascade/netlify-site-not-found.png?fit=max&auto=format&n=qJj_RRojefb93yIg&q=85&s=80793d24da70db2cfd1021616c6db559" width="2430" height="1618" data-path="assets/windsurf/cascade/netlify-site-not-found.png" />
</Frame>

Das bedeutet wahrscheinlich, dass Ihr Build fehlgeschlagen ist. Beanspruchen Sie Ihre Site (Sie finden sie in Ihrem [Deploy-Verlauf](https://windsurf.com/deploy)) und prüfen Sie die Build-Logs für weitere Details. Häufig können Sie Ihre Build-Logs in Cascade einfügen und um Hilfe bitten.

<div id="changing-your-subdomain-url">
  ### Ändern der Subdomain/URL
</div>

<div id="updating-netlifyapp-domain">
  #### `netlify.app`-Domain aktualisieren
</div>

Sie können Ihre Subdomain ändern, indem Sie Ihre Deployment-Instanz beanspruchen und die Einstellungen Ihrer Netlify‑Site aktualisieren. Dadurch wird Ihre `.netlify.app`-Domain aktualisiert.

<div id="updating-custom-windsurfbuild-subdomain">
  #### Aktualisieren der benutzerdefinierten Subdomain `.windsurf.build`
</div>

<Warning>
  Sie können Ihre benutzerdefinierte `.windsurf.build`-Subdomain nach der Bereitstellung
  nicht ändern. Stattdessen müssen Sie eine neue Site mit einer neuen Subdomain bereitstellen.
</Warning>

Um Ihre benutzerdefinierte `.windsurf.build`-Subdomain zu aktualisieren, müssen Sie eine neue Site mit einer neuen Subdomain bereitstellen:

1. Löschen Sie die Datei `windsurf_config.yaml` aus Ihrem Projekt
2. Bitten Sie Cascade, eine neue Site mit einer neuen Subdomain bereitzustellen, und geben Sie die gewünschte Subdomain an
3. Es kann helfen, eine neue Unterhaltung zu starten oder Ihre automatisch generierten Memories zu löschen, damit Cascade nicht versucht, erneut auf die alte Subdomain bereitzustellen
4. Wenn Sie eine neue Bereitstellung erstellen, können Sie in der Subdomain-UI vor dem Klicken auf „Deploy“ die Schaltfläche „Edit“ verwenden, um sie anzupassen

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

Dieser Fehler tritt auf, wenn Ihre Projekt-ID nicht in unserem System of Record gefunden wird oder wenn Cascade irrtümlich die Subdomain als Projekt-ID verwendet. So beheben Sie das:

1. Prüfen Sie, ob das Projekt in Ihrem Netlify-Konto noch existiert (sofern es beansprucht ist).
2. Prüfen Sie, ob die Projekt-ID in der Datei `windsurf_deployment.yaml` enthalten ist. Falls nicht, können Sie Ihre Konfigurationsdatei über das Dropdown Ihrer [Deploy-Historie](https://windsurf.com/deploy) herunterladen.
3. Versuchen Sie, erneut zu deployen, und weisen Sie Cascade explizit an, die `project_id` aus der Datei `windsurf_deployment.yaml` zu verwenden.

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