Monorepo for the OSM Science 2026 submission on building entrance locations in OpenStreetMap and their effect on transport analysis and accessibility.
It bundles two independent deliverables:
- The academic paper (
main.tex,bibliography.bib) — also synced with Overleaf. - The Entrance Analyser sampling tool (
entranceAnalyser/) — a small Rust + React/MapLibre web app used to collect and analyse candidate sites on the globe.
.
├── main.tex # Paper — abstract and extended version
├── bibliography.bib # References
├── LICENSE # MIT — applies to all source code
├── LICENSE-PAPER # CC BY 4.0 — applies to the paper content only
├── .env.example # Copy to .env to configure the tool
└── entranceAnalyser/
├── backend/ # Rust backend (axum) — Postgres + PostGIS persistence
└── frontend/ # React + Vite + MapLibre GL frontend
The paper is a standard LaTeX project. Overleaf is connected to the
chairemobilite/stateofthemap2026 remote and pushes to main. Local builds
work with any modern TeX Live distribution:
latexmk -pdf main.texThe tool draws inhabited bounding boxes from a pre-computed GHS-POP grid stored in PostgreSQL (configurable cell size, 1–100 km, default 10), shows them on a MapLibre map with togglable basemaps, and persists kept candidates plus downstream analyses to the same database. Each candidate is decorated with its total population, density per km², and density relative to the densest cell in the world.
Prerequisites: Rust stable (1.90+), Node.js 22+, Yarn 1.x, and a
running PostgreSQL 14+ instance with the PostGIS extension
available (Postgres.app, brew install postgis, or the
postgis/postgis Docker image all work). Copy .env.example to
.env and tweak the port/user if needed, then:
cd entranceAnalyser
cargo run --bin entrance-analyser-ensure-db # creates $PG_DATABASE and $PG_DATABASE_TEST
cargo run --bin entrance-analyser-migrate # optional: apply migrations using .env (server also migrates on startup)
cargo test # migrations run in a disposable DB per test
cd frontend && yarn testThe runbook (downloading GHS-POP, building the grid, starting the
backend + Vite dev server) lives in
entranceAnalyser/README.md.
Copy .env.example to .env at the repository root and fill in the values
you need. All variables are optional for the scaffold, but some features
require them (for example, Bing Aerial basemap needs VITE_BING_API_KEY).
- Code (everything under
entranceAnalyser/,.github/, configuration files): MIT — see LICENSE. - Paper (
main.tex,bibliography.bib, generated PDF): CC BY 4.0 — see LICENSE-PAPER.