What it is
heathfold.uk gives each village and town one page for the things people look up in a hurry: the next train, which bin goes out, how high the river is, whether there's a flood warning or a power cut, and the weather. It covers 25 places in Dorset and Somerset, 20 villages and 5 towns, with pages for their stations, rivers, schools and history alongside.
No figure on it is typed in by hand. Each one comes from a public source and refreshes on its own, so nobody has to keep it up to date.
Beyond the board
Each place has more than its live page: a street map, its weather since records began, its history, and the river it sits on.
What it joins together
More than twenty public sources, each with its own format, limits and licence.
- Trains. National Rail's Darwin feed for live departures, Realtime Trains for the timetable, and National Rail's incident feed for engineering work.
- Rivers and floods. Environment Agency river levels, rain gauges and flood warnings, and Wessex Water's storm overflow spills.
- Weather. Open Meteo forecasts and air quality, Met Office warnings, UKHSA heat and cold alerts, and the Met Office's 30 year averages to say whether today is unusual.
- Around the home. Dorset Council bin rounds, power cuts from four electricity networks, and for the towns, food hygiene ratings, police priorities and the town council's meetings.
- Background. Census figures, Ordnance Survey maps and heights, OpenStreetMap, schools, stations and listed buildings, worked out when a place is added rather than fetched on every visit.
The live sources are read on a schedule and cached, so a visitor never waits on a slow one. When a source fails, the page keeps its last good reading and says it's out of date rather than showing nothing. On the day this was written the site was reading 245 feeds.
How a change reaches the live site
I build it with Claude Code. The process around it is what keeps it right.
- Every change is a pull request. GitHub won't merge one until the tests pass against the latest version of the site, not just the branch, and that rule applies to me too.
- About a thousand automated tests, plus checks on the house style, on every place's data file and on the documentation.
- Merging doesn't deploy. A release goes to a private staging copy of the site first. The live deploy refuses to run until staging is on the same version and healthy, then waits for the live site to report healthy and rolls itself back if it doesn't.
- Every release is numbered, so what's live is always known. Nine releases since the first line of code on 11 September 2026, from 261 pull requests.
- Every morning a check visits every page and every domain name on the live site, and opens an issue if anything fails.
- Every week a data review looks for river gauges gone quiet, readings that are stuck or implausible and feeds that have failed, and compares the weather with the Met Office station at Yeovilton.
- The history is backed up daily, and train data is deleted within a year, as its licence requires.
What went wrong, and what changed
- A merge that lost data without a conflict. Two changes merged cleanly, but together they stopped lifted flood warnings being recorded, and no test caught it. The fix came with tests, and since then GitHub only merges a branch once it has been tested against the latest version of the site.
- Spending the train allowance. Testing against Realtime Trains used up much of the day's 1,000 calls, and two departure boards froze. They kept showing their last good times, marked as out of date. The boards now read every 15 minutes by day instead of every 4.
- A new town that looked broken. Sherborne said its river gauge wasn't answering for its first half hour, because a release had renamed where readings were cached. Now a page with no reading asks the Environment Agency directly, and a cached reading records which version wrote it.
- Averages that ran cold. While setting up the weekly review I found the long term averages were about half a degree too cold from 2017 on, because of a change in the weather model underneath. They now come from the Met Office's own 1 km grid.
Work built this way
Small changes, tested, staged and checked again once they're live. If you'd like work done like that, get in touch.