Thanks for sharing! I use Fireabse Hosting, which I guess gets grouped in with the other services you mentioned. It's free, has a lightweight devX, and integrates with CI via GitHub actions for preview and production builds [1].
Right, I didn't consider Google. The 360MB/day of free egress traffic (Spark plan) strike me as very peculiar. But at least it isn't Cloudflare's "unlimited" with secret limits in place, or Netlify's 100GB/month and then enormous costs on everything above.
Thanks for reminding me! I'll give Firebase a look.
By the way, very minor thing I noticed. Clicking on your photo on the homepage swaps backgrounds, but the timer-based swapping still runs on its fixed interval. Can look unpolished if you click it a bunch or in the wrong moment.
[1] https://github.com/jwngr/jwn.gr/tree/master/.github/workflow...