maplibre-gl-shader-layer: Visualise Complex Geospatial Datasets in MapLibreGL
maplibre-gl-shader-layer is a JavaScript library for creating custom tiled layers for MaplibreGL with WebGL and shader code. It simplifies WebGL development by leveraging ThreeJS under the hood and provides a framework for rendering complex data visualisations directly on maps with per-tile customisation. Its sweet spot is continuous data covering large geographic areas, where each pixel is a measurement rather than a colour. Think climate- and weather-related data, or remote sensing indices like NDVI.
It provides enough flexibility to create custom tile layer solutions, but already comes with powerful built-in layers. The most notable is the MultiChannelSeriesTiledLayer, which lets developers visualise multi-dimensional datasets. It uses RGBa raster tiles, but the values across the three channels don’t encode a specific colour; they represent multidimensional precision data, which the client then visualises.
It’s a neat library for those working in climate science and adjacent fields.