Overview
The Weather Browser proved a pattern: take public weather data that's normally locked in maps/radar/charts, and present it as a screen-reader-navigable list — severity-sorted, filterable, plain-language. This issue is the roadmap for extending that pattern, in two tracks:
- Track A — more alert sources for the existing browser.
- Track B — new "browser for X" features over other public weather/environmental datasets.
The value proposition is deliberate: even where this duplicates data that already exists on the web, we add value by making it accessible. Almost all of it is published only as color-shaded maps, radar/satellite images, or time-series charts — invisible to a VoiceOver user — while the underlying data is available as structured JSON/XML/CSV. Our edge is the navigation model, not the data.
Track A — More alert sources (extend the Weather Browser)
The current browser covers US (NWS), Canada (ECCC), and Europe (MeteoAlarm, 36 countries). Candidates to add:
- Australia — Bureau of Meteorology (BOM): has CAP warnings, but distributed via registered FTP / anonymous feeds rather than a clean JSON API. Messier, separate integration.
- Japan — JMA: publishes JSON warnings, but per-municipality and structured very differently; needs its own normalizer.
- New Zealand — MetService: CAP feed exists; smaller but relatively clean.
- MeteoAlarm gaps: North Macedonia's feed slug 404'd during the initial build; revisit if/when it's available. Greece's generic "Yellow Warning" (~28 alerts) currently lands in "Other" — could be resolved by classifying from the structured
awareness_type parameter.
None are as turnkey as the current three. Priority: lower than Track B's top items, but BOM/JMA close obvious geographic gaps.
Track B — New accessible weather-data features
All endpoints verified live (July 2026). Everything in the NOAA / NWS / USGS / EPA-Envirofacts ecosystem is free and keyless unless noted.
Prioritized shortlist — build these first
Ranked by (accessibility gap × usefulness × ease/keyless) and fit with the existing browser navigation model.
| # |
Feature |
Source (keyless unless noted) |
Why it's top-tier |
| 1 |
Active Tropical Systems (Hurricanes) |
NHC nhc.noaa.gov/CurrentStorms.json + forecast advisories |
Highest stakes. The cone / spaghetti-track map is the archetypal inaccessible weather graphic. Direct extension of the alerts browser's life-safety mission. |
| 2 |
Severe Weather Outlook (SPC) |
SPC RSS spc.noaa.gov/products/spcrss.xml + outlook text/GIS |
Categorical risk ("Enhanced — level 3 of 5") for your location is essentially unavailable to blind users today. Huge gap, broad US relevance. Needs point-in-polygon. |
| 3 |
River Levels / Flood |
NWPS api.water.noaa.gov/nwps/v1/ + USGS waterservices.usgs.gov/nwis/iv/ |
Life-safety. Flood categories already computed in the API; plain-language mapping is trivial ("2.1 ft below flood stage — No flooding"). Pairs with flood alerts we already show. |
| 4 |
Recent Earthquakes Near Me |
USGS FDSN earthquake.usgs.gov/fdsnws/event/1/query + GeoJSON feeds |
Easiest high-impact build — clean keyless feeds, simple list/filter, high public interest. Great early win to validate "browser for X" beyond weather. |
| 5 |
Air Quality (AirNow) |
AirNow airnowapi.org — free key required |
Health-critical (wildfire smoke). Only reason it's not higher: needs a key AND has zip/lat-lon endpoints reportedly retiring fall 2026 — verify successors before building. |
| 6 |
Marine: Buoys + Tides |
NDBC ndbc.noaa.gov/data/realtime2/{station}.txt + CO-OPS api.tidesandcurrents.noaa.gov/api/prod/datagetter |
Two keyless sources → one "Marine" section. Buoy maps and tide curves are strongly inaccessible; devoted user base. |
| 7 |
Drought (US Drought Monitor) |
usdmdataservices.unl.edu/api/... (JSON) |
Iconic weekly map; cheap to cache; dead-simple to present as a category word ("D2 — Severe Drought"). Very high gap-to-effort ratio. |
| 8 |
Space Weather / Aurora (SWPC) |
services.swpc.noaa.gov/products/... (JSON) |
Showcase feature — delightful, keyless, low-risk, genuinely inaccessible domain (aurora ovals, Kp bars). Strong "wow" demo of the mission. |
Fast-follow bundles (add to per-location detail, not standalone browsers)
All keyless, all small:
- Aviation METAR/TAF decoder —
aviationweather.gov/api/data/metar?ids=...&format=json. Turn cryptic METAR code into plain English ("Wind S 12 gusting 20 mph, visibility 10 mi, few clouds 25,000 ft, 84°F"). The decode itself is the accessibility win.
- Sun & Moon —
sunrisesunset.io (now keyless, includes moon phase/illumination, golden hour, day length).
- UV Index — EPA Envirofacts
data.epa.gov/dmapservice/getEnvirofactsUVHOURLY/ZIP/{zip}/JSON.
- Forecaster's Discussion (AFD/HWO) — already reachable via
api.weather.gov/products/... (types AFD, HWO); present cleanly, optionally LLM-simplified. We already have the NWS client.
Lower priority / gated
- Active Wildfires Near Me — NIFC ArcGIS feature services (incident points keyless); perimeter geometry is heavy. Red Flag Warnings are already covered by the existing alerts browser.
- SNOTEL snowpack — USDA NRCS AWDB REST (
wcc.sc.egov.usda.gov/awdbRestApi); western-US only, niche.
- Climate / almanac (records, normals) — weakest API story (NOWData is an interactive web tool, not clean JSON); confirm a stable source before committing.
Cross-cutting implementation notes
- Reusable scaffold: nearly every feature is "geolocate or pick a location → query one keyless endpoint → sort a list by distance/severity → per-item plain-language digest → severity/type filters." That's the alerts browser generalized. Build a shared "data browser" scaffold once and reuse.
- Plain-language mapping is the accessibility value-add, not just the raw number. Codify category→prose tables (flood categories, AQI, Kp/G-scale, SPC risk levels, UV) the same way alerts got scannable digests.
- Point-in-polygon is the recurring hard part (SPC outlooks, drought areas, fire perimeters). Several sources offer point-query or nearest-station endpoints that sidestep it (NWPS gauges, NDBC, CO-OPS, SNOTEL, earthquakes-by-radius) — prefer those first.
- Keyless-first ordering respects the cost posture: these NOAA/USGS/EPA sources add zero marginal cost (unlike the paid Open-Meteo forecast tier). Only AirNow needs a free key.
- Two caveats to verify before building: (a) AirNow zip/lat-lon observation endpoints reportedly retiring fall 2026 — confirm successors; (b) the NWPS API is explicitly "not 24/7 supported, may change without notice" — build defensively with caching/fallbacks.
Suggested first step
Build Recent Earthquakes Near Me (#4) or Drought (#7) first — both are keyless, low-complexity, and would let us extract the shared "data browser" scaffold cleanly, before tackling the higher-stakes point-in-polygon features (Hurricanes, SPC, Rivers).
Research compiled July 2026; endpoints verified live except AirNow (⚠️ pending endpoint changes).
Overview
The Weather Browser proved a pattern: take public weather data that's normally locked in maps/radar/charts, and present it as a screen-reader-navigable list — severity-sorted, filterable, plain-language. This issue is the roadmap for extending that pattern, in two tracks:
The value proposition is deliberate: even where this duplicates data that already exists on the web, we add value by making it accessible. Almost all of it is published only as color-shaded maps, radar/satellite images, or time-series charts — invisible to a VoiceOver user — while the underlying data is available as structured JSON/XML/CSV. Our edge is the navigation model, not the data.
Track A — More alert sources (extend the Weather Browser)
The current browser covers US (NWS), Canada (ECCC), and Europe (MeteoAlarm, 36 countries). Candidates to add:
awareness_typeparameter.None are as turnkey as the current three. Priority: lower than Track B's top items, but BOM/JMA close obvious geographic gaps.
Track B — New accessible weather-data features
Prioritized shortlist — build these first
Ranked by (accessibility gap × usefulness × ease/keyless) and fit with the existing browser navigation model.
nhc.noaa.gov/CurrentStorms.json+ forecast advisoriesspc.noaa.gov/products/spcrss.xml+ outlook text/GISapi.water.noaa.gov/nwps/v1/+ USGSwaterservices.usgs.gov/nwis/iv/earthquake.usgs.gov/fdsnws/event/1/query+ GeoJSON feedsairnowapi.org— free key requiredndbc.noaa.gov/data/realtime2/{station}.txt+ CO-OPSapi.tidesandcurrents.noaa.gov/api/prod/datagetterusdmdataservices.unl.edu/api/...(JSON)services.swpc.noaa.gov/products/...(JSON)Fast-follow bundles (add to per-location detail, not standalone browsers)
All keyless, all small:
aviationweather.gov/api/data/metar?ids=...&format=json. Turn cryptic METAR code into plain English ("Wind S 12 gusting 20 mph, visibility 10 mi, few clouds 25,000 ft, 84°F"). The decode itself is the accessibility win.sunrisesunset.io(now keyless, includes moon phase/illumination, golden hour, day length).data.epa.gov/dmapservice/getEnvirofactsUVHOURLY/ZIP/{zip}/JSON.api.weather.gov/products/...(typesAFD,HWO); present cleanly, optionally LLM-simplified. We already have the NWS client.Lower priority / gated
wcc.sc.egov.usda.gov/awdbRestApi); western-US only, niche.Cross-cutting implementation notes
Suggested first step
Build Recent Earthquakes Near Me (#4) or Drought (#7) first — both are keyless, low-complexity, and would let us extract the shared "data browser" scaffold cleanly, before tackling the higher-stakes point-in-polygon features (Hurricanes, SPC, Rivers).
Research compiled July 2026; endpoints verified live except AirNow (⚠️ pending endpoint changes).