TileServer GL renderer times out on raster requests.
Needs headless GL renderer fix — tracked separately.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Leaflet, TopJSON, Chart.js, Mermaid served from /js/
- Leaflet CSS from /css/leaflet.min.css
- World atlas GeoJSON from /data/countries-110m.json
- Zero external CDN requests (GDPR compliant)
- Map tiles from maps.clicksports.de (fixed missing Noto Sans font)
- Attribution: clicksports maps + OpenMapTiles + OpenStreetMap
- window.load for script initialization (load order fix)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
MapLibre inline style JSON was mangled by Hugo minifier.
Leaflet + OSM tiles is simpler and works reliably.
Updated map colors to Agiliton green palette.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
maps.clicksports.de vector tile style.json returns 503 on render.
Fall back to OSM raster tiles until tile server is fixed.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replace Leaflet+OSM with MapLibre GL JS consuming vector tiles
from maps.clicksports.de (TileServer GL). Choropleth overlay via
TopoJSON remains the same.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- Add centralized data/countries.json with all 17 countries (EN/DE/FR)
- Add Leaflet choropleth world map with TopoJSON boundaries
- Add stats banner shortcode (enforced/passed/progress/guidelines counts)
- Add Chart.js charts (status donut, age limits bar, legislation timeline)
- Add Mermaid timeline of legislation milestones 2020-2026
- Refactor child-safety-map table to use data file (DRY)
- Update all 3 language articles (EN/DE/FR)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Replaces broken agiliton.eu/vpn links with tracked redirect via
go.agiliton.eu, which fires Rybbit analytics before forwarding
to the App Store.
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- French Hugo config (languages.fr.toml)
- All 6 content pages translated: homepage, about, imprint, privacy,
global overview article, France social media ban article
- Child-safety-map shortcode updated with French table + legend
- Nginx redirect updated to include /fr/ path
- CI smoke tests now verify /fr/ endpoint
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
- No more external CDN dependencies (jsdelivr)
- Fully bilingual EN/DE table with country flags
- Color-coded status badges
- Mobile-responsive
- Consistent with privacy policy (no external resources)
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>