If you want a no-code solution, I recently created a homepage using GrapesJS (for free). I’m hosting it on Cloudflare Pages (for free). The whole setup was dead simple and almost completely free, I’m only paying for the domain.
EDIT: oops, that isn’t technically self-hosted…but GrapesJS is a very cool tool for building a simple HTML website. Just make it looks like you want and it’ll spit out all the files you need for hosting wherever your heart desires. Caddy, GitHub, whatever.
I like to keep one of these tucked away: https://www.bestbuy.com/site/logitech-k400-plus-tkl-wireless-membrane-keyboard-for-pc-tv-laptop-tablet-with-built-in-touchpad-black/7575039.p