--- slug: jekyll-to-hugo title: "Jekyll to Hugo" date: "2021-10-16T07:51:29-04:00" draft: false --- I took some time this weekend to do the following: 1. Migrate this site from [Jekyll][] to [Hugo][]. 2. Create a new site theme. 3. Update the [About][] page. 4. Add a new [Articles][] section. The [Articles][] section will allow me to write longer articles without polluting the main blog. ### Hugo Migration Pros: * Significantly faster. [Jekyll][] sometimes tool 30 seconds to regenerate this site, and [Hugo][] does it in less than a second. * Single static binary. Much easier to install. * Built-in [SASS/SCSS][sass] support. * [HTML][], [CSS][], and [JavaScript][js] [minification][]. In particular, HTML minification is content-aware so it doesn't strip significant whitespace in `
` or `` blocks. View the
source of this page to see what I mean).
* [Go template][html-template] support.
* [Jekyll][] importer that works reasonably well (but see below).
Cons:
* The default [Markdown][] parser is limited and not based on
[GitHub][]-flavored [Markdown][].
* Because of the previous item, many of the literal `` elements in
my imported [Jekyll][] content had to be fixed by hand.
* Occasionally baffling template search order.
* Default RSS feed entry contents are truncated and stripped of HTML.
### Theme Rewrite
Changes in the new theme:
* Clean rewrite based on [Bulma v0.9.3][bulma].
* Icons from [Feather Icons][feathericons].
* Consistent font sizes.
* Improved layout. In particular, I removed the sidebar and improved
the page header.
[jekyll]: https://jekyllrb.com/ "Jekyll static site generator"
[hugo]: https://gohugo.io/ "Hugo static site generator"
[bulma]: https://bulma.io/ "Bulma CSS framework"
[sass]: https://sass-lang.com/ "Syntactically Awesome Style Sheets"
[css]: https://en.wikipedia.org/wiki/CSS "Cascading Style Sheets"
[html]: https://en.wikipedia.org/wiki/HTML "HyperText Markup Language"
[js]: https://en.wikipedia.org/wiki/JavaScript "JavaScript programming language"
[minification]: https://en.wikipedia.org/wiki/Minification_(programming) "Remove all unnecessary characters from source code to reduce it's size"
[go]: https://golang.org/ "Go programming language."
[html-template]: https://pkg.go.dev/html/template "Go html/template"
[feathericons]: https://github.com/feathericons/feather "beautiful open source icons"
[about]: /about "About page"
[articles]: /articles "Articles section"
[markdown]: https://en.wikipedia.org/wiki/Markdown "Markdown markup language"
[github]: https://github.com/ "GitHub"