A notification at 7am. What to wear, and whether to bring an umbrella.
Tap the notification for another day →
A forecast hands you numbers. 14°C, 40% chance of rain, 3mm expected. What you need is a decision: jacket or no jacket, umbrella or no umbrella.
Translating one into the other is small work, but it is work, and it lands every morning before you're really awake. 40% chance of rain tells you almost nothing about whether you'll get wet.
One notification at 7am. The call is already made. Then I get dressed.
Clothes come off the feels-like high between 7am and 9pm, not the 3am low.
The umbrella line only shows up if 5mm of rain is still coming, or 1.5mm in one hour. Drizzle doesn't count. I'll walk through drizzle.
Rain that already fell overnight doesn't count either.
Wind, UV, dangerous heat and big temperature swings each get a line when they cross a threshold. Most mornings none of them do.
Air quality sits on the conditions line every day, worst AQI of the daylight hours. Above 100 it moves up to its own line, because that's where it changes what you'd do.
git clone https://github.com/kimhjona/weather-brief
cd weather-brief
python3 weather.py set-location 97205 # your postal code
python3 weather.py # today, in the terminal
python3 weather.py set-topic # pick a private ntfy topic
python3 weather.py send # and now on your phone
Subscribe to the topic in the ntfy app. A GitHub Actions workflow handles 7am and daylight saving, so it doesn't need your laptop open.
No API key, no account, no dependencies. One Python file. Open-Meteo for forecasts, ntfy for delivery. Both are free and neither wants a key.
I wanted something that still works in a year.