In aviation, a readback is repeating a transmission back to prove you received it. This site reads back to the public what the state collects about them.
Mapping automated licence plate readers in Canada — where they are, what they can do, and what the settings say. A better panopti.ca / DeFlock: layered by purpose (police surveillance vs. toll vs. border), plus the mobile-fleet capacity no dot map shows, retention comparisons, vendor capabilities, and the actual evidence on crime reduction.
Every safeguard is a setting. Retention on the same technology spans 3 minutes (New Hampshire) to indefinite (34 US states); Peel keeps reads 24 hours while neighbouring Toronto keeps them 7 days. Consent and context matter: a toll you pay (407) and a border you cross are not the same as a dragnet on your commute — so those layers exist, toggled off, with notes.
- Astro static site + MapLibre GL map (dark theme)
- Data pipeline:
npm run data→ Overpass API (OSM) → classified staticpublic/data/cameras.json. No runtime API calls, no database.- Layers:
surveillance:type=ALPR(police),highway=toll_gantry(toll),barrier=border_control(border) — the toll layer is data no existing ALPR map surfaces. - Pass a saved Overpass JSON as an argument to skip the API:
node scripts/build-cameras.mjs path/to/overpass.json
- Layers:
- Mobile fleets: hand-curated
src/data/fleets.json(sourced indata/research/), rendered as capacity circles — most Canadian ALPR is vehicle-mounted and invisible to dot maps.
Docker (recommended — stays up on its own):
docker compose up -d --build
Then visit http://localhost:4321. Survives reboots and doesn't depend on a dev session being open. See docs/docker.md.
Local dev (live-reload while editing):
npm install
npm run data # refresh camera data from OSM
npm run dev
src/pages/— map (index), tech (vendor hub + per-provider pages), rules, evidence, news, foi, aboutscripts/build-cameras.mjs— OSM data pipelinedata/research/— sourced research base (every site claim traces here)data/raw/— third-party datasets (EFF Atlas of Surveillance CSV)docs/— design decisions, Docker guide, launch plan + emailscontent/— draft content piecesDockerfile/docker-compose.yml/nginx.conf— static-site container
Camera data © OpenStreetMap contributors (ODbL).