Skip to main content

What is Protomaps?

Protomaps is a system for making custom interactive maps on the web, like this one:

Why it's different#

  • 🗺️ Protomaps is a complete system for vector basemap cartography. Map appearance, labels, and languages can be customized on-the-fly. Maps are sharp and scaled to the user's retina or HiDPI screens.
  • ☁️ Serverless mode. Make maps without an API key, hosted on your own storage provider like S3, or use our CDN-accelerated web service.
  • ☁️ Built for the web first. It has seamless, drop-in integration with the LeafletJS library.

And more...#

  • The freshest data from OpenStreetMap. Downloaded maps are built on instant, minute-level snapshots of OpenStreetMap, the same open dataset that powers maps at Facebook, Apple, Amazon and more.
  • 👩‍💻 An extensible system for custom map symbology. Protomaps.js is a Canvas2D-based immediate-mode map renderer, meaning your map visuals aren't limited to single lines of text or simple markers, but anything that can drawn with Canvas.
  • 🌍 Internationalization-ready: Display sharp CJK text, right-to-left languages and Indic scripts on maps.
  • ♾️ An infinite map. Currently, the organization and tagging of features in map tiles are fixed, but this will soon be user-customizable, enabling the rendering of any object and tag that exists in OpenStreetMap.

A map of Protomaps#

Protomaps is a small, cozy galaxy of bespoke tools for mapmaking, designed under a single mind by @bdon. Each component is shaped by the demands of other parts of the stack, but can be used independently with other map renderers and services via standardized data formats.

RenderingTilesDatabaseData Source
protomaps.jsPMTilesOSM Expressplanet.osm.pbf
other renderersWeb APIminutely diffs