finds.dev← search

// the find

onthegomap/planetiler

★ 2,100 · Java · Apache-2.0 · updated Jun 2026

Flexible tool to build planet-scale vector tilesets from OpenStreetMap data fast

Planetiler generates planet-scale vector tile archives (MBTiles/PMTiles) from OpenStreetMap data in a single JVM process, no intermediate database required. It's the engine behind OpenMapTiles and Protomaps basemaps, and it can do a full planet in under 20 minutes on a beefy machine. For anyone self-hosting maps or building a custom basemap, this is the serious option.

The sort-based pipeline is the real insight here: mapping features to tile IDs, sorting, then grouping avoids the write amplification of a Postgres-based approach and is why it's so much faster than the alternatives. YAML config support means you can define a custom schema without touching Java, which significantly lowers the bar for one-off overlays. PMTiles output is a good choice — single-file tile archives that can be served from S3 or even queried directly from the browser without a tile server. The benchmarks are honest and reproducible, with actual log files included in the repo rather than marketing numbers.

No incremental updates — you re-run from a full .osm.pbf snapshot every time, so if you need a live-ish map you're looking at a daily or weekly rebuild cycle. The Java Profile API is genuinely powerful but the learning curve is steep: you need to understand OSM data model quirks, the tile coordinate system, and the feature group API before you can do anything non-trivial. Cross-tile joins are painful by design — features in different tiles can't easily reference each other during processing, so anything requiring global context (e.g. route relations spanning tiles) requires awkward deferred processing patterns. It's also a side project maintained by one person, which is fine until you hit a subtle geometry bug and there's no one on call.

View on GitHub →

// 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 →