43 lines
1.4 KiB
Markdown
43 lines
1.4 KiB
Markdown
# 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>`
|