42914c50e content: Correct module mount example d7b80be5f content: Add a "vendor" glossary entry e1bd65866 content: Miscellaneous edits deb1c4b1c content: Fix formatting 7ff740aae content: Update capitalizeListTitles documentation a9f40164f content: Remove data namespace from functions b3386a13a content: Remove expired content e21f66fa5 content: Clean up deprecated service configurations 39ab42192 content: Change default value of respectDoNotTrack to true 067cbb771 Update partial-decorators.md b419af329 content: Minor edits to collections functions b12dd9366 content: Improve documentation for partial decorators 573b8610f content: Improve descriptions and signatures for collections functions 81befbae8 content: Update version references 684dbcedb Update HUGO_VERSION to 0.155.3 198e5f1df misc: Update README.md 4d20bbc04 content: Correct and improve glob patterns documentation 39d369ddc content: Update disablePathToLower documentation be2da46e9 content: Miscellaneous edits to configuration documentation 19a580828 content: Add Commentix to the list of commercial commenting systems d350725cd theme: Pin npm dependencies and adjust Netlify build commands 9b33bb5fa content: Define canonical output format and default site 84b72792e content: Document glob pattern matching logic 1839dd114 content: Create glob pattern quick reference 30f8f9ca0 content: Revise multi-dimensional content model description b7e36e479 content: Fix formatting b1722ac6b content: Indicate data types returned by the or function 1bbe3a566 content: Fix typo b7e1ac7bb content: Improve example of _redirects rendering 37c71ef80 content: Improve and/or descriptions 0226c14ed content: Updates for v0.155.0 301fa208b content: Change GitHub Pages workflow to support dot files 5d07a679c Update HUGO_VERSION to 0.155.2 adb8e8b2c theme: Pin turbo 9206cb64b Update netlify.toml 84e712633 content: Refine ToMath admonition and provide example a099af3cd content: Warn about conditional KaTeX CSS on list pages c3ca7ac4c misc: Address build warnings 80a9139f4 Update HUGO_VERSION to 0.155.0 b096f6279 content: Restore homebrew on linux instructions 05132aa29 content: Hide snap installation instructions d0e448a14 content: Refactor pages related to image processing d141bc04f content: Clarify default site redirect description 1d6a0bed5 content: Adjust paragraph order fa53534cb content: Clarify usage of quote characters in templates 1d62aa670 content: Miscellaneous edits 579c0678b content: Fix description of disableDefaultLanguageRedirect cd12583ee Update all.md 37b01c320 Update HUGO_VERSION to 0.154.5 66053b6df content: Update version references 3f6fb8737 content: Refresh deployment dependencies to latest versions c2915ee98 theme: Add a mobile menu variant 6457c3f59 Remove trailing whitespace from content/en/configuration/all.md 46c4d117a config: Mention disableDefaultDimensionRedirect 338500de0 Regen docs helper 98b9d25f3 Updates for 0.154.4 release 8306956e2 Update HUGO_VERSION to 0.154.4 af3f62992 Update HUGO_VERSION to 0.154.3 d06de65bd content: Fix typo 0d841a59e content: Fix typo ed6fa87cf content: Fix typo dcf80dbea content: Describe Markdown attribute access in render hook templates 70d3513f1 content: Update version references 7e581c529 Update netlify.toml c6a706943 content: Remove expired pages e64ee7d54 misc: Update workflows bbec5a198 Update HUGO_VERSION to 0.154.1 e8717cb72 content: Fix formatting of glossary entry 0da233817 Add a link to templates.Inner from the partial decorator glossary entry d55f7ad5e Update Inner.md b674dfd48 Some more about templates.Inner ef354e664 Remove some old new-in markers 7d1e407fd content: Misc updates for v0.154.0 43589a017 Update HUGO_VERSION to 0.154.0 46f832b9b content: Change shortcode usage note to an admonition 71ea41250 Adjust sponstors.toml a5dc99838 Update netlify.toml c3edd4d5b Update netlify.toml c1d306d6b Add Zoomment to comments management options cb222be99 Update HUGO_VERSION to 0.153.3 92ee87b4f content: Update CI/CD and version references 170bf3693 content: Note disabled extended check in v0.153.2 and later 34b5ef8b3 Update HUGO_VERSION to 0.153.2 c3c42b171 content: Add Dart Sass installation to SourceHut CI workflow 1768cc2f5 content: Fix links 63ba04562 theme: Modernize sans-serif font stack for cross-platform consistency 287da5c1c content: Update edition comparison and guidance 44b5010ca content: Update min version required for quick start ec4f60cb7 content: Update version references fafa69e7c Update HUGO_VERSION to 0.153.1 37bedd7d3 content: Fix formatting ed9056088 content: Miscellaneous edits fa4d61004 content: Miscellaneous post-release updates for v0.153.0 b99f47449 Misc v0.153.0 related edits 018c3e969 Regen docs.yml be80ec4c7 content: Document new dimensions ba397d5aa content: Miscellaneous updates for v0.153.0 59ca8fa3f Update HUGO_VERSION to 0.153.0 git-subtree-dir: docs git-subtree-split: 42914c50ee338b00d0b1cda2c3af8066cd9ad65c
13 KiB
A fast and flexible static site generator built with love by bep, spf13, and friends in Go.
Website | Installation | Documentation | Support | Contributing | Mastodon
Overview
Hugo is a static site generator written in Go, optimized for speed and designed for flexibility. With its advanced templating system and fast asset pipelines, Hugo renders a complete site in seconds, often less.
Due to its flexible framework, multilingual support, and powerful taxonomy system, Hugo is widely used to create:
- Corporate, government, nonprofit, education, news, event, and project sites
- Documentation sites
- Image portfolios
- Landing pages
- Business, professional, and personal blogs
- Resumes and CVs
Use Hugo's embedded web server during development to instantly see changes to content, structure, behavior, and presentation. Then deploy the site to your host, or push changes to your Git provider for automated builds and deployment.
Hugo's fast asset pipelines include:
- Image processing – Convert, resize, crop, rotate, adjust colors, apply filters, overlay text and images, and extract metadata
- JavaScript bundling – Transpile TypeScript and JSX to JavaScript, bundle, tree shake, minify, create source maps, and perform SRI hashing.
- Sass processing – Transpile Sass to CSS, bundle, tree shake, minify, create source maps, perform SRI hashing, and integrate with PostCSS
- Tailwind CSS processing – Compile Tailwind CSS utility classes into standard CSS, bundle, tree shake, optimize, minify, perform SRI hashing, and integrate with PostCSS
And with Hugo Modules, you can share content, assets, data, translations, themes, templates, and configuration with other projects via public or private Git repositories.
See the features section of the documentation for a comprehensive summary of Hugo's capabilities.
Sponsors
Editions
Hugo offers a standard edition with core features, plus extended and extended/deploy editions with more. Use the standard edition unless you need the features below.
| Feature | extended edition | extended/deploy edition |
|---|---|---|
| Transpile Sass to CSS via embedded LibSass. Note that embedded LibSass was deprecated in v0.153.0 and will be removed in a future release. Use the Dart Sass transpiler instead, which is compatible with any edition. | ✔️ | ✔️ |
| Deploy your site directly to a Google Cloud Storage bucket, an AWS S3 bucket, or an Azure Storage container. See details. | ❌ | ✔️ |
Installation
Install Hugo from a prebuilt binary, package manager, or package repository. Please see the installation instructions for your operating system:
Build from source
Prerequisites to build Hugo from source:
- Standard edition: Go 1.24.0 or later
- Extended edition: Go 1.24.0 or later, and GCC
- Extended/deploy edition: Go 1.24.0 or later, and GCC
Build the standard edition:
go install github.com/gohugoio/hugo@latest
Build the extended edition:
CGO_ENABLED=1 go install -tags extended github.com/gohugoio/hugo@latest
Build the extended/deploy edition:
CGO_ENABLED=1 go install -tags extended,withdeploy github.com/gohugoio/hugo@latest
Star History
Documentation
Hugo's documentation includes installation instructions, a quick start guide, conceptual explanations, reference information, and examples.
Please submit documentation issues and pull requests to the documentation repository.
Support
Please do not use the issue queue for questions or troubleshooting. Unless you are certain that your issue is a software defect, use the forum.
Hugo’s forum is an active community of users and developers who answer questions, share knowledge, and provide examples. A quick search of over 20,000 topics will often answer your question. Please be sure to read about requesting help before asking your first question.
Contributing
You can contribute to the Hugo project by:
- Answering questions on the forum
- Improving the documentation
- Monitoring the issue queue
- Creating or improving themes
- Squashing bugs
Please submit documentation issues and pull requests to the documentation repository.
If you have an idea for an enhancement or new feature, create a new topic on the forum in the "Feature" category. This will help you to:
- Determine if the capability already exists
- Measure interest
- Refine the concept
If there is sufficient interest, create a proposal. Do not submit a pull request until the project lead accepts the proposal.
For a complete guide to contributing to Hugo, see the Contribution Guide.
License
For the Hugo source code, see LICENSE.
We also bundle some libraries in binary/WASM form:
Dependencies
Hugo stands on the shoulders of great open source libraries. Run hugo env --logLevel info to display a list of dependencies.
See current dependencies
github.com/BurntSushi/locker="v0.0.0-20171006230638-a6e239ea1c69"
github.com/JohannesKaufmann/dom="v0.2.0"
github.com/JohannesKaufmann/html-to-markdown/v2="v2.5.0"
github.com/alecthomas/chroma/v2="v2.21.1"
github.com/aymerick/douceur="v0.2.0"
github.com/bep/clocks="v0.5.0"
github.com/bep/debounce="v1.2.0"
github.com/bep/gitmap="v1.9.0"
github.com/bep/goat="v0.5.0"
github.com/bep/godartsass/v2="v2.5.0"
github.com/bep/golibsass="v1.2.0"
github.com/bep/goportabletext="v0.1.0"
github.com/bep/helpers="v0.6.0"
github.com/bep/imagemeta="v0.12.0"
github.com/bep/lazycache="v0.8.0"
github.com/bep/logg="v0.4.0"
github.com/bep/mclib="v1.20400.20402"
github.com/bep/overlayfs="v0.10.0"
github.com/bep/simplecobra="v0.6.1"
github.com/bep/textandbinarywriter="v0.0.0-20251212174530-cd9f0732f60f"
github.com/bep/tmc="v0.5.1"
github.com/bits-and-blooms/bitset="v1.24.4"
github.com/cespare/xxhash/v2="v2.3.0"
github.com/clbanning/mxj/v2="v2.7.0"
github.com/clipperhouse/displaywidth="v0.6.0"
github.com/clipperhouse/stringish="v0.1.1"
github.com/clipperhouse/uax29/v2="v2.3.0"
github.com/cpuguy83/go-md2man/v2="v2.0.6"
github.com/disintegration/gift="v1.2.1"
github.com/dlclark/regexp2="v1.11.5"
github.com/evanw/esbuild="v0.27.2"
github.com/fatih/color="v1.18.0"
github.com/frankban/quicktest="v1.14.6"
github.com/fsnotify/fsnotify="v1.9.0"
github.com/getkin/kin-openapi="v0.133.0"
github.com/go-openapi/jsonpointer="v0.21.0"
github.com/go-openapi/swag="v0.23.0"
github.com/gobuffalo/flect="v1.0.3"
github.com/gobwas/glob="v0.2.3"
github.com/goccy/go-yaml="v1.19.1"
github.com/gohugoio/go-i18n/v2="v2.1.3-0.20251018145728-cfcc22d823c6"
github.com/gohugoio/go-radix="v1.2.0"
github.com/gohugoio/hashstructure="v0.6.0"
github.com/gohugoio/httpcache="v0.8.0"
github.com/gohugoio/hugo-goldmark-extensions/extras="v0.5.0"
github.com/gohugoio/hugo-goldmark-extensions/passthrough="v0.3.1"
github.com/gohugoio/locales="v0.14.0"
github.com/gohugoio/localescompressed="v1.0.1"
github.com/google/go-cmp="v0.7.0"
github.com/gorilla/css="v1.0.1"
github.com/gorilla/websocket="v1.5.3"
github.com/hairyhenderson/go-codeowners="v0.7.0"
github.com/hashicorp/golang-lru/v2="v2.0.7"
github.com/jdkato/prose="v1.2.1"
github.com/josharian/intern="v1.0.0"
github.com/kr/pretty="v0.3.1"
github.com/kr/text="v0.2.0"
github.com/kyokomi/emoji/v2="v2.2.13"
github.com/mailru/easyjson="v0.7.7"
github.com/makeworld-the-better-one/dither/v2="v2.4.0"
github.com/marekm4/color-extractor="v1.2.1"
github.com/mattn/go-colorable="v0.1.13"
github.com/mattn/go-isatty="v0.0.20"
github.com/mattn/go-runewidth="v0.0.19"
github.com/microcosm-cc/bluemonday="v1.0.27"
github.com/mitchellh/mapstructure="v1.5.1-0.20231216201459-8508981c8b6c"
github.com/mohae/deepcopy="v0.0.0-20170929034955-c48cc78d4826"
github.com/muesli/smartcrop="v0.3.0"
github.com/niklasfasching/go-org="v1.9.1"
github.com/oasdiff/yaml3="v0.0.0-20250309153720-d2182401db90"
github.com/oasdiff/yaml="v0.0.0-20250309154309-f31be36b4037"
github.com/olekukonko/cat="v0.0.0-20250911104152-50322a0618f6"
github.com/olekukonko/errors="v1.1.0"
github.com/olekukonko/ll="v0.1.3"
github.com/olekukonko/tablewriter="v1.1.2"
github.com/pbnjay/memory="v0.0.0-20210728143218-7b4eea64cf58"
github.com/pelletier/go-toml/v2="v2.2.4"
github.com/perimeterx/marshmallow="v1.1.5"
github.com/pkg/browser="v0.0.0-20240102092130-5ac0b6a4141c"
github.com/pkg/errors="v0.9.1"
github.com/rogpeppe/go-internal="v1.14.1"
github.com/russross/blackfriday/v2="v2.1.0"
github.com/sass/dart-sass/compiler="1.97.1"
github.com/sass/dart-sass/implementation="1.97.1"
github.com/sass/dart-sass/protocol="3.2.0"
github.com/spf13/afero="v1.15.0"
github.com/spf13/cast="v1.10.0"
github.com/spf13/cobra="v1.10.2"
github.com/spf13/fsync="v0.10.1"
github.com/spf13/pflag="v1.0.9"
github.com/tdewolff/minify/v2="v2.24.8"
github.com/tdewolff/parse/v2="v2.8.5"
github.com/tetratelabs/wazero="v1.10.1"
github.com/webmproject/libwebp="v1.6.0"
github.com/woodsbury/decimal128="v1.3.0"
github.com/yuin/goldmark-emoji="v1.0.6"
github.com/yuin/goldmark="v1.7.13"
go.uber.org/automaxprocs="v1.5.3"
go.yaml.in/yaml/v3="v3.0.4"
golang.org/x/crypto="v0.46.0"
golang.org/x/image="v0.34.0"
golang.org/x/mod="v0.31.0"
golang.org/x/net="v0.48.0"
golang.org/x/sync="v0.19.0"
golang.org/x/sys="v0.39.0"
golang.org/x/text="v0.32.0"
golang.org/x/tools="v0.40.0"
google.golang.org/protobuf="v1.36.10"
gopkg.in/yaml.v3="v3.0.1"
rsc.io/qr="v0.2.0"
software.sslmate.com/src/go-pkcs12="v0.2.0"