Seascape v0.1.0
First public release of Seascape: free bathymetry tiles for MapLibre and Mapbox GL, built from 23 global and regional sources.
Try it: demo viewer · openwaters.io/charts/seascape
Two tile sets come off the same merged depth model. The raster set is a Terrarium-encoded DEM for depth shading, hillshade, and 3D terrain. The vector set carries depth contours, spot soundings, and drying areas.
new maplibregl.Map({
container: "map",
style: "https://tiles.openwaters.io/seascape/style.json",
});What's included
/style.jsonis a complete nautical style: depth shading in chart colors, isobaths with labels, spot soundings, and drying areas.?unit=m|ft|fmpicks the depth unit, and?safety=<metres>shades water shallower than your safety depth as a hazard.- The endpoint at
https://tiles.openwaters.io/seascapeserves raster (raster.json) and vector (vector.json) TileJSON. No API key, no signup. - The vector tiles carry four layers.
contourshas metric and feet/fathom isobath sets at the usual chart intervals.soundingshas the shoalest depth per cell, so a printed depth is never deeper than the data behind it.dryinghas the foreshore that dries at low water, andcoveragehas each source's footprint. - The style is generated by the
@openwaters/seascapenpm package, which also exports the sources and layer groups for composing into your own style, plus runtime controls for units and safety depth.
Coverage
GEBCO 2026 covers the whole planet at about 450 m (through z8). Where finer open data exists it takes over, down to z14 in the best-surveyed areas. Where sources overlap, the ones already on a chart datum win first, then the finer resolution. The 23 sources:
- Global: GEBCO 2026 Grid
- United States: NOAA S-102, CUDEM 1/9″ and 1/3″, NOS estuarine DEMs, Great Lakes, Lake Tahoe
- Europe: EMODnet 2024, Danmarks Dybdemodel, Vaklodingen (NL), INFOMAR 10 m and 25 m (IE), UK SurfZone, Lac Léman, Lac de Neuchâtel, Bodensee
- Canada: GSC Atlantic 100 m, GSC Pacific 10 m
- Australia: AusBathyTopo 250 m, Great Barrier Reef 30 m
- Elsewhere: BATNAS (Indonesia), SW Indian Ocean Bathymetric Compilation, African Great Lakes
Producers and licenses for each:
openwaters.io/charts/seascape#sources
Not for navigational use
Depths are not reduced to a chart datum and do not account for tides or water level, so they are not charted depths. The data is interpolated and merged from surveys of different ages, resolutions, and datums, and a gridded model omits the rocks, wrecks, and obstructions an official chart shows. Use official nautical charts for navigation.
License
The tiles are CC BY 4.0. MapLibre's attribution control displays the credit carried in the TileJSON, which covers both the tile license and each underlying source's own terms. The code is BSD-3-Clause.
Updates
Tiles rebuild as the sources update: GEBCO once a year, the regional sources on their own schedules. Each data release is tagged here, so watch the repo if you want a ping. The hosted endpoint is best-effort with no SLA. If you need offline data or guaranteed availability, build the archives yourself with this pipeline.
What's next
The aim is bathymetry good enough for a nautical chart. What stands between here and there:
- Chart datums. Depths need referencing to a conservative low-water datum (LAT/MLLW) rather than mean sea level, applied as a spatially varying correction.
- Provenance. Carry each source's identity and a confidence grade into the tiles, so you can tell surveyed 3 m data from interpolated GEBCO, and validate depths against official soundings.
- More sources and more coverage. The next release will look at adding more open sources to the pipeline. Open an issue if you know of a source that should be included.
The full plan is in ROADMAP.md.