Skip to main content
  1. Posts/

My first post !

·502 words·3 mins
Table of Contents

This is my first post. Yay !!

I finally took the time to set this website up. I plan on using this space to document my projects as well as ramble about a few random things.

Before writing anything else, I’ll start by explaining how this site is built. First of all, I have no need for any dynamic content. Everything on this site is static, so I opted for a static website generator. Furthermore, I love using Obsidian to manage and write in markdown. I’ll probably write a post about obsidian in a near future. Anyhow, this website is generated from markdown using Hugo and the Blowfish theme ❤️.

Hugo
#

Hugo is a static site generator written in Go. Its lightweight, super fast and easy to use. An alternative to Hugo is Jekyll which is natively supported on Github pages, but I didn’t feel like having any kind of Ruby on my laptop.

To start things off, I mostly followed the quick start guide from the official Hugo website: https://gohugo.io/getting-started/quick-start. From my project directory, I first initialized an empty Hugo site using the hugo new site site command. This creates a site directory in which the default Hugo file structure is created. This is what file structure looks like using the tree -L 2 command from my project root folder. (I guess I’ll also write a post about the different tools that I like to use.)

.
└── site
    ├── archetypes
    ├── assets
    ├── content
    ├── data
    ├── layouts
    ├── resources
    ├── static
    └── themes

Blowfish
#

The next step is installing a theme. For this, I headed to https://themes.gohugo.io and I selected Blowfish. I chose to install this theme using the git submodule method which I find simple to setup and easy to update. The following commands got me setup with a git repo and the git submodule.

git init
git submodule add -b main https://github.com/nunocoracao/blowfish.git site/themes/blowfish

I then headed to the theme’s documentation to set things up as I wanted. Blowfish is very configurable and I didn’t know exactly what I wanted to change, so I decided to take inspiration from the lowkey setup. I very much like its simplicity.

Github pages
#

All that is left is to host this site. I chose Github pages as its free and my code is versioned there anyways. I first started by creating a public repo that has the same name as my Github user. I then wanted to use Github actions to generate my static site when ever I pushed a new version on the master branch. Hugo setup is what I used. I basically sets up a workflow which builds Hugo and deploys the generated static site to the gh-pages branch. Nice! All that was left to do was setting up my domain name and the repo’s page settings.

Final thoughts
#

Overall, the process took a couple of hours. Which in my books, is a short amount of time for any IT related endeavour. I’m stoked !