Generating new content
How archetypes work
Hugo uses archetypes as templates for new content. When you run hugo new, it looks for a matching archetype in archetypes/ based on the content section, and uses it to pre-fill the frontmatter and body of the new file.
archetypes/
default.md ← fallback for any new content
blog.md ← used for content/blog/
books/
index.md ← used for content/books/ (directory archetype)
cover.jpg ← copied into every new book folder
Directory archetypes (a folder with index.md) are used when the content needs bundled files alongside it — like a book with a cover image.
Blog post
Create a new file under content/blog/:
hugo new content -k blog blog/my-new-post.md
Fill in the frontmatter and write your content, then preview locally:
hugo server
Push to main to deploy — the pipeline handles the rest.
Book
Use the script with the book’s ISBN (found on the back cover, Amazon, or Google Books):
./new-book.sh <slug> <isbn>
This creates content/books/<slug>/ with the cover downloaded and author pre-filled. Then open index.md and fill in:
date_started— when you started readingdate_finished— when you finished (leave empty if still reading)- Notes and Thoughts in the body
Styling
All overrides go in layouts/partials/custom_head.html — loaded after the theme’s CSS so everything here takes precedence. For syntax highlighting theme, change style in hugo.toml under [markup.highlight].