---
title: Architekturdiagramme
sidebar_label: Diagramme
---

Diese Seite bündelt einfache Diagramme für zentrale Plattform‑Flows. Sie sind absichtlich high‑level gehalten und sollen neuen Operatoren einen schnellen Überblick geben.

## 1. Medien‑Pipeline (Mermaid)

```mermaid
flowchart LR
    Guest[Guest PWA] -->|Foto upload| API[Laravel API]
    API -->|Validierung & DB| DB[(DB: events,\nevent_media_assets)]
    API -->|Datei schreiben| HotStorage[(Hot Storage\n/var/www/storage)]

    HotStorage --> QueueMedia[Queue: media-storage]
    QueueMedia --> WorkerMedia[Worker: media-storage-worker]
    WorkerMedia --> Archive[(Archive Storage\nz.B. S3/Wasabi)]

    WorkerMedia --> Thumbs[Job: Thumbnails]
    Thumbs --> HotStorage

    DB --> PublicAPI[Public API]
    PublicAPI --> Guest
```

## 2. Checkout & Billing (Mermaid)

```mermaid
flowchart LR
    Tenant[Browser Tenant-Admin] -->|Paket wählen| App[Laravel App]
    App -->|CheckoutSession anlegen| DB[(DB: checkout_sessions,\n tenant_packages)]
    App -->|Redirect| LemonSqueezy[Lemon Squeezy Checkout]

    LemonSqueezy -->|Zahlung erfolgreich| Webhook[Lemon Squeezy Webhook Endpoint]
    Webhook -->|Event verarbeiten| BillingService[CheckoutWebhookService]
    BillingService -->|TenantPackage aktualisieren| DB

    DB --> App
    App --> Tenant
```
