README.md (11344B)
1 <a href="https://gohugo.io/"><img src="https://raw.githubusercontent.com/gohugoio/gohugoioTheme/master/static/images/hugo-logo-wide.svg?sanitize=true" alt="Hugo" width="565"></a> 2 3 A Fast and Flexible Static Site Generator built with love by [bep](https://github.com/bep), [spf13](https://spf13.com/) and [friends](https://github.com/gohugoio/hugo/graphs/contributors) in [Go][]. 4 5 [Website](https://gohugo.io) | 6 [Forum](https://discourse.gohugo.io) | 7 [Documentation](https://gohugo.io/getting-started/) | 8 [Installation Guide](https://gohugo.io/getting-started/installing/) | 9 [Contribution Guide](CONTRIBUTING.md) | 10 [Twitter](https://twitter.com/gohugoio) 11 12 [![GoDoc](https://godoc.org/github.com/gohugoio/hugo?status.svg)](https://godoc.org/github.com/gohugoio/hugo) 13 [![Tests on Linux, MacOS and Windows](https://github.com/gohugoio/hugo/workflows/Test/badge.svg)](https://github.com/gohugoio/hugo/actions?query=workflow%3ATest) 14 [![Go Report Card](https://goreportcard.com/badge/github.com/gohugoio/hugo)](https://goreportcard.com/report/github.com/gohugoio/hugo) 15 16 ## Overview 17 18 Hugo is a static HTML and CSS website generator written in [Go][]. 19 It is optimized for speed, ease of use, and configurability. 20 Hugo takes a directory with content and templates and renders them into a full HTML website. 21 22 Hugo relies on Markdown files with front matter for metadata, and you can run Hugo from any directory. 23 This works well for shared hosts and other systems where you don’t have a privileged account. 24 25 Hugo renders a typical website of moderate size in a fraction of a second. 26 A good rule of thumb is that each piece of content renders in around 1 millisecond. 27 28 Hugo is designed to work well for any kind of website including blogs, tumbles, and docs. 29 30 #### Supported Architectures 31 32 Currently, we provide pre-built Hugo binaries for Windows, Linux, FreeBSD, NetBSD, DragonFly BSD, OpenBSD, macOS (Darwin), and [Android](https://gist.github.com/bep/a0d8a26cf6b4f8bc992729b8e50b480b) for x64, i386 and ARM architectures. 33 34 Hugo may also be compiled from source wherever the Go compiler tool chain can run, e.g. for other operating systems including Plan 9 and Solaris. 35 36 **Complete documentation is available at [Hugo Documentation](https://gohugo.io/getting-started/).** 37 38 ## Choose How to Install 39 40 If you want to use Hugo as your site generator, simply install the Hugo binaries. 41 The Hugo binaries have no external dependencies. 42 43 To contribute to the Hugo source code or documentation, you should [fork the Hugo GitHub project](https://github.com/gohugoio/hugo#fork-destination-box) and clone it to your local machine. 44 45 Finally, you can install the Hugo source code with `go`, build the binaries yourself, and run Hugo that way. 46 Building the binaries is an easy task for an experienced `go` getter. 47 48 ### Install Hugo as Your Site Generator (Binary Install) 49 50 Use the [installation instructions in the Hugo documentation](https://gohugo.io/getting-started/installing/). 51 52 ### Build and Install the Binaries from Source (Advanced Install) 53 54 #### Prerequisite Tools 55 56 * [Git](https://git-scm.com/) 57 * [Go (we test it with the last 2 major versions; but note that Hugo 0.95.0 only builds with >= Go 1.18.)](https://golang.org/dl/) 58 59 #### Fetch from GitHub 60 61 To fetch and build the source from GitHub: 62 63 ```bash 64 mkdir $HOME/src 65 cd $HOME/src 66 git clone https://github.com/gohugoio/hugo.git 67 cd hugo 68 go install 69 ``` 70 71 **If you are a Windows user, substitute the `$HOME` environment variable above with `%USERPROFILE%`.** 72 73 If you want to compile with Sass/SCSS support use `--tags extended` and make sure `CGO_ENABLED=1` is set in your go environment. If you don't want to have CGO enabled, you may use the following command to temporarily enable CGO only for hugo compilation: 74 75 ```bash 76 CGO_ENABLED=1 go install --tags extended 77 ``` 78 79 ## The Hugo Documentation 80 81 The Hugo documentation now lives in its own repository, see https://github.com/gohugoio/hugoDocs. But we do keep a version of that documentation as a `git subtree` in this repository. To build the sub folder `/docs` as a Hugo site, you need to clone this repo: 82 83 ```bash 84 git clone git@github.com:gohugoio/hugo.git 85 ``` 86 ## Contributing to Hugo 87 88 **Note March 16th 2022:** We are currently very constrained on human resources to do code reviews, so we currently require any new Pull Requests to be limited to bug fixes closing an existing issue. Also, we have updated to Go 1.18, but we will currently not accept any generic rewrites, "interface{} to any" replacements and similar. 89 90 For a complete guide to contributing to Hugo, see the [Contribution Guide](CONTRIBUTING.md). 91 92 We welcome contributions to Hugo of any kind including documentation, themes, 93 organization, tutorials, blog posts, bug reports, issues, feature requests, 94 feature implementations, pull requests, answering questions on the forum, 95 helping to manage issues, etc. 96 97 The Hugo community and maintainers are [very active](https://github.com/gohugoio/hugo/pulse/monthly) and helpful, and the project benefits greatly from this activity. 98 99 ### Asking Support Questions 100 101 We have an active [discussion forum](https://discourse.gohugo.io) where users and developers can ask questions. 102 Please don't use the GitHub issue tracker to ask questions. 103 104 ### Reporting Issues 105 106 If you believe you have found a defect in Hugo or its documentation, use 107 the GitHub issue tracker to report the problem to the Hugo maintainers. 108 If you're not sure if it's a bug or not, start by asking in the [discussion forum](https://discourse.gohugo.io). 109 When reporting the issue, please provide the version of Hugo in use (`hugo version`). 110 111 ### Submitting Patches 112 113 The Hugo project welcomes all contributors and contributions regardless of skill or experience level. 114 If you are interested in helping with the project, we will help you with your contribution. 115 Hugo is a very active project with many contributions happening daily. 116 117 We want to create the best possible product for our users and the best contribution experience for our developers, 118 we have a set of guidelines which ensure that all contributions are acceptable. 119 The guidelines are not intended as a filter or barrier to participation. 120 If you are unfamiliar with the contribution process, the Hugo team will help you and teach you how to bring your contribution in accordance with the guidelines. 121 122 For a complete guide to contributing code to Hugo, see the [Contribution Guide](CONTRIBUTING.md). 123 124 [Go]: https://golang.org/ 125 [Hugo Documentation]: https://gohugo.io/overview/introduction/ 126 127 ## Dependencies 128 129 Hugo stands on the shoulder of many great open source libraries. 130 131 If you run `hugo env -v` you will get a complete and up to date list. 132 133 In Hugo 0.100.1 that list is, in lexical order: 134 135 ``` 136 cloud.google.com/go/compute="v1.6.1" 137 cloud.google.com/go/iam="v0.3.0" 138 cloud.google.com/go/storage="v1.22.0" 139 cloud.google.com/go="v0.101.0" 140 github.com/Azure/azure-pipeline-go="v0.2.3" 141 github.com/Azure/azure-storage-blob-go="v0.14.0" 142 github.com/Azure/go-autorest/autorest/adal="v0.9.15" 143 github.com/Azure/go-autorest/autorest/date="v0.3.0" 144 github.com/Azure/go-autorest/autorest="v0.11.20" 145 github.com/Azure/go-autorest/logger="v0.2.1" 146 github.com/Azure/go-autorest/tracing="v0.6.0" 147 github.com/BurntSushi/locker="v0.0.0-20171006230638-a6e239ea1c69" 148 github.com/PuerkitoBio/purell="v1.1.1" 149 github.com/PuerkitoBio/urlesc="v0.0.0-20170810143723-de5bf2ad4578" 150 github.com/alecthomas/chroma="v0.10.0" 151 github.com/armon/go-radix="v1.0.0" 152 github.com/aws/aws-sdk-go-v2/config="v1.7.0" 153 github.com/aws/aws-sdk-go-v2/credentials="v1.4.0" 154 github.com/aws/aws-sdk-go-v2/feature/ec2/imds="v1.5.0" 155 github.com/aws/aws-sdk-go-v2/internal/ini="v1.2.2" 156 github.com/aws/aws-sdk-go-v2/service/internal/presigned-url="v1.3.0" 157 github.com/aws/aws-sdk-go-v2/service/sso="v1.4.0" 158 github.com/aws/aws-sdk-go-v2/service/sts="v1.7.0" 159 github.com/aws/aws-sdk-go-v2="v1.9.0" 160 github.com/aws/aws-sdk-go="v1.43.5" 161 github.com/aws/smithy-go="v1.8.0" 162 github.com/bep/clock="v0.3.0" 163 github.com/bep/debounce="v1.2.0" 164 github.com/bep/gitmap="v1.1.2" 165 github.com/bep/goat="v0.5.0" 166 github.com/bep/godartsass="v0.14.0" 167 github.com/bep/golibsass="v1.1.0" 168 github.com/bep/gowebp="v0.1.0" 169 github.com/bep/overlayfs="v0.6.0" 170 github.com/bep/tmc="v0.5.1" 171 github.com/clbanning/mxj/v2="v2.5.5" 172 github.com/cli/safeexec="v1.0.0" 173 github.com/cpuguy83/go-md2man/v2="v2.0.1" 174 github.com/disintegration/gift="v1.2.1" 175 github.com/dlclark/regexp2="v1.4.0" 176 github.com/dustin/go-humanize="v1.0.0" 177 github.com/evanw/esbuild="v0.14.42" 178 github.com/frankban/quicktest="v1.14.3" 179 github.com/fsnotify/fsnotify="v1.5.4" 180 github.com/getkin/kin-openapi="v0.94.0" 181 github.com/ghodss/yaml="v1.0.0" 182 github.com/go-openapi/jsonpointer="v0.19.5" 183 github.com/go-openapi/swag="v0.19.5" 184 github.com/gobuffalo/flect="v0.2.5" 185 github.com/gobwas/glob="v0.2.3" 186 github.com/gohugoio/go-i18n/v2="v2.1.3-0.20210430103248-4c28c89f8013" 187 github.com/gohugoio/locales="v0.14.0" 188 github.com/gohugoio/localescompressed="v1.0.1" 189 github.com/golang-jwt/jwt/v4="v4.0.0" 190 github.com/golang/groupcache="v0.0.0-20210331224755-41bb18bfe9da" 191 github.com/golang/protobuf="v1.5.2" 192 github.com/google/go-cmp="v0.5.8" 193 github.com/google/uuid="v1.3.0" 194 github.com/google/wire="v0.5.0" 195 github.com/googleapis/gax-go/v2="v2.3.0" 196 github.com/googleapis/go-type-adapters="v1.0.0" 197 github.com/gorilla/websocket="v1.5.0" 198 github.com/hairyhenderson/go-codeowners="v0.2.3-0.20201026200250-cdc7c0759690" 199 github.com/inconshreveable/mousetrap="v1.0.0" 200 github.com/jdkato/prose="v1.2.1" 201 github.com/jmespath/go-jmespath="v0.4.0" 202 github.com/kr/pretty="v0.3.0" 203 github.com/kr/text="v0.2.0" 204 github.com/kyokomi/emoji/v2="v2.2.9" 205 github.com/mailru/easyjson="v0.0.0-20190626092158-b2ccc519800e" 206 github.com/mattn/go-ieproxy="v0.0.1" 207 github.com/mattn/go-isatty="v0.0.14" 208 github.com/mattn/go-runewidth="v0.0.9" 209 github.com/mitchellh/hashstructure="v1.1.0" 210 github.com/mitchellh/mapstructure="v1.5.0" 211 github.com/muesli/smartcrop="v0.3.0" 212 github.com/niklasfasching/go-org="v1.6.2" 213 github.com/olekukonko/tablewriter="v0.0.5" 214 github.com/pelletier/go-toml/v2="v2.0.0-beta.7.0.20220408132554-2377ac4bc04c" 215 github.com/rogpeppe/go-internal="v1.8.1" 216 github.com/russross/blackfriday/v2="v2.1.0" 217 github.com/rwcarlsen/goexif="v0.0.0-20190401172101-9e8deecbddbd" 218 github.com/sanity-io/litter="v1.5.5" 219 github.com/sass/libsass="3.6.5" 220 github.com/spf13/afero="v1.8.2" 221 github.com/spf13/cast="v1.5.0" 222 github.com/spf13/cobra="v1.4.0" 223 github.com/spf13/fsync="v0.9.0" 224 github.com/spf13/jwalterweatherman="v1.1.0" 225 github.com/spf13/pflag="v1.0.5" 226 github.com/tdewolff/minify/v2="v2.11.5" 227 github.com/tdewolff/parse/v2="v2.5.31" 228 github.com/webmproject/libwebp="v1.2.0" 229 github.com/yuin/goldmark="v1.4.12" 230 go.opencensus.io="v0.23.0" 231 go.uber.org/atomic="v1.9.0" 232 gocloud.dev="v0.24.0" 233 golang.org/x/crypto="v0.0.0-20211108221036-ceb1ce70b4fa" 234 golang.org/x/image="v0.0.0-20211028202545-6944b10bf410" 235 golang.org/x/net="v0.0.0-20220425223048-2871e0cb64e4" 236 golang.org/x/oauth2="v0.0.0-20220411215720-9780585627b5" 237 golang.org/x/sync="v0.0.0-20210220032951-036812b2e83c" 238 golang.org/x/sys="v0.0.0-20220422013727-9388b58f7150" 239 golang.org/x/text="v0.3.7" 240 golang.org/x/tools="v0.1.10" 241 golang.org/x/xerrors="v0.0.0-20220411194840-2f41105eb62f" 242 google.golang.org/api="v0.76.0" 243 google.golang.org/genproto="v0.0.0-20220426171045-31bebdecfb46" 244 google.golang.org/grpc="v1.46.0" 245 google.golang.org/protobuf="v1.28.0" 246 gopkg.in/yaml.v2="v2.4.0" 247 ``` 248