BREWERY EXPLORER

Geo-Filtering via GPS-Autofetch, Infinite Scroll mit kontinuierlichem Nachladen, LocalStorage-Caching pro Standort/Seite — Open Brewery DB, kein API-Key.

Standort wählen, um Breweries in der Nähe zu laden.

Demonstrierte Skills

📍 Geo-Filtering

GPS-Autofetch via Geolocation API, Distanz-Sortierung über den by_dist-Parameter der Open Brewery DB.

♾️ Infinite Scroll

IntersectionObserver auf einem Sentinel-Element löst automatisches Nachladen der nächsten Seite aus — kein "Mehr laden"-Klick nötig.

💾 LocalStorage-Caching

Jede Seite pro Standort wird gecacht (Key = Koordinaten+Seite), 15 Min. TTL — wiederholte Anfragen sparen API-Calls.

🗺️ Map-Integration

Leaflet.js mit OpenStreetMap-Tiles (kostenlos, kein Key), Marker pro geladener Brewery, Auto-Zoom auf Standort.

🛡️ Defensive Programmierung

Fängt fehlende Koordinaten (manche Breweries haben kein lat/lon) und API-Fehler ab, ohne den Scroll-Flow zu unterbrechen.

🌐 Geocoding-Fallback

Manuelle Stadt-Suche über Nominatim, falls GPS nicht verfügbar/erlaubt ist.