It’s been a couple of years since I’ve did my last relaunch.
TLDR Recently I’ve stumbled upon Hugo build on Go which looked promising so I went investigating for a bit and few days later, fresh made coffee, starring at my screen, a wild statically generated website appeared.
The Journey
I was checking multiple SSGs on Jamstack and found an awesome solution by John Sundell called publish regarding it is written in Swift. Although this looked great I wanted to try something new and plain simple so I went for Hugo since I’m also doing some Go programming recently.
And voilà Hugo worked like a charm out of the box. It’s fast, offers templates, has markdown, supports localization and is super easy to customize. Plus I don’t experience any headaches anymore like weird js erros or broken hot-reloading for Nuxt.
Hot Reloading
What can I say… it’s just ridiculously fast
Start building sites …
hugo v0.110.0+extended darwin/arm64 BuildDate=unknown
...
Built in 24 ms
Setup
It just takes a few simple steps to start your own project
# setup on a mac
brew install hugo
# create your project
hugo new site awesome-project
cd awesome-project
# (optional) including a theme
git init
git submodule add {github-theme-url} themes/{theme-name}
echo "theme = '{theme-name}'" >> config.toml
# serve
hugo server
That’s it.
Extras
Posts
You can now create some posts like so..
hugo new posts/first.md
Custom Layout
And if you want to customize your theme just check the themes
folder and duplicate the layout you want to overwrite including the folder paths.
cp \
{project-folder}/themes/{theme-name}/layouts/_default/single.html \
{project-folder}/layouts/_default/single.html
Final note
Worth taking your time to compare tools before using them.