This website is built using svelte. I always considered web development one of my weaker skills, so I purposefully created a challenge for myself with this site. I could have chosen a high level framework like Vaadin to mostly avoid dealing with "the web". Svelte seems like a good choice to build a (for now) mostly static site and practice my css skills.
I chose JoeyBurzynskis 100 Bytes of CSS to look great everywhere (enhanced version) to do most of the styling. I prefer a minimal look and focus on the content. More intricate CSS can be added to individual sub pages as needed.
There is nothing fancy about the website itself here. Just a bog standard svelte project, using vanilla css. The to me much more interesting part is its infrastructure, which might be due to me being a backend/devops fan at heart.
Terraform needs the github username to be correctly capitalized. The github website does not care about that, which is why I tripped over it. Somewhere in the chain between terraform, cloudflare and github the capitalization is enforced.
DNS records pointed from cloudflare to a cloudflare pages domain have to be configured in the respective cloudflare pages project. Otherwise the connection will not be successful and error code 522 appears. I suspect this is because cloudflare is not able to provide TLS if the domain isn't also set in the pages project.
On June 15 2023, Google announced the purchase of their Google Domain registrations by Squarespace. This means that my domains will be transferred to Squarespace. I am not a fan of that change, but will be waiting to see how it turns out. According to Google, no action from my side has to be taken.
I have migrated matthiaskronberg.de to Porkbun, to avoid the potential hassle surrounding Squarespace and the migration in general. Both Cloudflare and Namecheap do not support .DE domains, possibly because of certain requirements by DENIC. This is why I use Google Domains in the first place, funnily enough.
I have removed all svelte parts from the project. I realized I don't use any of its features, and that I can just use plain html and css. This makes the build process easier and development much simpler. I also got rid of about 10 directories/files starting with "." :)