Methodology
How KlaraMap decides what to show. Official alerts set the status; everything else is context and never changes it.
Sources per layer
- Lithuania, official air alerts: LT72 / Lithuanian Armed Forces, per county. Archive: PAGD open data.
- EE: eesti.ee sitrep (Kaitsevägi ohuteavitus) (unofficial).
- LV: 112.lv (VUGD) (unofficial).
- PL: Alert RCB — gov. air-threat warning (SMS) + RSO (MSWiA / TVP) (official, from its web page).
- SE: VMA – Sveriges Radio API (official).
- FI: Yle · Vaaratiedotteet (official).
- NO: Nødvarsel (DSB) RSS (official).
- UA: alerts.in.ua (Мапа тривог) (unofficial).
- Other European countries: no official feed yet. Their pages say so and never show an all-clear.
- Fires: NASA FIRMS (VIIRS and MODIS satellite detections), last 48 h, Europe. Low-confidence points are dropped. Persistent hot spots are masked with a 30-day repeat-detection grid (see below).
- Earthquakes: EMSC seismicportal (FDSN), Europe-wide inside 34–72°N, 25°W–45°E, magnitude 3.5 and above, last 7 days, refreshed about every 2 min. Automatic solutions may be revised.
- Weather: EUMETNET MeteoAlarm, all 38 member-country feeds, Europe-wide. Area dots for yellow, orange and red warnings that are in force now.
- Unrest and incidents: GDELT media reports.
- Aircraft: ADS-B military traffic from adsb.lol (/v2/mil), clipped to a box around Lithuania (about 50 km), not Europe-wide or Baltic-wide. That display box is unchanged.
- Sweden official public warnings: Sveriges Radio VMA (vmaapi.sr.se), not the Krisinformation API. Norway official public warnings: Nødvarsel (DSB). Denmark has no official public-warning relay here (it appears only in MeteoAlarm weather).
- Radiation (Health): RSC RADIS for Lithuania and EURDEP (REMON) for Europe, as gamma dose rate in nSv/h. The calm baseline (counts, average, min, max) is in the Health drawer. Map pins appear only when a station exceeds 250 nSv/h. If the EURDEP value API is down, Europe-wide readings are shown as unknown, never as all-clear. This feed never changes official air-alert status.
- Internet outages (Cyber): IODA (Georgia Tech) country-level alerts for European countries in the map region list, refreshed about every 5 min. Dots sit at the country centre when the latest alert is not normal. An empty list, or a down feed, is unknown — never all-clear. Cloudflare Radar is not used yet (needs a CLOUDFLARE_RADAR_API_TOKEN). This feed never changes official air-alert status.
- GPS jamming (Cyber): derived from adsb.lol ADS-B NACp in a Baltic/Europe box (Baltic Sea, Kaliningrad, Poland, Finland, Black Sea; west 8°–east 42°, south 41°–north 70°), using 250 NM tiles. A 50 km cell is flagged when at least 3 distinct airborne ADS-B aircraft report nac_p ≤ 5. MLAT and TIS-B tracks are excluded. Cells are shown as round dots at the cell centre, never as filled polygons. An empty list, or a down feed, is unknown — never all-clear. Military aircraft on the map stay in the Lithuania ~50 km box. This feed never changes official air-alert status.
- Shelters: PAGD.
Fail-safe: no false all-clear
Official “clear” older than 60 seconds, or from a feed marked down, is shown as “Status unknown”. We never show an all-clear from stale, delayed, or unreachable official data. A single transient failed poll does not change the status while the last successful official update is still inside that 60-second window.
- A relay in Vilnius polls the official feeds every 12–60 s.
- Neighbour-country feeds use the same rule, with 2.5 poll intervals as the stale window for slower sources.
- After 2 failed polls in a row the official Lithuanian feed is marked down, and the status stays unknown until it recovers.
- Every page shows when it was last updated, in local time and UTC.
Satellite fire detections
NASA FIRMS low-confidence detections are dropped. Persistent hot spots (industry, flares) are masked with a 30-day repeat-detection grid: roughly 1 km cells with hits on at least 5 distinct days (or a 7-day, 3-day fallback). This is not a list of known industrial sites; FIRMS does not publish its static thermal-anomaly mask through the API.
Unrest place check
GDELT unrest reports are shown only when the resolved place (city or country) is named in the article title or lead, once the lead has been fetched. A place that appears only in the URL is not enough. Capital-dateline stand-ins and country- or region-level geocodes are also dropped. This check applies to unrest reports, not to every media layer.
Related reports
While an official alert is active, media reports within 50 km of the alerted area and from 2 h before the alert until 2 h after it ends are listed under that alert instead of as separate marks. Each report joins its nearest alert only.
Alerts on the map
An alerted area is a round dot in the alert colour at the area's label point, with its name. No outlines or fills. The status panel lists the areas.
Severity sizes
Event marks come in three fixed sizes: 6, 9 and 13 px. Never a continuous scale.
- Reports: 1–3 sources small, 4–15 medium, 16+ large.
- Fires: FRP under 15 MW small, 15–79 MW medium, 80 MW+ large.
Verification tiers
Official government or armed-forces feeds, and sensor measurements (for example satellite fire detections), are Tier 1. Media reports are Tier 2 when the same report appears on multiple domains, and Tier 3 when they come from a single source. Related media reports never change the official status. News does not trigger or override an official alert level.
- Tier 1 — official / measured: from a government or armed-forces feed, or from a sensor. Only official feeds set the air-alert status.
- Tier 2 — multiple sources: the same media report from 3+ different domains.
- Tier 3 — single report: 1–2 domains. Treat with care.
Disclaimer
KlaraMap is an independent monitoring interface. It does not replace sirens, cell-broadcast alerts (LT-Alert / EU-Alert), or official instructions. In an emergency call 112.