# Website: Publishing and versions

{/* AUTO-SYNCED SOURCE: this page lives in apps/app/src/modules/website/docs/ and is mirrored into the docs app by `bun sync:module-docs`. Edit it in the module, not in apps/docs. */}

<Lead>
Nothing goes live on your website before you want it to. The editor saves into the **draft**, visitors see the last **published state**. In between sit the shareable preview link, the deliberate click on publish and a version history that brings back any earlier state with one click.
</Lead>

## Draft and live

Every page exists in two states: the draft (your working state, secured by autosave) and the live state (what visitors see). The status chip under [Managing pages](/tools/website/seiten) shows the relationship: **Entwurf** (draft, never published), **Geändert** (changed: live, but with unpublished changes) or **Live** (identical).

## Sharing a draft

The **Entwurf teilen** (share draft) button creates a preview link for the current draft: "Vorschau-Link kopiert. Er ist 7 Tage gültig." (preview link copied, valid for 7 days).

- The link works for anyone who has it, without any workspace access. Ideal for gathering feedback from colleagues or the boss.
- The view carries a clear banner: "Entwurfs-Vorschau. Dieser Stand ist nicht veröffentlicht und der Link läuft automatisch ab." (draft preview; this state is not published and the link expires automatically).
- Draft previews are fully excluded from search engines; they never show up on Google.

## Publishing

The **Seite veröffentlichen** (publish page) dialog sums it up: "Der aktuelle Entwurf von `<pfad>` geht live. Frühere Stände bleiben in der Historie und lassen sich jederzeit zurückholen." (the current draft of this path goes live; earlier states remain in the history and can be brought back any time). **Jetzt veröffentlichen** (publish now) makes the draft the new live state.

- The very first time, the tool confirms: "Veröffentlicht! Ihre Website ist jetzt live." (published, your website is now live). Every time after that: "Version N ist live."
- Publishing automatically generates an **OG preview image** (the image shown when sharing on WhatsApp, Facebook or LinkedIn). It runs in the background and never blocks the publish.
- **Permission:** editing content and publishing are separate. By default, owners and admins publish; without the right you will see "Zum Veröffentlichen fehlt dir die Berechtigung." (you lack the permission to publish).

<Warning title="First-publish gate">
The very first publish requires complete mandatory imprint fields (office/company, street, postal code, city, email, licensing authority under section 34c GewO). If anything is missing, the tool reports "Vor dem ersten Live-Gang fehlen Impressums-Pflichtangaben: ... Bitte im Bereich Rechtliches ergänzen." Details under [Legal](/tools/website/rechtliches).
</Warning>

Another possible message when publishing: "Eine Sektion ist ungültig. Bitte die markierten Blöcke prüfen." (one section is invalid, please check the marked blocks). A required field is missing in a block; the editor marks the spot.

## Version history and rollback

Every publish creates an **immutable version**. The history ("Jede Veröffentlichung ist ein unveränderlicher Stand. Zurücksetzen macht ihn sofort wieder live.", every publish is an immutable state; resetting makes it live again immediately) lists all versions with number and timestamp.

**Zurücksetzen** (reset) to an older version asks for confirmation ("Auf Version N zurücksetzen"): "Die Website zeigt danach sofort wieder diesen Stand. Dein aktueller Entwurf bleibt unverändert erhalten." (the website immediately shows this state again; your current draft remains untouched). After confirming: "Version N ist wieder live."

<Info title="Rollback is risk-free">
A rollback only changes which version is live. Your draft stays untouched, so you can roll back first and keep working calmly afterwards. The rollback itself also requires the publish permission.
</Info>

## Preview and empty states

- The **preview card** on the overview opens the current state ("Vorschau öffnen", open preview). If the preview environment is not ready yet, it reads "Der Vorschau-Link erscheint hier, sobald die Umgebung verbunden ist." (the preview link appears here once the environment is connected).
- A website without any content shows "Deine Vorschau ist noch leer." (your preview is still empty).
- If someone opens a deleted or never-existing address, the website shows "Diese Seite gibt es nicht mehr." (this page no longer exists) with a "Zur Startseite" (to the home page) button. Renamed paths are covered by the automatic redirect instead ([SEO basics](/tools/website/seo)).

## Further reading

The website only becomes public and visible on Google with your own connected domain: [Connecting your domain](/tools/website/domains). Back to the [Website overview](/tools/website).
