Most weather and ocean APIs give you a value at a point. mercator gives you the whole grid as map tiles, with the physical values baked into the pixels and decoded on the GPU. So you change colormaps, switch to wind streamlines or contours, or re-scale, client-side, no refetch. One open-source SDK for MapLibre, Mapbox, Leaflet, OpenLayers, deck.gl and React. The tile format is well-documented, so you can decode it yourself and never get locked to our renderer. Transparent pricing, free tier.
No reviews yetBe the first to leave a review for mercator
Maker
📌
I built mercator because I kept hitting the same wall. APIs I consulted for physical Earth data answer one question: "what's the value at this lat/lng?". That's fine for a city widget but not if you want to draw temperature as a continuous field across a continent, or animate wind as particles over an ocean. You end up firing thousands of point requests to rebuild a grid the provider already had.
The grid was the thing I actually wanted. Model output (NOAA GFS, HYCOM, Copernicus CAMS, GEBCO) is already a regular array of values over the globe, so the real problem was just getting that grid into a browser fast enough to render at 60fps. Map tiles already solve this: deliver a huge raster to a browser, lazily, cached at a CDN. The twist is this: mercator's tiles don't carry colors, they carry the actual physical values, packed into the PNG channels and decoded on the GPU in a shader (the same idea as Mapbox's digital elevation model, generalized to wind, currents, and more). So you pick the colormap, switch to streamlines or contours, or change the value range, all on the client without refetching a byte.
A few things shifted while building. It started as "a weather thing" and grew into ocean currents, air quality and elevation, because the pipeline doesn't care which gridded source it's fed. I realized the real differentiator wasn't the data, it was integration experience. So I open-sourced the SDK across MapLibre, Mapbox, Leaflet, OpenLayers, deck.gl and React, documented the tile format so you can decode it without the SDK. The WebGL code in the SDK allows developers to just drop in an animated map layer into their existing mapbox/maplibre/etc app, and it takes care of some hairy problems, like getting WebGL globe projections right. The SDK does other interesting things too, such as masking land over ocean data, so that ocean current particles don't move onto land.
There's a free tier (10,000 tiles/month) and a live globe on the homepage and quickstart pages if you want to poke at it. I'd love to know: what would you render with this, and which map library are you on? And if there's a dataset you wish existed, say so, the catalog is easy to extend.
Report
the tile format being openly documented is a quiet flex, love seeing teams trust users enough to let them walk away from the renderer if they want. that and baking values into pixels for client-side colormap swaps is just tidy engineering.
Report
Switching colormaps and contours on the fly without a refetch feels genuinely snappy, and shipping one SDK across MapLibre and deck.gl without a config headache is a nice touch.
the tile format being openly documented is a quiet flex, love seeing teams trust users enough to let them walk away from the renderer if they want. that and baking values into pixels for client-side colormap swaps is just tidy engineering.
Switching colormaps and contours on the fly without a refetch feels genuinely snappy, and shipping one SDK across MapLibre and deck.gl without a config headache is a nice touch.