Skip to content

Support additional weather alerts (UV, pollen, air quality, wind, etc.) #52

@PhillyUrbs

Description

@PhillyUrbs

Summary

Today the dashboard shows a single rain banner. Extend the alert system to surface other actionable weather conditions for kids.

Proposed alerts

  • UV index — sunscreen/hat reminder when UV >= moderate (e.g. 6+)
  • Pollen — high tree/grass/weed pollen for kids with allergies (per-child opt-in)
  • Air quality (AQI) — limit outdoor play when unhealthy for sensitive groups
  • Wind / wind chill — high wind advisory or dangerously cold wind chill
  • Heat index — extreme heat warning (hydration / shade)
  • Thunderstorm — incoming storm in the next 1-2 hours
  • Snow / ice — boots-and-mittens reminder; school-bus-stop ice warning

UX

  • Stack multiple banners (or rotate) above the dashboard
  • Each alert: short kid-friendly message + icon
  • Per-alert enable/disable in Settings (some families don't care about pollen, etc.)
  • Per-child overrides where it makes sense (pollen sensitivity)
  • Theme-aware coloring (already wired --ui-accent for non-native frameworks; native theme keeps warm warning colors)

Data sources (free, no API key)

  • Open-Meteo Air Quality API: UV, PM2.5/PM10, pollen (tree/grass/birch/alder/mugwort/ragweed/olive)
  • Open-Meteo Forecast: wind speed/gusts, apparent temperature, precipitation type
  • Severe weather (NWS for US) via api.weather.gov alerts endpoint

Implementation notes

  • Add an alerts module that polls Open-Meteo Air Quality alongside the weather fetch
  • Config schema additions: alerts.uv.enabled, alerts.uv.threshold, alerts.pollen.enabled, etc.
  • Telemetry: breadcrumb on each alert raised; capture_message on alert-fetch failure
  • Tests: fixtures for high-UV, high-pollen, AQI-unhealthy, thunderstorm scenarios

Out of scope (for this issue)

  • Push notifications / sound alerts
  • Hourly alert timeline visualization (separate issue)

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions