Publishing Web Maps
Get the data into a browser without shipping the whole dataset.
A GeoDataFrame that plots fine in a notebook is often a 300 MB GeoJSON in a browser, which is a blank page and a spinning fan. These guides cover the pyramid every web map is built on, what vector tiles are and why they are not GeoJSON, generalising for zoom so a coastline is not drawn at full detail at zoom 4, building tiles and PMTiles archives from Python, styling them in MapLibre, and the three reasons a layer that exists in the file never appears on the map.
Start here
The cornerstone guide — the whole workflow end to end. Everything after it goes deeper into one part of it.
Step 1 Web Map Tiles Explained: XYZ, Zoom Levels and the Tile Pyramid web map tiles explained Begin the path →The full path, in order
15 guides: the concepts underneath the work, then each task, then the errors that task produces. Work down, or jump to the step you need.
- Vector Tiles Explained: MVT, Layers and Why They Are Not GeoJSON vector tiles explained 🧭 Concept
- Generalisation for Zoom Levels Explained zoom generalisation explained 🧭 Concept
- How to Prepare a GeoDataFrame for the Web prepare geodataframe for web ⚙️ How-To
- My GeoJSON Is Too Big for the Browser geojson too big for browser 🔧 Fix
- How to Build Vector Tiles from a GeoDataFrame in Python build vector tiles python ⚙️ How-To
- PMTiles and MBTiles Explained: Tile Archives Without a Server pmtiles mbtiles explained 🧭 Concept
- How to Serve a Web Map from PMTiles with MapLibre serve pmtiles maplibre ⚙️ How-To
- My Web Map Is Blank or the Layer Never Appears web map layer not appearing 🔧 Fix
- My Tiles Are Offset or in the Wrong Place tiles are offset or misplaced 🔧 Fix
- How to Render Raster Tiles from a COG in Python raster tiles from cog ⚙️ How-To
- How to Export a Static Tile Pyramid for Offline Use export static tile pyramid python ⚙️ How-To
- How to Style Data-Driven Colours in a Web Map data driven web map styling ⚙️ How-To
- How to Add Interactivity and Popups to a Web Map web map popups interactivity ⚙️ How-To
- How to Publish a GeoJSON API from a GeoDataFrame with FastAPI geojson api fastapi python ⚙️ How-To
Topics this path covers
A path is a route; a topic is everything the site has on a subject. Open a topic to see the guides this path skips.