- Hugo extended v0.100+
brew install hugo # macOS
choco install hugo-extended # Windows
snap install hugo --channel=extended # Linuxhugo server
# → http://localhost:1313/ (live reload on file save)hugo # output → public/
hugo --minify # minified production buildhugo build 2>&1 # should show 0 errors, 0 warningsSearch is powered by Pagefind and only works after a full build + index step. The hugo server live-reload server does not include search.
To test search locally:
hugo --minify && npx -y pagefind --site public
# then serve public/ with any static server, e.g.:
npx serve publicIn CI (GitHub Actions) the index step runs automatically after the Hugo build.
Open any content page in the dev server. If a required field is missing, a yellow warning banner appears at the top of the page. All builds also emit <!-- ABSTRACT VALIDATION: ... --> HTML comments — grep for them in public/ to audit content quality.
grep -r "ABSTRACT VALIDATION" public/ | head -20- Create
data/abstracts/{slug}.yaml— defineextends,kind, andfields - Create
content/{slug}/_index.md - Create
layouts/{slug}/list.htmlandlayouts/{slug}/single.html - Add the section to the nav in
layouts/partials/header.html - Update
CONTRIBUTING.mdwith the new schema
Templates live in layouts/. Hugo reloads them automatically during hugo server. The partial layouts/partials/validate-abstract.html runs on every content page — include it with:
{{ partial "validate-abstract.html" . }}