It seems like there’s a lot of ways to go about this that may be overkill, so I’m curious which may avoid that.
Low maintenance in this context is aiming for moderate technical knowledge/setup, lower cost, and portability in case you need to migrate your site and so minimal hassle in that process.
Its free because the files are already public via GitHub, so it doesn’t cost GithHub much extra money to run.
Anyone can go to a public GitHub repo and see the files, right? So if the GitHub Pages website’s files are in a public repo, all GitHub has to do is slap a domain name in front of those files.