FastAPI-Backend und React-Frontend mit Konten, Sendungsverfolgung, Projekt-Artikeln, Vorrat & Einkauf mit Rezeptabgleich, Reise-Weltkarte, Kanban-Projekten mit Priorität, Server-Monitoring und den Designs Matrix und Blackwall. Betrieb per Docker hinter nginx (siehe DEPLOY.md). Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
35 lines
1.3 KiB
Markdown
35 lines
1.3 KiB
Markdown
# Bibliotheken und ihre Aufgabe
|
|
|
|
Jede Bibliothek hat genau eine Aufgabe.
|
|
|
|
## Frontend (`frontend/package.json`)
|
|
|
|
| Bibliothek | Aufgabe |
|
|
|---|---|
|
|
| React, React DOM | Oberfläche |
|
|
| React Router | Seiten und Navigation |
|
|
| TipTap (`@tiptap/*`) | Artikel-Editor |
|
|
| d3-geo | Weltkarte: Projektion und Pfade |
|
|
| d3-zoom, d3-selection, d3-transition | Weltkarte: Zoomen, Verschieben, weiche Übergänge |
|
|
| topojson-client | Kartendaten entpacken |
|
|
| `@fontsource/*` | Schriften lokal einbinden (keine Anfrage an Google) |
|
|
| Vite | Entwicklung und Build |
|
|
|
|
Bewusst ohne Animationsbibliothek: Jeder Design-Hintergrund ist
|
|
ein einzelner Canvas mit eigener Schleife (Matrix, Blackwall). Es läuft immer nur der
|
|
Hintergrund des aktiven Designs, also nie zwei Schleifen gleichzeitig.
|
|
|
|
Größen (gzip, gemessen beim Build): Start 120 kB JavaScript + 17 kB CSS (Budget 250 kB).
|
|
Erst beim Öffnen geladen: Artikel-Editor 131 kB, Weltkarte 44 kB. Schriftdateien lädt der
|
|
Browser nur für das aktive Design.
|
|
|
|
## Backend (`backend/requirements.txt`)
|
|
|
|
| Bibliothek | Aufgabe |
|
|
|---|---|
|
|
| FastAPI, Uvicorn | API und Auslieferung des Frontends |
|
|
| httpx | Abrufe nach außen (Sendungsverfolgung, Monitoring, Rezepte, Reise-Infos) |
|
|
| nh3 | Artikel-HTML bereinigen |
|
|
|
|
Datenbank: SQLite (Python-Standardbibliothek).
|