> ## Documentation Index
> Fetch the complete documentation index at: https://supastack.dev/llms.txt
> Use this file to discover all available pages before exploring further.
> For the full documentation corpus in one file, fetch: https://supastack.dev/llms-full.txt

# Desktop-Technologiestapel

Die Technologien in der Tauri-Shell und die Rolle, die jede spielt.

## Bevor Sie beginnen

Die Desktop-App ist absichtlich schlank: Ein Rust-Kern besitzt das native Fenster, während eine Webview Ihre Web-App lädt. Alles unten ist bereits im Checkout gepinnt — diese Seite erklärt, was jedes Stück tut, damit die späteren Handbücher verständlich sind.

Produkt-UI, Authentifizierung, Abrechnung und KI leben alle in der Web-Codebase, die das Fenster lädt. Ein reines Desktop-Checkout enthält nur die Shell — deshalb ist dieser Stapel absichtlich klein.


## Tauri 2 + die System-Webview

Tauri 2 rendert die App mit der eigenen Webview des Betriebssystems — WebView2 unter Windows, WebKit unter macOS, WebKitGTK unter Linux —, sodass die Shell klein bleibt und keine gebündelte Browser-Laufzeit mitführt. `frontendDist` zeigt auf `apps/desktop/ui`, die Startseite, die angezeigt wird, während die Web-App lädt, sodass ein Kaltstart niemals ein leeres Fenster rendert.

- [Tauri](https://tauri.app)


## Rust + TypeScript

Das Verhalten der Shell ist Rust — `src-tauri/src`, Edition 2021, Minimum Rust 1.90 — gebaut von cargo. Kleine in TypeScript geschriebene Node-Skripte übernehmen den Release-Preflight und das Updater-Manifest.

- [Rust](https://www.rust-lang.org)


## Native Funktionen über Plugins

Fensterzustand, Single Instance, Deep Links, das globale Tastenkürzel, der Tray, der Start bei der Anmeldung, der Updater, das Öffnen externer Links, Dialoge und Prozesskontrolle kommen alle aus `tauri-plugin-*`-Crates — die Shell fügt keine eigenen IPC-Befehle hinzu. Eine neue native Fähigkeit hinzuzufügen bedeutet, ein weiteres Plugin zu registrieren oder die vorhandenen zu verdrahten.


## tauri.conf.json + Capabilities

Die Bundle-ID `com.supastack.desktop`, die Fensterliste, Plugin-Optionen und der Updater-Endpunkt liegen in `src-tauri/tauri.conf.json`. Webview-Berechtigungen bleiben in `src-tauri/capabilities/default.json` — derzeit `core:default` plus `opener:allow-open-url` für Systembrowser-Links — und werden nur erweitert, wenn eine native Funktion sie benötigt.


## Verifizierungs-Tooling

cargo test deckt die Rust-Logik ab — URL-Auflösung, das Navigations-Gate, Deep-Link-Mapping, Updater-Kanäle, Zoom und Fenstereinstellungen —, während `node --check` die Startseite validiert und `check:release-config` Release-Builds absichert. CI baut alle drei Betriebssysteme.

```
corepack pnpm --filter @supastack/desktop test
corepack pnpm --filter @supastack/desktop typecheck
corepack pnpm --filter @supastack/desktop check:release-config
```


## Weiter

[Shell starten und konfigurieren](https://supastack.dev/de/docs/desktop/run.md)
