What Hugo Does
- Blazing fast builds — 10K pages in <1s
- Markdown content — with front matter (YAML/TOML/JSON)
- Go templates — layouts, partials, shortcodes
- Taxonomies — tags, categories, custom
- Sections — content organization by directory
- i18n — multi-language support
- Asset pipeline — Sass, PostCSS, JS bundling, image processing
- Data templates — JSON, CSV, TOML data files
- Shortcodes — reusable content snippets
- Themes — 400+ community themes
Architecture
Single Go binary. Reads Markdown + templates from disk, renders HTML to public/. No runtime deps, no Node.js, no Ruby. Content model: sections (directories) + taxonomies (tags/categories) + front matter metadata.
Comparison
| Generator | Language | Speed | Templating |
|---|---|---|---|
| Hugo | Go | Fastest | Go templates |
| Astro | JS | Fast | JSX/MDX |
| Jekyll | Ruby | Slow | Liquid |
| Eleventy | JS | Fast | Multiple |
| Zola | Rust | Very fast | Tera |
| Gatsby | JS | Slow | React |
FAQ
Q: Hugo vs Astro? A: Hugo is pure static, Go templates, and fastest build speed; Astro supports React/Vue/Svelte components, Islands architecture, is more flexible but requires Node.js. Pick Hugo for pure docs/blogs and Astro for interactive content.
Q: How to choose a theme? A: https://themes.gohugo.io has 400+ themes. Recommended: PaperMod (blog), Docsy (docs), Ananke (starter).
Sources
- Docs: https://gohugo.io/documentation
- GitHub: https://github.com/gohugoio/hugo
- License: Apache 2.0