one of the most popular open-source static site generators


Create a new Hugo site

$ hugo new site [path/to/site]

Create a new Hugo theme (themes may also be downloaded from
$ hugo new theme [theme_name]

Create a new page
$ hugo new [section_name]/[filename]

Build a site to the ./public/ directory
$ hugo

Build a site including pages that are marked as a "draft"
$ hugo --buildDrafts

Build a site to a given directory
$ hugo --destination [path/to/destination]

Build a site, start up a webserver to serve it, and automatically reload when pages are edited
$ hugo server


hugo [flags]


hugo is the main command, used to build your Hugo site.

Hugo is a Fast and Flexible Static Site Generator built with love by spf13 and friends in Go.

Complete documentation is available at


-b, --baseURL="" hostname (and path) to the root, e.g.

-D, --buildDrafts[=false] include content marked as draft

-E, --buildExpired[=false] include expired content

-F, --buildFuture[=false] include content with publishdate in the future

--cacheDir="" filesystem path to cache directory. Defaults: $TMPDIR/hugo_cache/

--cleanDestinationDir[=false] remove files from destination not found in static directories

--config="" config file (default is path/config.yaml|json|toml)

--configDir="config" config dir

-c, --contentDir="" filesystem path to content directory

--debug[=false] debug output

-d, --destination="" filesystem path to write files to

--disableKinds=[] disable different kind of pages (home, RSS etc.)

--enableGitInfo[=false] add Git revision, date and author info to the pages

-e, --environment="" build environment

--forceSyncStatic[=false] copy all files when static is changed.

--gc[=false] enable to run some cleanup tasks (remove unused cache files) after the build

-h, --help[=false] help for hugo

--i18n-warnings[=false] print missing translations

--ignoreCache[=false] ignores the cache directory

--ignoreVendor[=false] ignores any _vendor directory

--ignoreVendorPaths="" ignores any _vendor for module paths matching the given Glob pattern

-l, --layoutDir="" filesystem path to layout directory

--log[=false] enable Logging

--logFile="" log File path (if set, logging enabled automatically)

--minify[=false] minify any supported output format (HTML, XML etc.)

--noChmod[=false] don't sync permission mode of files

--noTimes[=false] don't sync modification time of files

--path-warnings[=false] print warnings on duplicate target paths etc.

--print-mem[=false] print memory usage to screen at intervals

--quiet[=false] build in quiet mode

--renderToMemory[=false] render to memory (only useful for benchmark testing)

-s, --source="" filesystem path to read files relative from

--templateMetrics[=false] display metrics about template executions

--templateMetricsHints[=false] calculate some improvement hints when combined with --templateMetrics

-t, --theme=[] themes to use (located in /themes/THEMENAME/)

--themesDir="" filesystem path to themes directory

--trace="" write trace to file (not useful in general)

-v, --verbose[=false] verbose output

--verboseLog[=false] verbose logging

-w, --watch[=false] watch filesystem for changes and recreate as needed


hugo-config(1), hugo-convert(1), hugo-deploy(1), hugo-env(1), hugo-gen(1), hugo-import(1), hugo-list(1), hugo-mod(1), hugo-new(1), hugo-server(1), hugo-version(1)

Copied to clipboard