Overview

Design rationale

Unofficial preview — structured from the tempest-inky README.

Fixed geometry#

Categorical colour#

Colour is categorical, never decorative — hue carries condition, height carries quantity. On the ten-day forecast, bar height is temperature and bar fill is the day's condition, with a 0 °C reference line added when freezing falls inside the visible range. On the 12-hour precipitation chart, blue bars mean snow and green bars mean rain, plotted against a fixed 0–100 % scale so an empty chart reads as dry rather than broken.

Adaptive refresh and stale-data handling#

Behavior Detail
Refresh schedule Every 15 minutes normally, every 10 minutes when rain is likely in the next hour, and every 30 minutes overnight (22:00–06:00). A systemd timer ticks every 5 minutes and main.py decides whether a refresh is actually due.
Stale data If a fetch fails, the last good reading is redrawn with a STALE marker instead of wiping the panel.
Network resilience Waits up to 2 minutes for WiFi before fetching.
API retry Up to 3 attempts with exponential backoff on failure.
Hang protection systemd kills the process after 5 minutes.

See it running → covers the systemd service that drives this schedule day to day.

← Overview

Updated

Was this page helpful?