
Making This Website
THIS IS AN OLD POST FROM WHEN I MADE A DIFFERENT VERSION OF MY PERSONAL WEBSITE.
While searching for a job fresh out of college in 2020, I learned just enough to hack together a basic website using React and many tutorials to make it look acceptable. It was a good project for me to learn some very basic web dev and build something to help with my job search. When I went to learn how to deploy it (and ideally not pay for hosting), I ended up porting the website over to Next.js and deployed it with the free tier of Netlifly. Next.js was my first introduction to the static site generator.
That website sat around until four years later when I got the itch to explore web dev again. With a few years of professional IT and software development under my belt (though not web development), it felt like it was time to revisit a personal website.
Picking a Way to Build the New Website
I have generally disliked every foray into the land of HTML, CSS, JavaScript, and thousand competing frameworks that attempt to solve the problems created by their competitors. Throughout learning about computers, Javascript is particular is something that has never clicked with me. Even after getting a formal education in computer science I was only more confused about how Javascript seemed to be powering the world. When approaching this new version of my site, I wanted to use something slightly above hand writing the site but still give myself a re-education in the world of web development.
After searching around to see what technologies existed, Astro caught my eye as an exciting framework that didn’t require as much JavaScript as React to get a website up and running; I found it wild how heavy even a basic website could become when a JavaScript DOM was driving page. After going through the tutorial, I decided to use it to make the website you see before you.
Creating an MVP-website
Okay, I need to confess something. I actually started this website about 4-5 times before getting to the current iteration. I went down many rabbit holes when it came to styling, additional frameworks, and modifying free templates. I even abandoned Astro a few times in the middle before ultimately coming back to it as my static site generator.
Some of those fruitless side quests:
- Trying build the entire website from raw HTML+CSS+JS and make it look as pretty as professional sites
- Googling “do I need a CSS framework” and “best CSS framework”
- Trying to learn 2-3 CSS frameworks before remembering I barely know CSS
- Learning Svelte without any particular reason to learn it
- Trying to shoe-horn in CSS from a cool template into my from-scratch website
- Scrapping the from scratch-website and trying to build on a fancy template
- Finding a new template I liked better and starting the process all over again
- Not quite liking the template and trying to modify it without understanding the other frameworks they used
I was unfocused and needed to narrow my scope. I decided to just go simple and ship an MVP, Minimum Viable Personal-website. I would define success as being able to go to SebastianSimmons.com and have something load. Once I had that, I could start working on advanced styling or whatever else I wanted to add.
I went simple and used the built-in Astro blog template.
I modified the boilerplate to make it technically “my website”. It was time to deploy it and call my MVP goal a success.
Deploying to the World
With the barest of bones website built, the next step in project Minimum Viable Personal-website was to deploy it to the world.
I looked at Netlifly’s free tier, which the old site used, but I ultimately went with GitHub Pages since that process was even simpler. If I ever need to switch back to netflify or some other service, that would be pretty easy.
GitHub Actions already had a workflow for deploying an Astro site so I just switched the deploy method to that action.
All you have to do is set the Build and Deployment Source to GitHub Actions

and then add the Astro workflow by GitHub pages to the repos actions.

After waiting a minute for the build to complete, https://sebastiansimmons.github.io/ was online!