How and why this blog was created
Why I started this blog
I’ve been journaling for almost ten years. It’s a practice that has brought me great comfort and peace. Although I rarely read my old journals, just forcing my thoughts through the process of writing brings them to heel. For many years I’ve wanted to do more for my personal projects, make things that interest me, and share them. Thankfully I found Write that blog!. Their interviews with different engineers and developers got me to seriously consider blogging. And this post pushed me over the edge and convinced me to buy my url.
Ultimately this site is a portfolio. Saying portfolio in today’s world makes it sound like you’re trying to get employed. It inevitably is a factor. But, for me, it’s a way to stay focused on what I love, solving problems, without getting swept out by the riptides of my thoughts. Similar to how journaling forces my thoughts into a laminar stream, this website will force my projects into a coherent and hopefully finished state. There’s also the advantage of being able to peruse my old work like a museum.
“The medium is the message” - Marshall McLuhan
This is my domain
I chose zavista.dev, a sub-string of my very long last name, for the following reasons: My first name was taken, it’s cool and unique, and the .dev domain is broadly for tech stuff.
The tech stack
I wanted an environment where I have complete control over the content and how it’s presented. But I’m not a web developer, so it needs to be easy to get started with so I don’t waste time trying to figure out how to host my own Django webpage from a homelab that doesn’t exist. Static Site Generators (SSGs) are the good enough solution. I consulted the hivemind and chose Astro as my web framework, porkbun for domain management, and Cloudfare Pages for deploying my site. Cloudfare connects to GitHub, where all the content is stored and version controlled in a private repo.
Quick and dirty setup
-
To point Porkbun to Cloudfare add a site in Cloudfare. Cloudfare will provide two nameservers. In porkbun go to Domain Managment and find the nameservers section. Replace what’s there with the Cloudfare nameservers.
-
Create a private, empty GitHub repo. Clone to your local area and enter the repo directory.
-
Install Node.js and npm. Use the Astro creation command
npm create astro@latestand select the blog template.npm run devspins up a local instance of your webpage. Push your first commit to the repo. -
In Cloudfare, connect to GitHub and sign in. Pick the correct repo and get the right settings. Don’t worry, if you pick the wrong settings or if Cloudfare’s defaults don’t work, it’ll give an error message.
-
In Cloudfare Pages, go to the Custom domains tab and enter the domain you bought.
Wow, it’s just that easy.