If you run a Raspberry Pi 5 with an NVMe SSD, you probably want to keep an eye on temperatures. There are quite a few projects out there that let you graph CPU or GPU temperature over time, like atmospi, Temperature-Monitor, or various Grafana+Prometheus setups. The problem is most of them only care about CPU temperature and maybe ambient room temp. None of them monitor SSD temperature, which is something you actually want to watch on a Pi 5 where the NVMe drive sits right under the board and can get surprisingly hot. You could set up a full monitoring stack with Prometheus, InfluxDB and Grafana, but that feels like overkill for a small single-board computer that should be doing its actual job, not running a monitoring infrastructure.
I put together rpi-temperature-monitoring to solve exactly this. It reads CPU, GPU, and SSD/NVMe temperatures (via smartctl), stores everything in a local SQLite database, and serves a dashboard with interactive charts from a built-in Python web server. The whole thing runs on Python standard library only, no external dependencies. You get a web UI with Chart.js graphs showing 1-hour to 1-week views, auto-refreshing every 30 seconds. It also supports external sensors like DS18B20 or DHT11/DHT22 through a plugin system if you want to go further.
Pure Python, SQLite and a single setup.sh to get it running with systemd services. The SSD monitoring works with NVMe and SATA devices and even stores the device model name so you can tell which drive is which. If you run a Pi as a home server or a node for something and want a simple way to check if your SSD is overheating, this does the job without pulling in half the internet as dependencies.