// the find
CesiumGS/cesium
An open-source JavaScript library for world-class 3D globes and maps :earth_americas:
CesiumJS is a WebGL-based JavaScript library for rendering 3D globes, terrain, and geospatial data in the browser — no plugin required. It's the dominant open-source option for this problem space, used in defense, aerospace, and GIS applications where you need WGS84-accurate rendering at planetary scale. If you're building a web app that needs to show satellites, terrain, point clouds, or city-scale 3D tiles, this is the library.
3D Tiles support is first-class — the format originated here, and the streaming LOD system handles datasets that would choke any naive renderer. CZML gives you a time-dynamic data format that's actually designed around the problem (satellites, vehicles, moving entities over time), not retrofitted from something else. The math layer uses double-precision arithmetic throughout, which matters when you're computing positions on an ellipsoid and floating-point errors would otherwise cause objects to jitter at zoom. The Sandcastle demo environment is genuinely useful — runnable, editable examples covering most of the API surface.
The bundle size is brutal. Even with tree-shaking via the scoped packages, you're pulling in a significant chunk of a full 3D engine, which makes it a poor fit for anything where page weight matters. The open-core model means the useful global terrain and imagery data lives behind Cesium ion (paid), so 'free and open source' has an asterisk the moment you want real-world basemaps. The API surface is enormous and the abstractions leak — you'll end up reading renderer internals to understand why something doesn't look right. React/Vue integration is community-maintained wrappers, not first-party, so the component model is friction if you're in a framework-heavy stack.