Geobuf is a compact binary packing of GeoJSON on Protocol Buffers, created at Mapbox (Vladimir Agafonkin, 2015). It encodes the same objects as GeoJSON but typically 6–8x smaller thanks to varint, coordinate delta encoding, and a key dictionary; decoding returns an equivalent GeoJSON losslessly. It is a transport layer for mobile maps, edge CDN caches, and IndexedDB storage, not an analytical format. Our exporter builds a FeatureCollection from the OSM layers and encodes it into real protobuf .pbf with 6-digit precision (~0.1 m). Important: the format is honest — if encoding fails the export errors out, we do NOT substitute gzipped GeoJSON under a .pbf name.
Vigtigste funktioner
Om formatet Geobuf
Geobuf solves one problem: the same GeoJSON, but many times smaller. Instead of text — Protocol Buffers; instead of repeating property names — a dictionary of keys; instead of full coordinates — the differences between neighboring points, written as variable-length numbers. The meaning of the data does not change, only the packing does.
This is a transport format. It is taken when data has to be delivered: into a mobile app over a weak network, onto a CDN node, into a browser's offline storage. Computing statistics or editing features in it is awkward — for that it is first decoded back into GeoJSON.
The file contains a single FeatureCollection with all the selected layers, encoded as genuine protobuf. Coordinates are rounded to six decimal places, which is about ten centimeters on the ground — more than enough for city-level detail. OpenStreetMap attributes are preserved.
There is no substitution: if the encoding fails, the export ends with an error. Handing you a gzipped GeoJSON under a .pbf extension would be easier, but such a file would not decode with the geobuf library — and so would be useless.
Hvilket program åbner Geobuf-filer
Følgende programmer og applikationer kan åbne, redigere og arbejde med Geobuf (Protobuf-encoded GeoJSON)-filer (.pbf), der er eksporteret fra OSM2CDR:
Format specifications
- Open standard
- 2D only
- Lossless (no quality loss)
- Stores feature attributes
- Output: 1 file
- Real protobuf .pbf encoding a GeoJSON FeatureCollection at 6-digit precision (~0.1 m); honest guarantee — real Geobuf or an error, never a gzipped-GeoJSON substitution.
Hvem bruger Geobuf-kort
Sådan eksporterer du Geobuf
Sådan åbner du filen efter eksporten
- JavaScript — npm install geobuf pbf, then geobuf.decode(new Pbf(buffer)) returns ready GeoJSON that you can hand straight to Leaflet or Mapbox GL.
- Python — pip install geobuf, then geobuf.decode(open("map.pbf", "rb").read()); after that it is ordinary GeoJSON work or loading into GeoPandas.
- A mobile app — the file goes into the resources or is pulled from the server: decoding takes a fraction of a second, and the traffic is several times smaller.
- Offline in the browser — the decoded result is convenient to keep in IndexedDB and redraw the map with no network.
- Just to take a look — decode it into GeoJSON and drag it onto geojson.io: no viewer will show the .pbf itself.
Populære kort i Geobuf
Få korteksport i Geobuf (Protobuf-encoded GeoJSON)
Download professionelle Geobuf-kort fra OpenStreetMap. Øjeblikkelig generering, ethvert område.