---
title: Web-Modus (Multi-User)
linkTitle: Web-Modus
weight: 6
toc: true
---

> **Hinweis:** Der frühere Supabase-basierte Web-Modus wurde durch **[Rapport Server](../../server/)** abgelöst — den vollständigen Selfhost-Stack mit eigenem Postgres, Auth, Realtime und Storage. Keine externe Cloud-Abhängigkeit mehr.
>
> Diese Seite bleibt als Referenz erhalten, der **empfohlene Weg** für Multi-User-Setups ist **[Rapport Server](../../server/)**.

## Wann brauchst du das?

| Anwendungsfall | Empfehlung |
|---|---|
| **Solo-Büro, ein Mac** | Desktop-App — siehe [Installation](../installation) |
| **2–5 Personen, gleicher Standort** | [Rapport Server](../../server/) auf einem Mac Mini im LAN |
| **Verteiltes Team / Home-Office** | [Rapport Server](../../server/) mit SSL + Reverse Proxy |
| **Hosted Backend (eigener VPS)** | [Rapport Server](../../server/) auf Linux-VPS |

## Architektur (Kurzfassung)

```text
┌────────────┐     HTTPS     ┌──────────────┐     SQL      ┌────────────┐
│  Browser   │ ──────────────│  nginx       │ ─────────────│  Postgres  │
│  / Desktop │               │  (Frontend)  │              │ + GoTrue   │
└────────────┘               └──────────────┘              │ + REST     │
                                                           │ + Realtime │
                                                           │ + Storage  │
                                                           └────────────┘
```

- **Frontend:** dieselbe React-App, aber Vite-Build statt Tauri (`npm run build`)
- **Backend:** Postgres-Stack ([Rapport Server](../../server/))
- **Auth:** E-Mail / Passwort über GoTrue
- **Storage:** Belege, Logos in Object-Storage

## Setup

Alle Setup-Schritte (Repo klonen, `.env` erstellen, Migrations syncen, Docker-Compose starten, Reverse-Proxy konfigurieren) sind in **[Rapport Server](../../server/)** dokumentiert.

## Migration Desktop → Cloud

Wer mit der Desktop-App startet und später auf den Web-Modus wechseln möchte:

- **Aktuell:** manueller Export aus Rapport (CSV/PDF) und manuelles Wiederanlegen im neuen Setup
- **Geplant:** *"localStorage → Postgres"*-Import-Knopf direkt in der App

Status: [Issue auf Gitea](https://git.openbureau.ch/karim/RAPPORT/issues).

## Troubleshooting

Siehe [Rapport Server § Troubleshooting](../../server/) oder [allgemeine Troubleshooting-Seite](../troubleshooting).
