Sign in or sign up before continuing. Don't have an account yet? Register now to get started.
Register now

Migrate GeoJSON blob viewer from Leaflet (raster) to MapLibre GL (vector)

Release notes

Replace the Leaflet raster tile library with MapLibre GL vector tiles for rendering GeoJSON files, removing a patched dependency and improving map rendering quality.

Problem to solve

The GeoJSON blob viewer depends on a patched version of Leaflet (patches/leaflet+1.9.4.patch). Maintaining a patched dependency is fragile and the raster tile approach produces blurry maps at high zoom levels with stepped/discrete zoom instead of continuous smooth zooming.

Proposal

Replace Leaflet with MapLibre GL JS using OpenFreeMap vector tiles:

  • Swap leaflet for maplibre-gl in package.json
  • Rewrite utils.js to use MapLibre's source/layer API with native geometry type styling (points, lines, polygons)
  • Add https://tiles.openfreemap.org to CSP connect_src
  • Delete patches/leaflet+1.9.4.patch
  • Update all related specs

Intended users

  • Sasha (Software Developer)

Feature Usage Metrics

No change — this replaces the rendering engine for an existing feature.

Does this feature require an audit event?

No.

Links / references

  • GeoJSON viewer demo — Leaflet raster (GitLab)
  • GeoJSON viewer demo — MapLibre vector (GitHub)
Edited Feb 21, 2026 by 🤖 GitLab Bot 🤖
Assignee Loading
Time tracking Loading