(Return to the blog homepage.)
If you're like me, you have no prior experience with web mapping. There's a lot of jargon to learn.
BBBike: An organization that provides regional extracts of OSM data for popular predefined regions, as well as on-demand extracts of bespoke regions. Uses osmconvert. See bbbike.org and extract.bbbike.org.
Chaikin's algorithm: An algorithm to smooth jagged corners of a line. See Chaikin's corner cutting algorithm.
Douglas-Peucker algorithm: A popular simplification algorithm. See Ramer-Douglas-Peucker algorithm on Wikipedia.
Esri: a prominent corporation in the geographic information systems space. Known for its ArcGIS products.
Feature: a geometric shape defining something to be mapped. Features are either points, linestrings, polygons or multipolygons.
Geofabrik: an organization that provides regional extracts of OSM data for popular predefined regions. Uses libosmium. See download.geofabrik.de.
GeoJSON: a file format for encoding geographic features. See geojson.org.
Layer: a collection of related features. A schema consists of several layers, for example, roads
, land
, pois
.
Mapbox: A commercial software vendor that defined the space. Many of their tools were open source prior to being made closed source. The community has forked many of the tools since.
Mapbox vector tiles: An open standard that describes how to encode vector features as protobuf streams. See Mapbox's website for details.
MapLibre: the umbrella organization that stewards the community forks of Mapbox's libraries, see maplibre.org
MapLibre GL: an open-source map renderer. See MapLibre GL JS for web apps and MapLibre Native for mobile apps.
MapLibre Style Spec: a language for styling how to render vector tiles. The language is encoded in JSON. See MapLibre Style Spec.
MBTiles: A container format for storing tiles, named after Mapbox. Tiles are stored as rows in a SQLite database, indexed in TMS format. See MBTiles spec on GitHub.
Mercator projection: The de facto standard projection used by web mapping software. See Mercator projection on Wikipedia.
Node: One of the three OSM primitives. A node is a single point on the globe. See Node on the OSM wiki.
OpenMapTiles: an implementation of the OpenMapTiles schema. See OpenMapTiles on GitHub.
OpenMapTiles schema: a schema released by the OpenMapTiles project. Requires attribution. See OpenMapTiles schema on openmaptiles.org.
OpenStreetMap: a crowd-sourced, open-source database of cartographic features covering the entire globe. See openstreetmap.org.
OSM: short for OpenStreetMap.
PBF: the Protocolbuffer Binary Format, a binary, efficient representation of the OSM database. See PBF format on the OSM wiki.
Planet: the complete OSM database, available as an ~134 GB XML file or a ~73 GB PBF file. See planet.openstreetmap.org.
Planetiler: A tile factory. See Planetiler on GitHub.
PMTiles: A container format for storing files, named after Protomaps. Designed to work on static object stores like Amazon S3 and Cloudflare R2, with no web server required. See PMTiles spec on GitHub.
Projection: a way to map the 3D globe onto a 2D shape suitable for display on monitors. See also Mercator projection.
Protobuf: A binary serialization format defined by Google. See protobuf.dev for more information.
protozero: A low-level C++ implementation of protobuf. See protozero on GitHub.
Raster tiles: Tiles represented as image files, for example, PNGs.
Relation: One of the three OSM primitives. A relation is made up of some combination of nodes, ways and other relations. It defines complex geometries or abstract concepts. See Relation on the OSM wiki.
Schema: a standard that describes what layers/features are available at different zoom levels in a conforming set of vector tiles. See OpenMapTiles schema and Shortbread schema.
Shapefile (a.k.a. SHP): a legacy file format for encoding geographic features. See Shapefile on Wikipedia.
Shortbread schema: an attribution-free schema. See Shortbread schema on shortbread-tiles.org.
Simplification: An algorithmic process to discard geometric detail when rendering features at lower zooms, in order to save bandwidth and processing power.
tilemaker: A tile factory. See tilemaker on GitHub.
Tiles: a hierarchical decomposition of the globe into a 2D projection. At zoom level 0, the entire globe is rendered in one tile (z0/0/0). At zoom 1, in 4 tiles (z1/0/0, z1/0/1, z1/1/0, z1/1/1). At zoom 2, in 16 tiles, and so on.
Tileset: a file containing tiles, often an MBTiles or PMTiles file.
TMS: Tile Map Service, a protocol for requesting tiles from a web service. See TMS specification on osgseo.org.
Vector tiles: Tiles represented as a collection of vector features, which can be composited, scaled and rotated on-the-fly, for example Mapbox vector tiles.
vtzero: A low-level C++ library for creating Mapbox vector tiles. See vtzero on GitHub.
Way: One of the three OSM primitives. A way is made up of two or more nodes, and defines a path on the globe. See Way on the OSM wiki.
Zoom levels: The granularity of cartographic features, ranging from zoom 0 (low) to zoom 14 (high) or even higher. See zoom levels on the OSM wiki.