Elevation profiles
2025-07-26 08:45
Made a script that makes my website's header elevation profile image update every time I build or post or whatever. Currently it stitches together the last 10 GPX activities I've done (runs, rides, hikes etc). I really love this. It looks like a heart pulse, which in some way it is, because I get a big kick out of climbing those big mountains. If its looking flat, then I'm probably fighting some injury, or sick or something, and be doing boring flat recovery walks around the block.
The best part is it is all automated. In fact, in the process I made it even quicker to build my website. Previously I was using zola build
and neopush
to build the website (convert markdown to html etc) and push to neocities, where the site is hosted. I have replaced zola build
with zp
which is an alias for p /home/zkbro/.local/bin/create_elevation_profile.py && zola build
(p
being an alias for python3
). I didn't include neopush
because it gives me a chance to remember something I needed to do before making it public (a bit like delaying hitting that SEND button on emails).
It is a bit different to my previous approach, generating a weekly image every week. I never automated that, and it made the header look a bit weird on light or no-exercise weeks. I'm happy with this change. It also means I don't have a million photos. I can create them on the side if I need to. It caters for dark and light modes too in line with my website style.


A little positive side effect of pulling and storing all my Garmin fit files and mucking about with them.