Am I first who wrote Hugo tutorial to learn how to use Hugo?

Wonderful people behind Hugo:

I’ve launched my website, and would like to thank you for a sharp tool you have created.

My story is a bit funny, because I didn’t need a website – my friend did, and she asked me for help. She tried Jekyll and was somewhat in panic.

After a quick googling, I’ve decided to test Hugo. Since I had to produce some content, and I also had to take my notes, I’ve decided to combine the two tasks in one, and organized my notes into a Hugo project. It seems I’ve got carried away a bit. At some point, I thought that if I polish it a bit, it might be even worth to publish as a kind of cookbook-style tutorial, and so now it’s online.

I think it would be an appropriate thank-you note to you, Hugo developers, regardless, whether my writings are complete rubbish or, fingers crossed, something useful. At the very least, it would provide an insight into a newcomer’s misconceptions and gotchas.

I would be thankful for any comments you might have. The site is here:

Once again, thank you very much!


One quick comment. It would be helpful if there was a table of contents. As of now users have to click through each page to see all the content.

Having just glanced over a few pages, I am very impressed. This isn’t the first beginner’s tutorial (Mike Dane’s YouTube video series, I believe, was first), but it is the most comprehensive beginner’s introduction to Hugo that I have seen.

As the Hugo docs are rather cryptic, this tutorial will come in handy for many people.

Also I found this tutorial on multilingual Hugo sites very helpful.


Thanks, you make my ears move!

I don’t quite understand your comment, though. The table of contents is right there:

Each page has a link to the next and the previous one. The individual pages are written to address a specific topic and are supposed to be read entirely. They are also short enough, so I thought a table of contents isn’t necessary.

Now tell me, which “table of contents” are you missing?

Oh I see it now.

The page with the table of contents is not linked from the front page of your website. Instead you have this linked.

The solution is to change the link from your front page.

OK, so you didn’t notice the breadcrumb link. I’ve changed the reference as you’ve suggested.Thanks!

I really like your tutorial, which is a bit more advanced than my noobie knowledge. I especially like your use of Go rather than just HTML. You use it in a way that I can follow and learn from. No constructive ideas yet!

Thank you!

  • george entenman, chapel hill, nc
1 Like

Thank you, George!
What worries me a bit, is

Could you please pinpoint, which part was difficult to understand or follow? So that I can improve it.

Sorry! “More advanced” is just what I need, as long as it’s not “too advanced” for me to follow.

I find Hugo to be fairly complex. It took me awhile to internalize the somewhat odd relation between the main Hugo project directory and the theme that it’s using. And it took awhile to figure out how posts got their layouts, especially since some Hugo docs cover older versions of Hugo.

I need to begin to learn the shortcodes and other Golang usage, and your tutorial seems to take just the kind of baby steps in that direction that I need.

If I see anything that needs clarification or improving IMNSHO, I’ll be sure to tell you. :crazy_face: :face_with_monocle:

Again, thanks!

A piece of advice: the shortcodes is the means of the last resort, the (sometimes) necessary evil. Littering your content with code defies the fundamental reason Markdown was introduced in the first place - simplicity and readability.

Page variables, page bundles, and Go templates is what you need in the first order. Markdown render hooks is also an important topic. Image hook in particular, which essentially obsoletes the built-in shortcode.

And Hugo isn’t that complicated, the documentation is. Welcoming a new user with a blank page is what actually inspired me to write the tutorial in the first place.

This topic was automatically closed 2 days after the last reply. New replies are no longer allowed.