Advice For A Beginner Needing More Than Quickstart, Less Than Specific Functionality

I’m very new to web development in general, but I had high hopes that once I learned the basics of HTML and CSS I would be able to use Hugo.

I made a simple website without Hugo that consists of a single HTML landing page and a single CSS stylesheet.

My goal is to be able to add blog posts using Hugo to this landing page. It’s not clear how I do that, and the documentation doesn’t give me a clear starting point.

Does my homepage need to be called _index.html and put in Layouts? What about my CSS? I was able to get the landing page to show up when using hugo server -D but it doesn’t seem to have applied my CSS. I put the CSS in the static folder as intended, and referenced it in index.html as <link rel="stylesheet" href="static/index.css"> but no luck. Where do I put the CSS? Where do I go from here? I’ve spent a number of hours combing through documentation and blog posts and I’m feeling totally lost.

Hello,

We cannot answer questions that are so broad in this forum. The Hugo Documentation (or at least the introductory sections) should be read in advance.

Please have a look at the Requesting Help guidelines.

The official introduction to Hugo is located in the following link:

OK, here’s my very specific question: how do I reference my CSS file that I have in static/style.css? Where in the documentation does it say that?

Thank you. What does “served on the site root” mean? Does that mean that it ignores directory structure?

No. It means that the staticDir refers to the site root. A file under /static/styles/theme.css will be available in: /styles/theme.css

While from 2017, Mike Dane’s Hugo tutorial is still highly relevant and useful.

4 Likes

This is good. Thank you.

Feeling a lot less lost now due to Mike Dane’s tutorials. What I was missing from the official Hugo documentation was an overview that was more than hugo new but less than granular advanced features.

So, I think the best way to think about Hugo is that is offers a lot of power which can be wielded in multiple ways.

Unlike other SSGs, Hugo is not too opinionated in how you do something especially in highly customized settings. You are able to reference things in multiple ways1, able to override things at your leisure, and make Hugo play well with other tools/other Hugo repos/etc. Also it is blazing fast!

This can be quite daunting when things cross that critical threshold of complexity. The best advice that I can give is to think about how you want want to use your site – both as a content creator and as a developer. Try something out, the documentation will make more and more sense, and know that there might not be only one way to do something (and as you learn you will discover more and more elegant ways to do the same thing).


  1. Except for the ever tantalizing Pages from Data :laughing: :grimacing:

Yes I have no doubt (and indeed it is becoming clear) that Hugo is an excellent and flexible tool to do a great many things. Where I was having trouble was In the inability to find a “view from the hilltop,” i.e. more than a cursory overview (view from an airplane), less than specific customization options (view from the ground). Mike Dane’s tutorials have proven to fill in the missing perspective.

I’m sure the official documentation will prove useful now that I’m beginning to make progress. I have every intention of sticking with it, and who knows, I may try to offer my own hilltop view once I’m proficient.

Oh for sure, there has been lots of conversations about how to better the documentation. Since Hugo is still <1.0 there are many features coming in which are rapidly changing that “30000ft view” (i.e. JS bundling :white_check_mark: , Go Modules :white_check_mark: , … data from pages :question: ). I think that as we get closer and closer to 1.0 that there will be a lot more thought and work on the “pedagogy” of the documentation site.

1 Like

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