Skip to main content
  1. Projects/
  2. Hugo Site/

Setting up my website

·595 words·3 mins

Content
#

Finally, I’ve set up my new website. The learning curve was (and is !) very steep. First, I had to find a tech stack that worked for me. In 2025, with many options to choose from, it was slightly overwhelming. What I was looking for was something cheaper, leaner, and less prone to cybersecurity incidents than the previous WordPress installation I had. I tried out various static site generator stacks, such as Jekyll and Gatsby.

Initially, I had been somewhat insistent on the idea of a GUI-based webpage editor, as I wanted to replicate the familiar and comfortable experience that I’d had with WordPress. An area of high concern for me was media uploads. Dragging and dropping seemed so easy! While my current setup lacks the GUI editor (maybe not for long..), I have found that a markdown-based SSG setup is ideal for my needs and actually quite comfortable once one is familiar with the build process.

Setting up the site for the first time was somewhat painful due to the Git learning curve. I’ve still not gotten as comfortable with it as I’d like, but it was just a matter of time before I was in a situation that I had to learn it - better late than never. I’ve also greatly enjoyed the experience of getting to completely customize the HTML and CSS of my site.

While most likely something that only few visitors will spend time reading, I dumped hours’ worth of time into making my resume automatic. I have a google document for my resume that allows me to modify or view it across any of the devices I own. I wanted the resume to be auto-updating on my website, so I didn’t have to remember to do it. I also wanted private information such as my phone number, email, and zip code to be redacted. The way I figured out to do all of this is with a separate GitHub repository that, when a new push is sent to my regular blog repo, a new version of my resume is downloaded, compared, and updated if it does not match. Then, I perform some python magic, and voila! The sensitive text disappears!

Update
#

As of April 2026, the resume section of this page is outdated. I have moved my resume to using LaTeX for the improved standardization and predictability offered. I plan to incorporate an automatic deployment pipeline for my LaTeX CV to my website but I have not yet figured out how I will do this.

Resources I used
#

I leaned heavily on a few resources in this process. The Youtube video that initially inspired me to create a website was NetworkChuck’s “You need a website”.

Christian Lempa, a Youtuber dedicated to self-hosting who’s content I greatly enjoy, also published a video about Hugo here.

Both my theme of choice (Blowfish) and Hugo have excellent documentation on their sites. Blowfish’s documentation is here and Hugo’s is here. I got lots of value from the shortcodes page on Blowfish.

This markdown cheat sheet has also been very helpful to me as a quick reference.

Lastly, I aliased hugo serve --cleanDestinationDir --disableFastRender to serve in my ~/.bashrc file. I’ve noticed that on some larger changes to template files or other potentially website-breaking changes that hugo will throw an error when visiting the site. I used disable fast render to try to fix this. It has had some sucess. In the cases where it hasn’t fixed the problem, I’ve just had to ctrl+c the hugo process and rerun serve.

Hiller Hoover
Author
Hiller Hoover