A website is usually a HTML file served from a webserver or similar.
Use something like nginx or apache or lighttpd to host your site.
Serve HTTPS, configure automatically with something like certbot
Specify which CAs are allowed to issue certs for your domains with CAA records (see DNS)
Look at cool old stuff over on https://www.webdesignmuseum.org/software
Here's a list of websites with cool design:
https://2f30.org/home.html → suckless member design
https://git.zx2c4.com/cgit/about/ → minimal, clean and fast UI
https://quadpoint.org/ → personal site with a clean interface from 2014
https://www.karl.berlin → clean design
https://www.gibbard.me/computers/ → minimal, clean design, almost material
https://lyngvaer.no/about → dcat, very minimal native dark theme
https://causal.agency/ → styled man page
https://z3bra.org/ → very minimal list style
https://artlung.com/ → distinct design
https://m7i.org/ → minimal clean nice
https://ritter.vg/code_adventures_site.html → minimalist, fully working site no JS nothing
See this post for a very simple way with make: https://lyngvaer.no/log/static-page-generator
See https://www.karl.berlin/static-site.html for another way to deploy sites with makefiles. Can use smu as a markdown → html converter in between, see https://karlb.github.io/smu/ or debian package md2html for auto links
Novel way to give out email address without fear of spam: force ppl to run a command to 'decipher' it. Example:
echo jhfdgk@lsp.kh | tr psldkjfhg qtcnrmloa
Source: https://lyngvaer.no/email
https://www.mkdocs.org/ → static site generator for documentation
https://botoxparty.github.io/XP.css/ → XP and win95 styled CSS: buttons, windows, text, lists, trees, etc
https://j3s.sh/thought/my-website-is-one-binary.html → simply build websites in go