~/research/choosing-a-web-globe

Choosing a web globe: Cesium or MapLibre

Both are on this site. What each costs in bundle size and policy exceptions, and which job each one is good at.

· 1 min read · written in English

This site uses both engines: Cesium for the satellite flight on the home page, MapLibre for /earth, the trace intro and peak maps.

Measured on this site's production build

Cesium (flight) MapLibre
JS chunk 3.98 MB (1.06 MB gzip) 1.10 MB (0.30 MB gzip)
CSP exceptions wasm-unsafe-eval, and no Viewer (why) worker from blob: or a self-hosted worker URL
Globe true 3D ellipsoid, 3D Tiles globe projection, vector tiles
Terrain quantized mesh, 3D Tiles raster DEM (terrarium / mapbox encoding)

When I pick which

Rule of thumb

Load the heavy engine only on the page that needs it, with a dynamic import(), and keep a non-WebGL fallback that still says where the thing is.