feat: add OSM map selection and geocode search

This commit is contained in:
Oliver 2026-02-15 14:10:13 +01:00
parent a0b1c76d14
commit 15bbb677d8
No known key found for this signature in database
7 changed files with 954 additions and 3 deletions

View file

@ -8,6 +8,8 @@ Implementiert:
- Night Safety Score (0-100) mit Ampel (`green`, `yellow`, `red`)
- Begruendung mit Top-Faktoren (OSM-Typ, Distanz-POIs, Zeitlogik, Events, Community)
- API: `GET /spot/score`, `POST /spot/signal`
- Kartenwahl via OpenStreetMap (Leaflet), inkl. Klickauswahl und Ortssuche
- API: `GET /geocode/search` (Nominatim-Proxy), `GET /map/tile/{z}/{x}/{y}.png` (OSM-Tile-Proxy)
- Anti-Spam ohne Account: lokaler Token + serverseitiger HMAC-Hash
- Quick Decision UI mit Signal-Buttons
- Offline-First im Frontend: Score-Cache + Signal-Queue
@ -69,6 +71,12 @@ Score holen:
Signal senden:
- `curl -X POST "http://127.0.0.1:8787/spot/signal" -H "Content-Type: application/json" -d '{"spot_id":"<ID>","signal_type":"noise","device_token":"<uuid-v4>","timestamp":"2026-02-15T20:15:00Z"}'`
Ortssuche:
- `curl "http://127.0.0.1:8787/geocode/search?q=Mettmann%20Bahnhof"`
Tile-Proxy:
- `curl -I "http://127.0.0.1:8787/map/tile/12/2149/1387.png"`
## DSGVO-Hinweise im MVP
- Kein Login