Release built 4 October 2026 Official listings: 3 October 2026
eligible listed locations
1,417
counties on the map
32
settlement boundaries
1,394
01 / THE QUESTION
Is this a Centra or SPAR town?
For years, Centra and SPAR have quietly fought for control of Ireland. Town by town. Forecourt by forecourt. Chicken fillet roll by chicken fillet roll.
So I did the only reasonable thing: mapped the conflict.
This project tracks who controls each town, where the strongholds are, and where the battle remains too close to call.
Welcome to the war room.
02 / THE ENGINEERING
Good maps start before the map.
LOCAL PYTHON / FILES / GEOPANDAS
From a shop listing to a place on the map.
Official chain locators Python extraction + reviewed FSA evidenceCSO / NISRA Boundaries & census populationTailte Éireann / OSNI County boundaries
BRONZEFreeze the evidence
Dated inputs, source manifests and content fingerprints.
SILVERResolve the identities
A canonical store register, reviewed corrections and explicit count eligibility.
GOLDPut it in context
Spatial joins, demographic enrichment and straight-line rivalry rankings.
OSM-only candidates stay separate from the counted register.
Quality gate → promote the releaseFailed checks keep the last successful map in place.
Leaflet map → versioned static bundle → career-site War RoomSaved JSON / GeoJSON. No database connection for visitors.
THE REFRESH LOOP
Windows Task Scheduler runs the local refresh weekly. Website export and copying remain manual; Azure storage and automatic deployment are future work.
01 / TRUST THE EVIDENCE
Reconcile, don’t guess.
Official locators establish the register. Source IDs, coordinate checks and evidence-backed reviews resolve identity and location conflicts. Unconfirmed OSM candidates remain visible as an optional layer, outside the main totals.
02 / NOTICE REAL CHANGES
Read the content, not the filename.
Fingerprints detect changed inputs even at the same path. Unchanged content skips rebuilding. New snapshots recheck whether earlier reviews still apply before promotion.
03 / KEEP THE MAP RELIABLE
Check it before it ships.
Frozen inputs support replay. Spatial joins and count reconciliation run before atomic publication; a failed build leaves the previous map serving. This release passed 25 quality checks.
Implemented with local Python, GeoPandas, dated files, offline CI tests and a weekly Windows refresh job. The computer must be awake, connected and signed in. Export delivery is a separate website release step; an automatic end-to-end public refresh is not implemented.
Every territory has a definition. Every point has a source. Here’s the context that belongs alongside the colours.
What the counts include+
Main counts use official chain listings and reviewed evidence, including Food Standards Agency records. SPAR includes EUROSPAR. Locators can be incomplete or stale; a missing listing is not proof that a shop has closed.
In this export, 5 official records still need review and 199 OSM-only candidates are excluded from main totals. 1,289 locations fall inside settlement boundaries; 128 sit outside them.
Geography, population & distance+
Settlement boundaries and historical population come from CSO Census 2022 and NISRA Census 2021. Some NI population figures are unavailable; missing values stay missing. County geography uses Tailte Éireann and OSNI, with the six historic NI counties rather than council districts.
1,416 of 1,417 eligible locations are assigned to a county. 1 remains outside the saved county polygons. Rivalry distances are straight-line distances. Front Lines samples a 1 km grid and does not model roads or terrain.
Some source coordinates are inaccurate or disagree with other evidence, which can affect small distance comparisons. A future improvement would add stronger coordinate validation and a Google Maps cross-check before a release is promoted.
A stronghold defaults to at least 75% of the two chains’ stores, with four eligible stores minimum. Contested territory has 40–60% on each side. These are exploratory labels for listed presence.
Live services & saved data+
The analytical snapshot is static. Leaflet and OpenStreetMap tiles need internet access. Town lookups use saved data; a submitted NI postcode goes to Postcodes.io. A submitted road journey sends its endpoints to the OSRM demo service. Eircodes match known store addresses, not a complete national address lookup.
The map retains the original source links, attribution and service limitations. Visitors need no GitHub login or data-platform credentials.
Snapshot, methodology & public release+
Pipeline run: 20261004T175327Z-f8e32ccc. Listings dated 3 October 2026; manual review dated 4 October 2026. The bundle was exported from the promoted release and its saved asset hashes were verified.
The map reads a versioned export, independent of the pipeline. Official locator bulk reuse rights remain unconfirmed; public redistribution needs suitable reuse permission or a register built from appropriately licensed sources.