+
+ -
+
- Coordinates + +
diff --git a/README.md b/README.md index c25e469..0d288ec 100644 --- a/README.md +++ b/README.md @@ -107,6 +107,44 @@ when the server is running. --- +### UK Bus Stop Finder + +A mobile-friendly map for finding the `naptan:AtcoCode` recorded on UK bus +stops in OpenStreetMap. Search by postcode, street, place, exact ATCO code, or +browser location. Searches are preserved in shareable `?q=...` or +`?lat=...&lon=...` URLs, and `latitude, longitude` can be entered directly in +the search box. Selecting a stop shows its tags and stop-area-aware bus route +relations. Stop results identify their transport mode (such as bus, rail or +tram), and moving the map at zoom level 15 or closer loads stops in the visible +area. Wider map views deliberately do not query Overpass. + +Selecting a stop replaces the search parameters with a shareable stop URL such +as `?node=485403163` (or `?way=...` / `?relation=...` for other OSM object +types). Refreshing that URL fetches and reopens the same stop. + +UK stop queries use the Britain-and-Ireland Overpass instance at +`overpass.atownsend.org.uk`, with `overpass.private.coffee` as an automatic +fallback when the primary service is unavailable. + +Run it locally with: + +``` +pip install -e ".[web]" +flask --app uk_bus_stops.app run +``` + +The production URL is `https://openstreetmap.tools/uk-bus-stops/`. + +Browser tests use Python Playwright. After installing the development extras, +install Chromium once and run the suite: + +``` +playwright install chromium +pytest tests/ +``` + +--- + ## Licence MIT License. Copyright (c) 2026 Edward Betts. diff --git a/homepage/index.html b/homepage/index.html index c4866ef..59f41c5 100644 --- a/homepage/index.html +++ b/homepage/index.html @@ -325,6 +325,18 @@ +
+ Find the ATCO code for a UK bus stop by postcode, place, street or + current location. See nearby stops and the bus routes serving them. +
+ Find a bus stop → +