Skip to content

Repository files navigation

English · Français

DiveTopo

Important

Explore the maps, interactive 3D terrain and original high-resolution downloads at divetopo.com. The first published region is Réunion Island.

Animated interactive 3D terrain of Cap La Houssaye, with bathymetric colours, aerial imagery and isobaths

Why this project exists

While preparing a trip to Réunion Island, I found it surprisingly difficult to locate detailed maps of its dive sites. Further research showed that useful public bathymetric, topographic and aerial data already existed, but was not easy to inspect together.

I downloaded and assembled these datasets to produce consistent 2D maps, static 3D perspectives, interactive terrain and printable sheets for a small, non-exhaustive selection of sites. DiveTopo now separates the reusable mapping engine and Web application from the sources and configurations of each region, so other regions can be added without copying the code.

Note

The codebase, website and original presentation were generated entirely with AI, under human direction, iterative visual review and validation against the source data. The geographic data comes from the public institutional sources listed below.

Data sources for Réunion Island

Used for Source Role
Detailed seabed terrain Ifremer HYSCORES 2015 High-resolution bathymetry for the west-coast reef sectors, including the Litto3D additions distributed with HYSCORES
Land elevation IGN RGE ALTI Digital terrain model for the land surface
Aerial imagery IGN BD ORTHO Georeferenced imagery draped over land and, where configured, shallow water
Regional context GEBCO 2024 Generalized seabed relief for the locator and regional selection map

Detailed Réunion processing uses WGS 84 / UTM zone 40S (EPSG:32740). HYSCORES does not cover the whole island; a site outside its four published sectors requires another numerical bathymetric source.

What the pipeline produces

Each site configuration can produce:

  • a north-up 2D map;
  • a static oblique 3D perspective;
  • topographic and aerial-imagery variants;
  • a regional locator;
  • two printable high-resolution sheets;
  • a compact interactive 3D terrain package consumed by the website.

The seven current Réunion sites share 2474 × 1712 px static maps and 5400 × 3250 px printable sheets. Aerial imagery remains opaque down to −1.5 m, fades to the bathymetric palette between −1.5 m and −2 m, and is fully absent below −2 m. Isobaths are derived every 5 m.

Published regions and sites

Réunion Island

Site Municipality Configuration
Cap La Houssaye Saint-Paul cap-la-houssaye.json
Boucan Canot Saint-Paul boucan-canot.json
Passe de l'Hermitage Saint-Paul passe-hermitage.json
Cap Homard Saint-Paul cap-homard.json
Pointe au Sel Saint-Leu pointe-au-sel-sec-jaune.json
Pont Rouge Saint-Leu pont-rouge-la-tortue.json
Plage du Cimetière Saint-Leu plage-cimetiere-saint-leu.json

Representative example: Cap La Houssaye

2D map Static 3D perspective
2D aerial-imagery map of Cap La Houssaye Static oblique 3D aerial-imagery map of Cap La Houssaye

Printable sheet

Printable high-resolution sheet for Cap La Houssaye

These are lightweight previews. The website's download controls serve the canonical full-resolution JPEGs and sheets.

Repository architecture

apps/web/                  single Web application deployed at divetopo.com
cartography/               shared rendering, composition and terrain exporters
cartography/regions/       region-specific acquisition and orchestration
regions/<slug>/region.json regional identity, projection, sources and inventory
regions/<slug>/sites/      reproducible site configurations
regions/<slug>/outputs/    canonical generated cartographic artifacts
tests/                     shared and regional contract tests

The website never generates terrain. It copies verified responsive derivatives from the canonical regional outputs. The interactive package format is documented in INTERACTIVE-TERRAIN.md.

Reproducing the Réunion maps

Install the local macOS environment:

./bootstrap_macos.sh

Validate one configuration and its cached source rasters:

.venv/bin/python -m cartography.regions.reunion \
  regions/reunion/sites/cap-la-houssaye.json --check

Refresh the official data and regenerate the maps:

.venv/bin/python -m cartography.regions.reunion \
  regions/reunion/sites/cap-la-houssaye.json --refresh

Rebuild the printable sheets or the canonical interactive package:

.venv/bin/python -m cartography.plate \
  regions/reunion/sites/cap-la-houssaye.json
.venv/bin/python -m cartography.interactive

The shared rules are in WORKFLOW.md; source-specific parameters, all rendering controls and the full acceptance gate are in regions/reunion/WORKFLOW.md.

Website and release model

apps/web/ serves the general homepage and every regional route from one deployment. Réunion is published under /reunion, with dedicated French and English routes and indexable site routes below it. GitHub is the canonical source; publishing the repository does not automatically deploy the hosted site. See DEPLOYMENT.md.

Licences and safety

The website and its content are free to access and contain no advertising. Maps help interpret terrain and general orientation. They do not establish access, authorization, present conditions or safety, and must not be used for navigation or as the sole basis of a decision affecting safety at sea.

About

Open-source 2D, 3D and interactive dive-site maps built from public bathymetric, topographic and aerial data.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages