finds.dev← search

// the find

mapbox/mapbox-gl-js

★ 12,304 · TypeScript · NOASSERTION · updated Jun 2026

Interactive, thoroughly customizable maps in the browser, powered by vector tiles and WebGL

Mapbox GL JS is the browser-side renderer for Mapbox's vector tile maps, built on WebGL. It's the thing that actually draws the map when you use Mapbox's mapping platform. This is source-available, not open source — you need a paid Mapbox account to use it legally.

The WebGL rendering pipeline is genuinely sophisticated: separate HD and standard shader paths, shadow rendering, 3D terrain with elevation graphs, and a full glTF model pipeline. The style specification is well-designed and the same spec works across web, Android, and iOS SDKs. The debug/ directory has ~100 standalone HTML test cases covering nearly every feature, which makes local development much less painful than most mapping libraries. PMTiles support ships as a first-party plugin, meaning you can self-host tiles without Mapbox infrastructure.

The license change in 2021 (v2.0) is the elephant in the room — it is not open source. You cannot legally use this without a Mapbox account, and the SDK phones home with usage data. For anything where data sovereignty or vendor lock-in matters, this is a non-starter; use MapLibre GL JS (the maintained fork of the last truly open version) instead. The codebase splits between src/ and 3d-style/ in a way that suggests the 3D features were bolted on rather than designed in, and the build system uses multiple rollup configs with EJS-generated TypeScript files which adds real friction when hacking on internals. No WebGPU path exists yet, so you're betting on WebGL staying healthy.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →