Meta : This blog is supported via Hugo + themes
Hugo is a popular template engine specifically designed for building static websites. Unlike dynamic content management systems, Hugo like many other static page generators pre-renders content into HTML files, resulting in lightning-fast loading times and simplified deployment. For my current version I just host this blog in Github pages. Hugo leverages Markdown files for content creation, which is pretty lightweight writing experience for developers. For extra geekiness points, I store the pre-rendered content in github with version control.
To setup a generic github page with Hugo I’ve used a mixed instructions of the official instructions https://gohugo.io/getting-started/quick-start/ and https://youtu.be/LIFvgrRxdt4?si=J6hh0Ml5TgLD2azQ tutorial.
To re-build/re-run in new environments we need few components and a checklist to get from 0 to hero, a fully blogged hero that being.
-
Get Hugo : https://gohugo.io/installation/linux/
-
Create new page :
hugo new site <<your_impactfull_blog>>
- Setup theming
For this blog, I use for now this minimalistic one : https://github.com/adityatelange/hugo-PaperMod
git submodule add --depth=1 https://github.com/adityatelange/hugo-PaperMod.git themes/PaperMod
- Nicely integrate with Github pages on publish : add Github page as a submodule for content repo:
git submodule add -f -b main https://github.com/floringrigoriu/floringrigoriu.github.io.git public
- Profit : start bloging like it is 2002 !
Create entry:
hugo new content posts/helloworld.md
Observe entry:
hugo server -D
Pro tip : versions of themes requires latest version of Hugo engine, the version might not be yet available on APT, but got great results using SNAP