FairCTO
← Alle cases

Ruimtepaspoort — resourcepaspoort.app

Een doorzoekbaar paspoort van de Amsterdamse openbare ruimte op open BGT-data, met herkomst per gegeven.

2026·Bekijk live
Ruimtepaspoort — resourcepaspoort.app
Next.jsMapLibre GLPMTilesPythonBGT / PDOKVercel Blob

Resultaat

  • A city-scale open-data map from roughly 11 GB of source data, delivered as a 121 MB range-requestable tileset.
  • A provenance-first passport that is honest about what is measured, calculated and unknown.
  • Weekly data processing remains separate from fast, predictable application deployments.

Mijn rol

Sole engineer — data pipeline, vector-tile architecture, map experience and provenance model.

De uitdaging

Amsterdam's public-space data is available as open BGT data, but the source arrives as roughly 11 GB of CityGML — far too large and complex for an interactive browser map. The product also needed to distinguish what the government actually measured from values that were calculated, estimated or unavailable.

Wat ik bouwde

A searchable MapLibre application where every mapped public-space object opens a passport showing type, surface, size, location and provenance. A separate weekly Python pipeline downloads BGT data, filters historical registrations, converts CityGML to GeoJSONL and builds a range-requestable PMTiles file.

Hoe het werkt

  • The pipeline downloads and converts current BGT registrations, excluding historical records that would otherwise double-count more than half of some object types.
  • Geometry is tiled in multiple passes so lower zoom levels contain only drawing attributes, reducing typical session egress from roughly 16 MB to 5.5 MB.
  • The Next.js map streams vector tiles from Vercel Blob and opens a plain-language passport for the selected object.
Stack & waarom+
Python + shell data pipeline
The 11 GB source conversion runs independently from the web build. Heavy geodata work belongs in a scheduled pipeline, not inside every Vercel deployment.
PMTiles + Vercel Blob
One 121 MB vector-tile object is streamed with HTTP range requests. Users download only the map areas and zoom levels they inspect, rather than a city-sized payload.
MapLibre GL
Open-source vector maps — no per-tile bill and full control over styling, ideal for a data-heavy building map.
BGT via PDOK
Authoritative Dutch public-space geometry under CC0. The pipeline filters historical registrations and preserves source-holder context without incorrectly treating it as ownership.
Explicit provenance model
Every field is labelled measured, calculated, estimated or unknown. The app refuses to manufacture material values when the source coverage is too sparse or biased.

Klaar om AI écht te laten werken?

Producten die het echte werk doen.