BKKx · operational picture
Everything the system can count, without a map underneath it. Static layers are computed from the shipped data at build time; the live panels — cameras, gauges, weather, fires — poll and report their own failures.
571
Register entries
Fine Arts Dept, Bangkok
201
Gazetted
370 awaiting
2,433
Screened footprints
10 districts
19
Datasets served
each checksummed
17,865
Features shipped
10.9 MB on the wire
125
Walkable in Minecraft
monuments inside a world
Public streams play on demand: the rail shows a still proxied through this site, and no request reaches Google until you press play. Agency stills come from the public iTIC / Longdo RSS — only cameras whose snapshot URL returns a real JPEG are tiled. Extra registries can still be merged via CCTV_SOURCE_URL.
Polling the drainage department's gauge feed…
Polling the forecast models…
Forecast, not observation, for weather; air quality is modelled observation. Missing readings stay blank. Where rainfall forecast disagrees with an authorised gauge, the gauge is what happened.
Polling NASA FIRMS…
The twelve nominated data.go.th datasets, studied and catalogued. None carries figures yet: data.go.th is blocked from the environment this was built in, so the honest state is awaiting ingest rather than a plausible number. Run python3 scripts/ingest-bkk-water.py anywhere with open egress — it resolves each dataset against CKAN, reads the real column names instead of assuming a schema, and writes what it finds.
Live endpoint wired: /api/live/rain → สำนักการระบายน้ำ กทม. — BMA Department of Drainage and Sewerage.
Candidate layers for the twin, each with the capability it unlocks and the caveat that will bite. Terrain is the gap: Bangkok floods because it is flat, low and sinking, and without an elevation model the hazard layers can colour a district but cannot say where water goes. 14 of 19 need no credential at all.
Full reasoning, licence traps and the adapter pattern for reuse in another twin codebase are in docs/twin-data-sources.md.
| District | Monuments |
|---|---|
| พระนคร | 141 |
| ดุสิต | 67 |
| ป้อมปราบศัตรูพ่าย | 40 |
| บางกอกน้อย | 31 |
| ปทุมวัน | 27 |
| ธนบุรี | 26 |
| สัมพันธวงศ์ | 25 |
| บางพลัด | 25 |
| บางรัก | 25 |
| คลองสาน | 19 |
| บางกอกใหญ่ | 19 |
| ภาษีเจริญ | 19 |
| ตลิ่งชัน | 13 |
| จอมทอง | 12 |
| บางคอแหลม | 11 |
| ราชเทวี | 10 |
| บางขุนเทียน | 6 |
| บางซื่อ | 6 |
| ราษฎร์บูรณะ | 6 |
| สาทร | 6 |
| ยานนาวา | 4 |
| ลาดกระบัง | 4 |
| คลองสามวา | 3 |
| คลองเตย | 3 |
| มีนบุรี | 3 |
| จตุจักร | 2 |
| ดอนเมือง | 2 |
| บางกะปิ | 2 |
| บางนา | 2 |
| บึงกุ่ม | 2 |
| หนองจอก | 2 |
| บางบอน | 1 |
| บางเขน | 1 |
| บางแค | 1 |
| พญาไท | 1 |
| สวนหลวง | 1 |
| สะพานสูง | 1 |
| หนองแขม | 1 |
| ห้วยขวาง | 1 |
| District | Candidates | Reconsider | Exposed |
|---|---|---|---|
| Phra Nakhon | 1,281 | 144 | 421 |
| Samphanthawong | 756 | 108 | 347 |
| Bang Rak | 153 | 15 | 111 |
| Thon Buri | 58 | 0 | 16 |
| Bang Kho Laem | 56 | 25 | 13 |
| Lat Krabang | 41 | 0 | 1 |
| Phasi Charoen | 39 | 0 | 3 |
| Pom Prap Sattru Phai | 24 | 0 | 19 |
| Nong Chok | 24 | 0 | 0 |
| Khlong San | 1 | 0 | 1 |
Full provenance — source, licence, generator and checksum per file — is on the datasets shelf.