Every row below is fetched, at query time, from Overture Maps' places theme sitting in
a 203 MB GeoParquet file on a CDN — no server, no copy in this repo. DuckDB-WASM reads the file over HTTPS
range requests; the fixed bbox below (Greater London) is pushed into the SQL so the browser never
scans anything outside it. That read happens once: the London rows are then held in the browser's
own DuckDB, and every pan, zoom and count after it runs locally. The probe that chose this host over two Foursquare OS Places mirrors,
and the exact byte counts, are in README.md.
Starting DuckDB-WASM…
Places data © Overture Maps Foundation, licensed CDLA-Permissive-2.0 (rows sourced from Foursquare Open Source Places are Apache-2.0). Street tiles: OpenFreeMap, © OpenMapTiles, data © OpenStreetMap contributors. Drawing: deck.gl and MapLibre GL JS.
Pan or zoom the map: bindDeck(grid, { viewportFilter: true }) writes the visible bounds
back to the grid's own filters and re-queries the in-browser London table — the grid, the places
KPI and the category bar narrow with it. Past 20,000 places in view the map draws the engine's density
cells as hexagons; zoom into a borough to see the places themselves, coloured by category.