Hantawatch — outbreak situational-awareness dashboard
A live dashboard that gathered public reports on the 2026 MV Hondius hantavirus outbreak into one shareable view.
My partBuilt solo
In short
A deployed situational-awareness dashboard for the MV Hondius hantavirus outbreak of April–May 2026, built from public sources only: a country choropleth, status-colored case events, a linked event feed, indicators, and a news ticker.
- What it is
- A live dashboard that turns public outbreak sources into one shareable situational view.
- Why it matters
- During a fast-moving outbreak, the public record is scattered across agency bulletins, a GIS layer, and news feeds. Reading them together, with a map and a sense of what changed, is the missing layer.
- My part
- I designed, built, and deployed it on my own.
Step by step
- 1
Aggregate
Cases, case events, and news are fetched in parallel on the server and normalized into one event model with source-health checks.
- 2
Render
A dark basemap with a country choropleth of active cases, circle markers colored by status, an event feed, a KPI panel with deltas, a 14-day sparkline, and a news ticker.
- 3
Filter
View, search text, and country are URL parameters; clicking a country polygon or a top-countries row toggles the country filter.
- 4
Link out
Every event row is an anchor to its source page. The dashboard summarizes; it does not become the source.
For engineersHow it is built, its limits, and its keywords.
How it works
A Next.js server component fetches and normalizes WHO disease-outbreak news, CDC material, an ArcGIS case layer, and GDELT and Google News feeds; a client map renders a choropleth and case markers; filters live in the URL so any view can be shared.
Limits
- It aggregates public information only: no patient-level data, and it is not an epidemiological product.
- The source parsers are specific to one outbreak and its feeds; this is not a general surveillance system.
- There is no automated test suite yet, and the only documentation is a handoff note.
Keywords
- OSINT
- outbreak dashboard
- Next.js
- Leaflet
- public health
- TypeScript