Hugo quick start
Contents
This quick start uses
macOS
in the examples. For instructions about how to install Hugo on other operating systems, see install. It is recommended to have Git installed to run this tutorial.
Step 1: Install Hugo
Homebrew
, a package manager formacOS
, can be installed from brew.sh. See install if you are running Windows etc.
|
|
To verify your new install:
|
|
Step 2: Create a New Site
|
|
The above will create a new Hugo site in a folder named quickstart
.
Step 3: Add a Theme
See themes.gohugo.io for a list of themes to consider. This quickstart uses the beautiful Ananke theme.
|
|
Step 4: Add Some Content
You can manually create content files (for example as content/<CATEGORY>/<FILE>.<FORMAT>
) and provide metadata in them, however you can use new
commend to do few things for you (like add title and date):
|
|
Edit the newly created content file if you want, it will start with something like this:
|
|
Step 5: Start the Hugo server
Now, start the Hugo server with drafts enabled:
|
|
Navigate to your new site at http://localhost:1313/.
Feel free to edit or add new content and simply refresh in browser to see changes quickly (You might need to force refresh in webbrowser, something like Ctrl-R usually works).
Step 6: Customize the Theme
Your new site already looks great, but you will want to tweak it a little before you release it to the public.
Site Configuration
Open up config.toml
in a text editor:
|
|
Replace the title
above with something more personal. Also, if you already have a domain ready, set the baseURL
. Note that this value is not needed when running the local development server.
Tip: Make the changes to the site configuration or any other file in your site while the Hugo server is running, and you will see the changes in the browser right away, though you may need to clear your cache.
For theme specific configuration options, see the theme site.
Step 7: Build static pages
It is simple. Just call:
|
|
Output will be in ./public/
directory by default (-d
/--destination
flag to change it, or set publishdir
in the config file).