Add webapp subproject (Vite + TypeScript + Web Components)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
42
webapp/README.md
Normal file
42
webapp/README.md
Normal file
@@ -0,0 +1,42 @@
|
||||
# Pamietnik Webapp
|
||||
|
||||
Eigenständige Single-Page-Application für das Pamietnik-Reisejournal. Kommuniziert über REST mit dem Go-Backend.
|
||||
|
||||
## Technologie
|
||||
|
||||
| Bereich | Technologie | Begründung |
|
||||
|---------|-------------|------------|
|
||||
| Sprache | TypeScript 5 (strict) | Typsicherheit, kein Laufzeit-Overhead |
|
||||
| Build | Vite 6 | Schnelles HMR, ESM-native, minimale Konfiguration |
|
||||
| UI | Vanilla Web Components | Kein Framework-Overhead; Standard-Browser-API |
|
||||
| Karte | MapLibre GL JS 4 | Open-Source, OpenStreetMap-kompatibel, konfigurierbare Tile-Quelle (DEC-MAP-01) |
|
||||
| CSS | Handgeschriebenes CSS | Kein Framework nötig bei dieser Projektgröße |
|
||||
|
||||
## Abhängigkeiten
|
||||
|
||||
```
|
||||
maplibre-gl Kartenrendering (OSM-Tiles, Track-Anzeige, Stop-Marker)
|
||||
vite Build-Tool + Dev-Server mit Proxy
|
||||
typescript Compiler + Typprüfung
|
||||
```
|
||||
|
||||
Bewusst keine weiteren Abhängigkeiten (kein React, kein Vue, kein CSS-Framework).
|
||||
|
||||
## Schnellstart
|
||||
|
||||
```bash
|
||||
# Backend starten (Voraussetzung)
|
||||
cd ../backend && docker-compose up -d
|
||||
|
||||
# Webapp
|
||||
npm install
|
||||
npm run dev # http://localhost:5173
|
||||
```
|
||||
|
||||
## Features
|
||||
|
||||
- Login/Logout via Session Cookie
|
||||
- Tagesübersicht: Liste aller Tage mit Trackpoint-Anzahl
|
||||
- Tagesdetail: Trackpoints, Stops, Vorschläge + interaktive Karte
|
||||
- Karte zeigt GPS-Track als Linie und Stops als Marker mit Popup (Place-Label)
|
||||
- Tile-Quelle der Karte konfigurierbar über `tileUrl`-Property auf `<track-map>`
|
||||
Reference in New Issue
Block a user