Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/gohugoio/hugo.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'docs/content/en')
-rw-r--r--docs/content/en/_index.md49
-rw-r--r--docs/content/en/about/_index.md20
-rw-r--r--docs/content/en/about/benefits.md43
-rw-r--r--docs/content/en/about/features.md85
-rw-r--r--docs/content/en/about/hugo-and-gdpr.md140
-rw-r--r--docs/content/en/about/license.md165
-rw-r--r--docs/content/en/about/security-model/hugo-security-model-featured.pngbin0 -> 85043 bytes
-rw-r--r--docs/content/en/about/security-model/index.md54
-rw-r--r--docs/content/en/about/what-is-hugo.md63
-rw-r--r--docs/content/en/commands/hugo.md84
-rw-r--r--docs/content/en/commands/hugo_check.md38
-rw-r--r--docs/content/en/commands/hugo_check_ulimit.md46
-rw-r--r--docs/content/en/commands/hugo_completion.md48
-rw-r--r--docs/content/en/commands/hugo_completion_bash.md62
-rw-r--r--docs/content/en/commands/hugo_completion_fish.md56
-rw-r--r--docs/content/en/commands/hugo_completion_powershell.md54
-rw-r--r--docs/content/en/commands/hugo_completion_zsh.md61
-rw-r--r--docs/content/en/commands/hugo_config.md46
-rw-r--r--docs/content/en/commands/hugo_config_mounts.md41
-rw-r--r--docs/content/en/commands/hugo_convert.md48
-rw-r--r--docs/content/en/commands/hugo_convert_toJSON.md48
-rw-r--r--docs/content/en/commands/hugo_convert_toTOML.md48
-rw-r--r--docs/content/en/commands/hugo_convert_toYAML.md48
-rw-r--r--docs/content/en/commands/hugo_deploy.md55
-rw-r--r--docs/content/en/commands/hugo_env.md48
-rw-r--r--docs/content/en/commands/hugo_gen.md41
-rw-r--r--docs/content/en/commands/hugo_gen_autocomplete.md59
-rw-r--r--docs/content/en/commands/hugo_gen_chromastyles.md50
-rw-r--r--docs/content/en/commands/hugo_gen_doc.md52
-rw-r--r--docs/content/en/commands/hugo_gen_man.md48
-rw-r--r--docs/content/en/commands/hugo_import.md44
-rw-r--r--docs/content/en/commands/hugo_import_jekyll.md48
-rw-r--r--docs/content/en/commands/hugo_list.md47
-rw-r--r--docs/content/en/commands/hugo_list_all.md45
-rw-r--r--docs/content/en/commands/hugo_list_drafts.md45
-rw-r--r--docs/content/en/commands/hugo_list_expired.md45
-rw-r--r--docs/content/en/commands/hugo_list_future.md45
-rw-r--r--docs/content/en/commands/hugo_mod.md86
-rw-r--r--docs/content/en/commands/hugo_mod_clean.md53
-rw-r--r--docs/content/en/commands/hugo_mod_get.md71
-rw-r--r--docs/content/en/commands/hugo_mod_graph.md47
-rw-r--r--docs/content/en/commands/hugo_mod_init.md52
-rw-r--r--docs/content/en/commands/hugo_mod_npm.md46
-rw-r--r--docs/content/en/commands/hugo_mod_npm_pack.md55
-rw-r--r--docs/content/en/commands/hugo_mod_tidy.md41
-rw-r--r--docs/content/en/commands/hugo_mod_vendor.md48
-rw-r--r--docs/content/en/commands/hugo_mod_verify.md47
-rw-r--r--docs/content/en/commands/hugo_new.md81
-rw-r--r--docs/content/en/commands/hugo_new_site.md49
-rw-r--r--docs/content/en/commands/hugo_new_theme.md48
-rw-r--r--docs/content/en/commands/hugo_server.md94
-rw-r--r--docs/content/en/commands/hugo_version.md45
-rw-r--r--docs/content/en/content-management/_index.md20
-rw-r--r--docs/content/en/content-management/archetypes.md97
-rw-r--r--docs/content/en/content-management/build-options.md119
-rw-r--r--docs/content/en/content-management/comments.md75
-rw-r--r--docs/content/en/content-management/cross-references.md129
-rw-r--r--docs/content/en/content-management/formats.md157
-rw-r--r--docs/content/en/content-management/front-matter.md246
-rw-r--r--docs/content/en/content-management/image-processing/index.md346
-rw-r--r--docs/content/en/content-management/image-processing/sunset.jpgbin0 -> 34584 bytes
-rw-r--r--docs/content/en/content-management/menus.md133
-rw-r--r--docs/content/en/content-management/multilingual.md582
-rw-r--r--docs/content/en/content-management/organization/1-featured-content-bundles.pngbin0 -> 34394 bytes
-rw-r--r--docs/content/en/content-management/organization/index.md240
-rw-r--r--docs/content/en/content-management/page-bundles.md188
-rw-r--r--docs/content/en/content-management/page-resources.md208
-rw-r--r--docs/content/en/content-management/related.md137
-rw-r--r--docs/content/en/content-management/sections.md101
-rw-r--r--docs/content/en/content-management/shortcodes.md444
-rw-r--r--docs/content/en/content-management/static-files.md70
-rw-r--r--docs/content/en/content-management/summaries.md112
-rw-r--r--docs/content/en/content-management/syntax-highlighting.md138
-rw-r--r--docs/content/en/content-management/taxonomies.md215
-rw-r--r--docs/content/en/content-management/toc.md125
-rw-r--r--docs/content/en/content-management/types.md24
-rw-r--r--docs/content/en/content-management/urls.md313
-rw-r--r--docs/content/en/contribute/_index.md23
-rw-r--r--docs/content/en/contribute/development.md442
-rw-r--r--docs/content/en/contribute/documentation.md334
-rw-r--r--docs/content/en/contribute/themes.md31
-rw-r--r--docs/content/en/documentation.md21
-rw-r--r--docs/content/en/functions/GetPage.md88
-rw-r--r--docs/content/en/functions/RenderString.md38
-rw-r--r--docs/content/en/functions/_index.md19
-rw-r--r--docs/content/en/functions/abslangurl.md27
-rw-r--r--docs/content/en/functions/absurl.md50
-rw-r--r--docs/content/en/functions/adddate.md51
-rw-r--r--docs/content/en/functions/after.md65
-rw-r--r--docs/content/en/functions/anchorize.md27
-rw-r--r--docs/content/en/functions/append.md38
-rw-r--r--docs/content/en/functions/apply.md118
-rw-r--r--docs/content/en/functions/base64.md50
-rw-r--r--docs/content/en/functions/chomp.md24
-rw-r--r--docs/content/en/functions/complement.md29
-rw-r--r--docs/content/en/functions/cond.md31
-rw-r--r--docs/content/en/functions/countrunes.md26
-rw-r--r--docs/content/en/functions/countwords.md27
-rw-r--r--docs/content/en/functions/dateformat.md55
-rw-r--r--docs/content/en/functions/default.md92
-rw-r--r--docs/content/en/functions/delimit.md62
-rw-r--r--docs/content/en/functions/dict.md52
-rw-r--r--docs/content/en/functions/echoparam.md24
-rw-r--r--docs/content/en/functions/emojify.md31
-rw-r--r--docs/content/en/functions/eq.md24
-rw-r--r--docs/content/en/functions/errorf.md51
-rw-r--r--docs/content/en/functions/fileExists.md42
-rw-r--r--docs/content/en/functions/findRe.md44
-rw-r--r--docs/content/en/functions/first.md53
-rw-r--r--docs/content/en/functions/float.md25
-rw-r--r--docs/content/en/functions/format.md126
-rw-r--r--docs/content/en/functions/ge.md24
-rw-r--r--docs/content/en/functions/get.md30
-rw-r--r--docs/content/en/functions/getenv.md43
-rw-r--r--docs/content/en/functions/group.md37
-rw-r--r--docs/content/en/functions/gt.md24
-rw-r--r--docs/content/en/functions/hasPrefix.md21
-rw-r--r--docs/content/en/functions/haschildren.md22
-rw-r--r--docs/content/en/functions/hasmenucurrent.md28
-rw-r--r--docs/content/en/functions/highlight.md104
-rw-r--r--docs/content/en/functions/hmac.md33
-rw-r--r--docs/content/en/functions/htmlEscape.md25
-rw-r--r--docs/content/en/functions/htmlUnescape.md27
-rw-r--r--docs/content/en/functions/hugo.md51
-rw-r--r--docs/content/en/functions/humanize.md29
-rw-r--r--docs/content/en/functions/i18n.md33
-rw-r--r--docs/content/en/functions/images/index.md232
-rw-r--r--docs/content/en/functions/in.md32
-rw-r--r--docs/content/en/functions/index-function.md100
-rw-r--r--docs/content/en/functions/int.md50
-rw-r--r--docs/content/en/functions/intersect.md36
-rw-r--r--docs/content/en/functions/ismenucurrent.md26
-rw-r--r--docs/content/en/functions/isset.md30
-rw-r--r--docs/content/en/functions/jsonify.md37
-rw-r--r--docs/content/en/functions/lang.Merge.md37
-rw-r--r--docs/content/en/functions/lang.md16
-rw-r--r--docs/content/en/functions/last.md27
-rw-r--r--docs/content/en/functions/le.md24
-rw-r--r--docs/content/en/functions/len.md63
-rw-r--r--docs/content/en/functions/lower.md23
-rw-r--r--docs/content/en/functions/lt.md24
-rw-r--r--docs/content/en/functions/markdownify.md29
-rw-r--r--docs/content/en/functions/math.md42
-rw-r--r--docs/content/en/functions/md5.md30
-rw-r--r--docs/content/en/functions/merge.md41
-rw-r--r--docs/content/en/functions/ne.md24
-rw-r--r--docs/content/en/functions/now.md49
-rw-r--r--docs/content/en/functions/os.Stat.md32
-rw-r--r--docs/content/en/functions/param.md40
-rw-r--r--docs/content/en/functions/partialCached.md46
-rw-r--r--docs/content/en/functions/path.Base.md30
-rw-r--r--docs/content/en/functions/path.Clean.md26
-rw-r--r--docs/content/en/functions/path.Dir.md31
-rw-r--r--docs/content/en/functions/path.Ext.md28
-rw-r--r--docs/content/en/functions/path.Join.md28
-rw-r--r--docs/content/en/functions/path.Split.md30
-rw-r--r--docs/content/en/functions/plainify.md27
-rw-r--r--docs/content/en/functions/pluralize.md23
-rw-r--r--docs/content/en/functions/print.md26
-rw-r--r--docs/content/en/functions/printf.md28
-rw-r--r--docs/content/en/functions/println.md24
-rw-r--r--docs/content/en/functions/querify.md36
-rw-r--r--docs/content/en/functions/range.md24
-rw-r--r--docs/content/en/functions/readdir.md51
-rw-r--r--docs/content/en/functions/readfile.md41
-rw-r--r--docs/content/en/functions/ref.md50
-rw-r--r--docs/content/en/functions/reflect.IsMap.md24
-rw-r--r--docs/content/en/functions/reflect.IsSlice.md24
-rw-r--r--docs/content/en/functions/relLangURL.md29
-rw-r--r--docs/content/en/functions/relref.md57
-rw-r--r--docs/content/en/functions/relurl.md50
-rw-r--r--docs/content/en/functions/render.md32
-rw-r--r--docs/content/en/functions/replace.md28
-rw-r--r--docs/content/en/functions/replacere.md34
-rw-r--r--docs/content/en/functions/safeCSS.md34
-rw-r--r--docs/content/en/functions/safeHTML.md40
-rw-r--r--docs/content/en/functions/safeHTMLAttr.md30
-rw-r--r--docs/content/en/functions/safeJS.md29
-rw-r--r--docs/content/en/functions/safeURL.md71
-rw-r--r--docs/content/en/functions/scratch.md154
-rw-r--r--docs/content/en/functions/seq.md50
-rw-r--r--docs/content/en/functions/sha.md33
-rw-r--r--docs/content/en/functions/shuffle.md38
-rw-r--r--docs/content/en/functions/singularize.md23
-rw-r--r--docs/content/en/functions/site.md23
-rw-r--r--docs/content/en/functions/slice.md31
-rw-r--r--docs/content/en/functions/slicestr.md25
-rw-r--r--docs/content/en/functions/sort.md63
-rw-r--r--docs/content/en/functions/split.md21
-rw-r--r--docs/content/en/functions/string.md21
-rw-r--r--docs/content/en/functions/strings.Count.md29
-rw-r--r--docs/content/en/functions/strings.HasSuffix.md22
-rw-r--r--docs/content/en/functions/strings.Repeat.md23
-rw-r--r--docs/content/en/functions/strings.RuneCount.md27
-rw-r--r--docs/content/en/functions/strings.TrimLeft.md26
-rw-r--r--docs/content/en/functions/strings.TrimPrefix.md24
-rw-r--r--docs/content/en/functions/strings.TrimRight.md26
-rw-r--r--docs/content/en/functions/strings.TrimSuffix.md24
-rw-r--r--docs/content/en/functions/substr.md45
-rw-r--r--docs/content/en/functions/symdiff.md28
-rw-r--r--docs/content/en/functions/templates.Exists.md36
-rw-r--r--docs/content/en/functions/time.md62
-rw-r--r--docs/content/en/functions/title.md36
-rw-r--r--docs/content/en/functions/transform.Unmarshal.md76
-rw-r--r--docs/content/en/functions/trim.md41
-rw-r--r--docs/content/en/functions/truncate.md28
-rw-r--r--docs/content/en/functions/union.md49
-rw-r--r--docs/content/en/functions/uniq.md26
-rw-r--r--docs/content/en/functions/unix.md31
-rw-r--r--docs/content/en/functions/upper.md28
-rw-r--r--docs/content/en/functions/urlize.md73
-rw-r--r--docs/content/en/functions/urls.Parse.md31
-rw-r--r--docs/content/en/functions/where.md176
-rw-r--r--docs/content/en/functions/with.md34
-rw-r--r--docs/content/en/getting-started/_index.md24
-rw-r--r--docs/content/en/getting-started/configuration-markup.md237
-rw-r--r--docs/content/en/getting-started/configuration.md736
-rw-r--r--docs/content/en/getting-started/directory-structure.md96
-rw-r--r--docs/content/en/getting-started/external-learning-resources/hia.jpgbin0 -> 66768 bytes
-rw-r--r--docs/content/en/getting-started/external-learning-resources/index.md37
-rw-r--r--docs/content/en/getting-started/installing.md569
-rw-r--r--docs/content/en/getting-started/quick-start.md179
-rw-r--r--docs/content/en/getting-started/usage.md213
-rw-r--r--docs/content/en/hosting-and-deployment/_index.md20
-rw-r--r--docs/content/en/hosting-and-deployment/deployment-with-nanobox.md249
-rw-r--r--docs/content/en/hosting-and-deployment/deployment-with-rsync.md157
-rw-r--r--docs/content/en/hosting-and-deployment/hosting-on-aws-amplify.md57
-rw-r--r--docs/content/en/hosting-and-deployment/hosting-on-bitbucket.md141
-rw-r--r--docs/content/en/hosting-and-deployment/hosting-on-firebase.md89
-rw-r--r--docs/content/en/hosting-and-deployment/hosting-on-github.md114
-rw-r--r--docs/content/en/hosting-and-deployment/hosting-on-gitlab.md92
-rw-r--r--docs/content/en/hosting-and-deployment/hosting-on-keycdn.md94
-rw-r--r--docs/content/en/hosting-and-deployment/hosting-on-netlify.md159
-rw-r--r--docs/content/en/hosting-and-deployment/hosting-on-render.md92
-rw-r--r--docs/content/en/hosting-and-deployment/hugo-deploy.md143
-rw-r--r--docs/content/en/hugo-modules/_index.md32
-rw-r--r--docs/content/en/hugo-modules/configuration.md169
-rw-r--r--docs/content/en/hugo-modules/theme-components.md54
-rw-r--r--docs/content/en/hugo-modules/use-modules.md143
-rwxr-xr-xdocs/content/en/hugo-pipes/_index.md15
-rwxr-xr-xdocs/content/en/hugo-pipes/babel.md79
-rwxr-xr-xdocs/content/en/hugo-pipes/bundling.md24
-rwxr-xr-xdocs/content/en/hugo-pipes/fingerprint.md29
-rwxr-xr-xdocs/content/en/hugo-pipes/introduction.md101
-rw-r--r--docs/content/en/hugo-pipes/js.md171
-rwxr-xr-xdocs/content/en/hugo-pipes/minification.md27
-rwxr-xr-xdocs/content/en/hugo-pipes/postcss.md84
-rwxr-xr-xdocs/content/en/hugo-pipes/postprocess.md70
-rwxr-xr-xdocs/content/en/hugo-pipes/resource-from-string.md31
-rwxr-xr-xdocs/content/en/hugo-pipes/resource-from-template.md38
-rwxr-xr-xdocs/content/en/hugo-pipes/scss-sass.md54
-rw-r--r--docs/content/en/maintenance/_index.md14
-rw-r--r--docs/content/en/myshowcase/bio.md8
-rw-r--r--docs/content/en/myshowcase/featured.pngbin0 -> 41270 bytes
-rw-r--r--docs/content/en/myshowcase/index.md37
-rw-r--r--docs/content/en/news/0.10-relnotes/index.md21
-rw-r--r--docs/content/en/news/0.11-relnotes/index.md23
-rw-r--r--docs/content/en/news/0.12-relnotes/index.md29
-rw-r--r--docs/content/en/news/0.13-relnotes/index.md95
-rw-r--r--docs/content/en/news/0.14-relnotes/index.md54
-rw-r--r--docs/content/en/news/0.15-relnotes/index.md97
-rw-r--r--docs/content/en/news/0.16-relnotes/index.md248
-rw-r--r--docs/content/en/news/0.17-relnotes/index.md93
-rw-r--r--docs/content/en/news/0.18-relnotes/index.md114
-rw-r--r--docs/content/en/news/0.19-relnotes/index.md83
-rw-r--r--docs/content/en/news/0.20-relnotes/index.md72
-rw-r--r--docs/content/en/news/0.20.1-relnotes/index.md15
-rw-r--r--docs/content/en/news/0.20.2-relnotes/index.md47
-rw-r--r--docs/content/en/news/0.20.3-relnotes/index.md26
-rw-r--r--docs/content/en/news/0.20.4-relnotes/index.md24
-rw-r--r--docs/content/en/news/0.20.5-relnotes/index.md12
-rw-r--r--docs/content/en/news/0.20.6-relnotes/index.md24
-rw-r--r--docs/content/en/news/0.20.7-relnotes/index.md23
-rw-r--r--docs/content/en/news/0.21-relnotes/index.md105
-rw-r--r--docs/content/en/news/0.22-relnotes/index.md89
-rw-r--r--docs/content/en/news/0.22.1-relnotes/index.md37
-rw-r--r--docs/content/en/news/0.23-relnotes/index.md46
-rw-r--r--docs/content/en/news/0.24-relnotes/index.md74
-rw-r--r--docs/content/en/news/0.24.1-relnotes/index.md22
-rw-r--r--docs/content/en/news/0.25-relnotes/index.md78
-rw-r--r--docs/content/en/news/0.25.1-relnotes/index.md25
-rw-r--r--docs/content/en/news/0.26-relnotes/index.md81
-rw-r--r--docs/content/en/news/0.27-relnotes/index.md95
-rw-r--r--docs/content/en/news/0.27.1-relnotes/index.md21
-rw-r--r--docs/content/en/news/0.28-relnotes/index.md64
-rw-r--r--docs/content/en/news/0.29-relnotes/index.md46
-rw-r--r--docs/content/en/news/0.30-relnotes/index.md63
-rw-r--r--docs/content/en/news/0.30.1-relnotes/index.md23
-rw-r--r--docs/content/en/news/0.30.2-relnotes/index.md14
-rw-r--r--docs/content/en/news/0.31-relnotes/index.md79
-rw-r--r--docs/content/en/news/0.31.1-relnotes/index.md19
-rw-r--r--docs/content/en/news/0.32-relnotes/index.md94
-rw-r--r--docs/content/en/news/0.32.1-relnotes/index.md18
-rw-r--r--docs/content/en/news/0.32.2-relnotes/index.md23
-rw-r--r--docs/content/en/news/0.32.3-relnotes/index.md30
-rw-r--r--docs/content/en/news/0.32.4-relnotes/index.md20
-rw-r--r--docs/content/en/news/0.33-relnotes/featured-hugo-33-poster.pngbin0 -> 70230 bytes
-rw-r--r--docs/content/en/news/0.33-relnotes/index.md76
-rw-r--r--docs/content/en/news/0.34-relnotes/featured-34-poster.pngbin0 -> 78317 bytes
-rw-r--r--docs/content/en/news/0.34-relnotes/index.md44
-rw-r--r--docs/content/en/news/0.35-relnotes/featured-hugo-35-poster.pngbin0 -> 88519 bytes
-rw-r--r--docs/content/en/news/0.35-relnotes/index.md102
-rw-r--r--docs/content/en/news/0.36-relnotes/featured-hugo-36-poster.pngbin0 -> 67640 bytes
-rw-r--r--docs/content/en/news/0.36-relnotes/index.md51
-rw-r--r--docs/content/en/news/0.36.1-relnotes/index.md43
-rw-r--r--docs/content/en/news/0.37-relnotes/featured-hugo-37-poster.pngbin0 -> 186693 bytes
-rw-r--r--docs/content/en/news/0.37-relnotes/index.md76
-rw-r--r--docs/content/en/news/0.37.1-relnotes/index.md20
-rw-r--r--docs/content/en/news/0.38-relnotes/featured-poster.pngbin0 -> 69978 bytes
-rw-r--r--docs/content/en/news/0.38-relnotes/index.md66
-rw-r--r--docs/content/en/news/0.38.1-relnotes/index.md32
-rw-r--r--docs/content/en/news/0.38.2-relnotes/index.md26
-rw-r--r--docs/content/en/news/0.39-relnotes/featured-hugo-39-poster.pngbin0 -> 217215 bytes
-rw-r--r--docs/content/en/news/0.39-relnotes/index.md87
-rw-r--r--docs/content/en/news/0.40-relnotes/featured-hugo-40-poster.pngbin0 -> 69238 bytes
-rw-r--r--docs/content/en/news/0.40-relnotes/index.md76
-rw-r--r--docs/content/en/news/0.40.1-relnotes/index.md19
-rw-r--r--docs/content/en/news/0.40.2-relnotes/index.md20
-rw-r--r--docs/content/en/news/0.40.3-relnotes/index.md12
-rw-r--r--docs/content/en/news/0.41-relnotes/featured-hugo-41-poster.pngbin0 -> 67955 bytes
-rw-r--r--docs/content/en/news/0.41-relnotes/index.md64
-rw-r--r--docs/content/en/news/0.42-relnotes/featured-hugo-42-poster.pngbin0 -> 74852 bytes
-rw-r--r--docs/content/en/news/0.42-relnotes/index.md66
-rw-r--r--docs/content/en/news/0.42.1-relnotes/index.md18
-rw-r--r--docs/content/en/news/0.42.2-relnotes/index.md18
-rw-r--r--docs/content/en/news/0.43-relnotes/featured-hugo-43-poster.pngbin0 -> 78299 bytes
-rw-r--r--docs/content/en/news/0.43-relnotes/index.md96
-rw-r--r--docs/content/en/news/0.44-relnotes/featured-hugo-44-poster.pngbin0 -> 77631 bytes
-rw-r--r--docs/content/en/news/0.44-relnotes/index.md39
-rw-r--r--docs/content/en/news/0.45-relnotes/featured-hugo-45-poster.pngbin0 -> 66863 bytes
-rw-r--r--docs/content/en/news/0.45-relnotes/index.md107
-rw-r--r--docs/content/en/news/0.45.1-relnotes/index.md26
-rw-r--r--docs/content/en/news/0.46-relnotes/featured-hugo-46-poster.pngbin0 -> 68614 bytes
-rw-r--r--docs/content/en/news/0.46-relnotes/index.md49
-rw-r--r--docs/content/en/news/0.47-relnotes/featured-hugo-47-poster.pngbin0 -> 88288 bytes
-rw-r--r--docs/content/en/news/0.47-relnotes/index.md79
-rw-r--r--docs/content/en/news/0.47.1-relnotes/index.md30
-rw-r--r--docs/content/en/news/0.48-relnotes/featured-hugo-48-poster.pngbin0 -> 95358 bytes
-rw-r--r--docs/content/en/news/0.48-relnotes/index.md57
-rw-r--r--docs/content/en/news/0.49-relnotes/featured-hugo-49-poster.pngbin0 -> 66352 bytes
-rw-r--r--docs/content/en/news/0.49-relnotes/index.md120
-rw-r--r--docs/content/en/news/0.49.1-relnotes/index.md22
-rw-r--r--docs/content/en/news/0.49.2-relnotes/index.md17
-rw-r--r--docs/content/en/news/0.50-relnotes/featured-hugo-50-poster.pngbin0 -> 227240 bytes
-rw-r--r--docs/content/en/news/0.50-relnotes/index.md150
-rw-r--r--docs/content/en/news/0.51-relnotes/featured-hugo-51-poster.pngbin0 -> 117678 bytes
-rw-r--r--docs/content/en/news/0.51-relnotes/index.md102
-rw-r--r--docs/content/en/news/0.52-relnotes/featured-hugo-52-poster.pngbin0 -> 336810 bytes
-rw-r--r--docs/content/en/news/0.52-relnotes/index.md74
-rw-r--r--docs/content/en/news/0.53-relnotes/featured-hugo-53-poster.pngbin0 -> 110427 bytes
-rw-r--r--docs/content/en/news/0.53-relnotes/index.md94
-rw-r--r--docs/content/en/news/0.54.0-relnotes/featured-hugo-54.0-poster.pngbin0 -> 59805 bytes
-rw-r--r--docs/content/en/news/0.54.0-relnotes/index.md69
-rw-r--r--docs/content/en/news/0.55.0-relnotes/featured.pngbin0 -> 1221797 bytes
-rw-r--r--docs/content/en/news/0.55.0-relnotes/index.md194
-rw-r--r--docs/content/en/news/0.55.1-relnotes/index.md53
-rw-r--r--docs/content/en/news/0.55.2-relnotes/index.md51
-rw-r--r--docs/content/en/news/0.55.3-relnotes/index.md49
-rw-r--r--docs/content/en/news/0.55.4-relnotes/index.md44
-rw-r--r--docs/content/en/news/0.55.5-relnotes/index.md56
-rw-r--r--docs/content/en/news/0.55.6-relnotes/index.md13
-rw-r--r--docs/content/en/news/0.56.0-relnotes/featured.pngbin0 -> 254587 bytes
-rw-r--r--docs/content/en/news/0.56.0-relnotes/index.md189
-rw-r--r--docs/content/en/news/0.56.1-relnotes/index.md21
-rw-r--r--docs/content/en/news/0.56.2-relnotes/index.md26
-rw-r--r--docs/content/en/news/0.56.3-relnotes/index.md47
-rw-r--r--docs/content/en/news/0.57.0-relnotes/hugo-57-poster-featured.pngbin0 -> 45223 bytes
-rw-r--r--docs/content/en/news/0.57.0-relnotes/index.md119
-rw-r--r--docs/content/en/news/0.57.1-relnotes/index.md26
-rw-r--r--docs/content/en/news/0.57.2-relnotes/index.md35
-rw-r--r--docs/content/en/news/0.58.0-relnotes/hugo58-featured.pngbin0 -> 23413 bytes
-rw-r--r--docs/content/en/news/0.58.0-relnotes/index.md109
-rw-r--r--docs/content/en/news/0.58.1-relnotes/index.md23
-rw-r--r--docs/content/en/news/0.58.2-relnotes/index.md20
-rw-r--r--docs/content/en/news/0.58.3-relnotes/index.md21
-rw-r--r--docs/content/en/news/0.59.0-relnotes/hugo-59-poster-featured.pngbin0 -> 78054 bytes
-rw-r--r--docs/content/en/news/0.59.0-relnotes/index.md120
-rw-r--r--docs/content/en/news/0.59.1-relnotes/index.md25
-rw-r--r--docs/content/en/news/0.60.0-relnotes/index.md136
-rw-r--r--docs/content/en/news/0.60.0-relnotes/poster-featured.pngbin0 -> 31907 bytes
-rw-r--r--docs/content/en/news/0.60.1-relnotes/featured-061.pngbin0 -> 28841 bytes
-rw-r--r--docs/content/en/news/0.60.1-relnotes/index.md19
-rw-r--r--docs/content/en/news/0.61.0-relnotes/hugo-61-featured.pngbin0 -> 79929 bytes
-rw-r--r--docs/content/en/news/0.61.0-relnotes/index.md56
-rw-r--r--docs/content/en/news/0.62.0-relnotes/hugo-62-poster-featured.pngbin0 -> 105390 bytes
-rw-r--r--docs/content/en/news/0.62.0-relnotes/index.md83
-rw-r--r--docs/content/en/news/0.62.1-relnotes/index.md17
-rw-r--r--docs/content/en/news/0.62.2-relnotes/index.md26
-rw-r--r--docs/content/en/news/0.63.0-relnotes/featured-063.pngbin0 -> 212246 bytes
-rw-r--r--docs/content/en/news/0.63.0-relnotes/index.md126
-rw-r--r--docs/content/en/news/0.63.1-relnotes/index.md17
-rw-r--r--docs/content/en/news/0.63.2-relnotes/index.md20
-rw-r--r--docs/content/en/news/0.64.0-relnotes/hugo-64-poster-featured.pngbin0 -> 69464 bytes
-rw-r--r--docs/content/en/news/0.64.0-relnotes/index.md54
-rw-r--r--docs/content/en/news/0.64.1-relnotes/index.md22
-rw-r--r--docs/content/en/news/0.65.0-relnotes/hugo-65-poster-featured.pngbin0 -> 115945 bytes
-rw-r--r--docs/content/en/news/0.65.0-relnotes/index.md141
-rw-r--r--docs/content/en/news/0.65.0-relnotes/pg-admin-tos.pngbin0 -> 65614 bytes
-rw-r--r--docs/content/en/news/0.65.1-relnotes/index.md20
-rw-r--r--docs/content/en/news/0.65.2-relnotes/index.md21
-rw-r--r--docs/content/en/news/0.65.3-relnotes/index.md21
-rw-r--r--docs/content/en/news/0.66.0-relnotes/hugo-66-poster-featured.pngbin0 -> 75588 bytes
-rw-r--r--docs/content/en/news/0.66.0-relnotes/index.md81
-rw-r--r--docs/content/en/news/0.67.0-relnotes/hugo-67-poster-featured.pngbin0 -> 79436 bytes
-rw-r--r--docs/content/en/news/0.67.0-relnotes/index.md64
-rw-r--r--docs/content/en/news/0.67.1-relnotes/index.md24
-rw-r--r--docs/content/en/news/0.68.0-relnotes/hugo-68-featured.pngbin0 -> 65337 bytes
-rw-r--r--docs/content/en/news/0.68.0-relnotes/index.md57
-rw-r--r--docs/content/en/news/0.68.1-relnotes/index.md19
-rw-r--r--docs/content/en/news/0.68.2-relnotes/index.md19
-rw-r--r--docs/content/en/news/0.68.3-relnotes/index.md19
-rw-r--r--docs/content/en/news/0.69.0-relnotes/hugo-69-easter-featured.pngbin0 -> 398560 bytes
-rw-r--r--docs/content/en/news/0.69.0-relnotes/index.md73
-rw-r--r--docs/content/en/news/0.69.1-relnotes/index.md29
-rw-r--r--docs/content/en/news/0.69.2-relnotes/index.md21
-rw-r--r--docs/content/en/news/0.7-relnotes/index.md16
-rw-r--r--docs/content/en/news/0.70.0-relnotes/hugo-70-featured.pngbin0 -> 65533 bytes
-rw-r--r--docs/content/en/news/0.70.0-relnotes/index.md68
-rw-r--r--docs/content/en/news/0.71.0-relnotes/hugo-71-featured.pngbin0 -> 209832 bytes
-rw-r--r--docs/content/en/news/0.71.0-relnotes/index.md50
-rw-r--r--docs/content/en/news/0.71.1-relnotes/index.md25
-rw-r--r--docs/content/en/news/0.72.0-relnotes/hugo-72-featured.pngbin0 -> 256988 bytes
-rw-r--r--docs/content/en/news/0.72.0-relnotes/index.md41
-rw-r--r--docs/content/en/news/0.73.0-relnotes/hugo-73-featured.pngbin0 -> 186170 bytes
-rw-r--r--docs/content/en/news/0.73.0-relnotes/index.md64
-rw-r--r--docs/content/en/news/0.74.0-relnotes/featured.pngbin0 -> 56047 bytes
-rw-r--r--docs/content/en/news/0.74.0-relnotes/index.md85
-rw-r--r--docs/content/en/news/0.74.1-relnotes/index.md19
-rw-r--r--docs/content/en/news/0.74.2-relnotes/index.md24
-rw-r--r--docs/content/en/news/0.74.3-relnotes/index.md26
-rw-r--r--docs/content/en/news/0.75.0-relnotes/featured.pngbin0 -> 125400 bytes
-rw-r--r--docs/content/en/news/0.75.0-relnotes/index.md166
-rw-r--r--docs/content/en/news/0.75.1-relnotes/index.md21
-rw-r--r--docs/content/en/news/0.76.0-relnotes/featured.pngbin0 -> 146539 bytes
-rw-r--r--docs/content/en/news/0.76.0-relnotes/index.md111
-rw-r--r--docs/content/en/news/0.76.1-relnotes/index.md17
-rw-r--r--docs/content/en/news/0.76.2-relnotes/index.md17
-rw-r--r--docs/content/en/news/0.76.3-relnotes/index.md20
-rw-r--r--docs/content/en/news/0.76.4-relnotes/index.md22
-rw-r--r--docs/content/en/news/0.76.5-relnotes/index.md19
-rw-r--r--docs/content/en/news/0.77.0-relnotes/featured.pngbin0 -> 130926 bytes
-rw-r--r--docs/content/en/news/0.77.0-relnotes/index.md90
-rw-r--r--docs/content/en/news/0.78.0-relnotes/featured.pngbin0 -> 47074 bytes
-rw-r--r--docs/content/en/news/0.78.0-relnotes/index.md50
-rw-r--r--docs/content/en/news/0.78.1-relnotes/index.md20
-rw-r--r--docs/content/en/news/0.78.2-relnotes/index.md28
-rw-r--r--docs/content/en/news/0.79.0-relnotes/featured.pngbin0 -> 75235 bytes
-rw-r--r--docs/content/en/news/0.79.0-relnotes/index.md71
-rw-r--r--docs/content/en/news/0.79.1-relnotes/index.md22
-rw-r--r--docs/content/en/news/0.8-relnotes/index.md21
-rw-r--r--docs/content/en/news/0.80.0-relnotes/featured.pngbin0 -> 162027 bytes
-rw-r--r--docs/content/en/news/0.80.0-relnotes/index.md79
-rw-r--r--docs/content/en/news/0.81.0-relnotes/featured.jpgbin0 -> 345282 bytes
-rw-r--r--docs/content/en/news/0.81.0-relnotes/index.md223
-rw-r--r--docs/content/en/news/0.82.0-relnotes/featured.pngbin0 -> 57106 bytes
-rw-r--r--docs/content/en/news/0.82.0-relnotes/index.md78
-rw-r--r--docs/content/en/news/0.82.1-relnotes/index.md19
-rw-r--r--docs/content/en/news/0.83.0-relnotes/featured.pngbin0 -> 82972 bytes
-rw-r--r--docs/content/en/news/0.83.0-relnotes/index.md133
-rw-r--r--docs/content/en/news/0.83.1-relnotes/index.md19
-rw-r--r--docs/content/en/news/0.84.0-relnotes/featured.pngbin0 -> 47732 bytes
-rw-r--r--docs/content/en/news/0.84.0-relnotes/index.md160
-rw-r--r--docs/content/en/news/0.84.1-relnotes/index.md21
-rw-r--r--docs/content/en/news/0.84.2-relnotes/index.md26
-rw-r--r--docs/content/en/news/0.84.3-relnotes/index.md20
-rw-r--r--docs/content/en/news/0.84.4-relnotes/index.md20
-rw-r--r--docs/content/en/news/0.85.0-relnotes/featured.pngbin0 -> 67393 bytes
-rw-r--r--docs/content/en/news/0.85.0-relnotes/index.md70
-rw-r--r--docs/content/en/news/0.86.0-relnotes/featured.pngbin0 -> 188476 bytes
-rw-r--r--docs/content/en/news/0.86.0-relnotes/index.md56
-rw-r--r--docs/content/en/news/0.86.1-relnotes/index.md19
-rw-r--r--docs/content/en/news/0.87.0-relnotes/featured.pngbin0 -> 104936 bytes
-rw-r--r--docs/content/en/news/0.87.0-relnotes/index.md90
-rw-r--r--docs/content/en/news/0.88.0-relnotes/featured.pngbin0 -> 87331 bytes
-rw-r--r--docs/content/en/news/0.88.0-relnotes/index.md62
-rw-r--r--docs/content/en/news/0.88.1-relnotes/index.md19
-rw-r--r--docs/content/en/news/0.89.0-relnotes/featured.pngbin0 -> 104046 bytes
-rw-r--r--docs/content/en/news/0.89.0-relnotes/index.md106
-rw-r--r--docs/content/en/news/0.89.1-relnotes/index.md20
-rw-r--r--docs/content/en/news/0.89.2-relnotes/index.md20
-rw-r--r--docs/content/en/news/0.89.3-relnotes/index.md26
-rw-r--r--docs/content/en/news/0.89.4-relnotes/index.md19
-rw-r--r--docs/content/en/news/0.9-relnotes/index.md43
-rw-r--r--docs/content/en/news/_index.md4
-rw-r--r--docs/content/en/news/hugo-macos-intel-vs-arm/featured.pngbin0 -> 299333 bytes
-rw-r--r--docs/content/en/news/hugo-macos-intel-vs-arm/index.html9139
-rw-r--r--docs/content/en/news/lets-celebrate-hugos-5th-birthday/featured.pngbin0 -> 179291 bytes
-rw-r--r--docs/content/en/news/lets-celebrate-hugos-5th-birthday/graph-stars.pngbin0 -> 15599 bytes
-rw-r--r--docs/content/en/news/lets-celebrate-hugos-5th-birthday/graph-themes.pngbin0 -> 16956 bytes
-rw-r--r--docs/content/en/news/lets-celebrate-hugos-5th-birthday/index.md108
-rw-r--r--docs/content/en/news/lets-celebrate-hugos-5th-birthday/sunset-get.pngbin0 -> 358844 bytes
-rw-r--r--docs/content/en/readfiles/README.md16
-rw-r--r--docs/content/en/readfiles/dateformatting.md87
-rw-r--r--docs/content/en/readfiles/index.md3
-rw-r--r--docs/content/en/readfiles/pages-vs-site-pages.md34
-rw-r--r--docs/content/en/readfiles/sectionvars.md23
-rw-r--r--docs/content/en/readfiles/testing.txt3
-rw-r--r--docs/content/en/showcase/1password-support/bio.md5
-rw-r--r--docs/content/en/showcase/1password-support/featured.pngbin0 -> 165718 bytes
-rw-r--r--docs/content/en/showcase/1password-support/index.md39
-rw-r--r--docs/content/en/showcase/bypasscensorship/bio.md6
-rw-r--r--docs/content/en/showcase/bypasscensorship/featured.pngbin0 -> 180903 bytes
-rw-r--r--docs/content/en/showcase/bypasscensorship/index.md24
-rw-r--r--docs/content/en/showcase/digitalgov/bio.md2
-rw-r--r--docs/content/en/showcase/digitalgov/featured.pngbin0 -> 65077 bytes
-rw-r--r--docs/content/en/showcase/digitalgov/index.md66
-rw-r--r--docs/content/en/showcase/fireship/bio.md6
-rw-r--r--docs/content/en/showcase/fireship/featured.pngbin0 -> 136959 bytes
-rw-r--r--docs/content/en/showcase/fireship/index.md17
-rw-r--r--docs/content/en/showcase/flesland-flis/bio.md8
-rw-r--r--docs/content/en/showcase/flesland-flis/featured.pngbin0 -> 309284 bytes
-rw-r--r--docs/content/en/showcase/flesland-flis/index.md24
-rw-r--r--docs/content/en/showcase/forestry/bio.md5
-rw-r--r--docs/content/en/showcase/forestry/featured.pngbin0 -> 227009 bytes
-rw-r--r--docs/content/en/showcase/forestry/index.md48
-rw-r--r--docs/content/en/showcase/godot-tutorials/bio.md9
-rw-r--r--docs/content/en/showcase/godot-tutorials/featured.pngbin0 -> 72068 bytes
-rw-r--r--docs/content/en/showcase/godot-tutorials/index.md25
-rw-r--r--docs/content/en/showcase/hapticmedia/bio.md1
-rw-r--r--docs/content/en/showcase/hapticmedia/featured.pngbin0 -> 543922 bytes
-rw-r--r--docs/content/en/showcase/hapticmedia/index.md33
-rw-r--r--docs/content/en/showcase/hartwell-insurance/bio.md6
-rw-r--r--docs/content/en/showcase/hartwell-insurance/featured.pngbin0 -> 446603 bytes
-rw-r--r--docs/content/en/showcase/hartwell-insurance/hartwell-columns.pngbin0 -> 89018 bytes
-rw-r--r--docs/content/en/showcase/hartwell-insurance/hartwell-lighthouse.pngbin0 -> 9025 bytes
-rw-r--r--docs/content/en/showcase/hartwell-insurance/hartwell-webpagetest.pngbin0 -> 11653 bytes
-rw-r--r--docs/content/en/showcase/hartwell-insurance/index.md69
-rw-r--r--docs/content/en/showcase/keycdn/bio.md1
-rw-r--r--docs/content/en/showcase/keycdn/featured.pngbin0 -> 358740 bytes
-rw-r--r--docs/content/en/showcase/keycdn/index.md30
-rw-r--r--docs/content/en/showcase/letsencrypt/bio.md3
-rw-r--r--docs/content/en/showcase/letsencrypt/featured.pngbin0 -> 147459 bytes
-rw-r--r--docs/content/en/showcase/letsencrypt/index.md21
-rw-r--r--docs/content/en/showcase/linode/bio.md4
-rw-r--r--docs/content/en/showcase/linode/featured.pngbin0 -> 90149 bytes
-rw-r--r--docs/content/en/showcase/linode/index.md15
-rw-r--r--docs/content/en/showcase/over/bio.md5
-rw-r--r--docs/content/en/showcase/over/featured-over.pngbin0 -> 194841 bytes
-rw-r--r--docs/content/en/showcase/over/index.md17
-rw-r--r--docs/content/en/showcase/pharmaseal/bio.md7
-rw-r--r--docs/content/en/showcase/pharmaseal/featured-pharmaseal.pngbin0 -> 769739 bytes
-rw-r--r--docs/content/en/showcase/pharmaseal/index.md37
-rw-r--r--docs/content/en/showcase/quiply-employee-communications-app/bio.md4
-rw-r--r--docs/content/en/showcase/quiply-employee-communications-app/featured.pngbin0 -> 631206 bytes
-rw-r--r--docs/content/en/showcase/quiply-employee-communications-app/index.md29
-rw-r--r--docs/content/en/showcase/small-multiples/bio.md3
-rw-r--r--docs/content/en/showcase/small-multiples/featured-small-multiples.pngbin0 -> 374273 bytes
-rw-r--r--docs/content/en/showcase/small-multiples/index.md47
-rw-r--r--docs/content/en/showcase/stackimpact/bio.md4
-rw-r--r--docs/content/en/showcase/stackimpact/featured.pngbin0 -> 153794 bytes
-rw-r--r--docs/content/en/showcase/stackimpact/index.md16
-rw-r--r--docs/content/en/showcase/template/bio.md8
-rw-r--r--docs/content/en/showcase/template/featured-template.pngbin0 -> 41270 bytes
-rw-r--r--docs/content/en/showcase/template/index.md22
-rw-r--r--docs/content/en/showcase/tomango/bio.md6
-rw-r--r--docs/content/en/showcase/tomango/featured.pngbin0 -> 143336 bytes
-rw-r--r--docs/content/en/showcase/tomango/index.md29
-rw-r--r--docs/content/en/templates/404.md64
-rw-r--r--docs/content/en/templates/_index.md19
-rw-r--r--docs/content/en/templates/alternatives.md21
-rw-r--r--docs/content/en/templates/base.md103
-rw-r--r--docs/content/en/templates/data-templates.md251
-rw-r--r--docs/content/en/templates/files.md66
-rw-r--r--docs/content/en/templates/homepage.md71
-rw-r--r--docs/content/en/templates/internal.md220
-rw-r--r--docs/content/en/templates/introduction.md698
-rw-r--r--docs/content/en/templates/lists.md593
-rw-r--r--docs/content/en/templates/lookup-order.md82
-rw-r--r--docs/content/en/templates/menu-templates.md182
-rw-r--r--docs/content/en/templates/ordering-and-grouping.md344
-rw-r--r--docs/content/en/templates/output-formats.md260
-rw-r--r--docs/content/en/templates/pagination.md161
-rw-r--r--docs/content/en/templates/partials.md206
-rw-r--r--docs/content/en/templates/robots.md66
-rw-r--r--docs/content/en/templates/rss.md92
-rw-r--r--docs/content/en/templates/section-templates.md116
-rw-r--r--docs/content/en/templates/shortcode-templates.md418
-rw-r--r--docs/content/en/templates/single-page-templates.md92
-rw-r--r--docs/content/en/templates/sitemap-template.md106
-rw-r--r--docs/content/en/templates/taxonomy-templates.md341
-rw-r--r--docs/content/en/templates/template-debugging.md76
-rw-r--r--docs/content/en/templates/views.md121
-rw-r--r--docs/content/en/tools/_index.md24
-rw-r--r--docs/content/en/tools/editors.md50
-rw-r--r--docs/content/en/tools/frontends.md31
-rw-r--r--docs/content/en/tools/migrations.md87
-rw-r--r--docs/content/en/tools/other.md29
-rw-r--r--docs/content/en/tools/search.md35
-rw-r--r--docs/content/en/tools/starter-kits.md45
-rw-r--r--docs/content/en/troubleshooting/_index.md23
-rw-r--r--docs/content/en/troubleshooting/build-performance.md101
-rw-r--r--docs/content/en/troubleshooting/faq.md58
-rw-r--r--docs/content/en/variables/_index.md23
-rw-r--r--docs/content/en/variables/files.md54
-rw-r--r--docs/content/en/variables/git.md58
-rw-r--r--docs/content/en/variables/hugo.md49
-rw-r--r--docs/content/en/variables/menus.md128
-rw-r--r--docs/content/en/variables/page.md307
-rw-r--r--docs/content/en/variables/pages.md30
-rw-r--r--docs/content/en/variables/shortcodes.md48
-rw-r--r--docs/content/en/variables/site.md135
-rw-r--r--docs/content/en/variables/sitemap.md32
-rw-r--r--docs/content/en/variables/taxonomy.md84
603 files changed, 43626 insertions, 0 deletions
diff --git a/docs/content/en/_index.md b/docs/content/en/_index.md
new file mode 100644
index 000000000..b4e602438
--- /dev/null
+++ b/docs/content/en/_index.md
@@ -0,0 +1,49 @@
+---
+title: "The world’s fastest framework for building websites"
+date: 2017-03-02T12:00:00-05:00
+features:
+ - heading: Blistering Speed
+ image_path: /images/icon-fast.svg
+ tagline: What's modern about waiting for your site to build?
+ copy: Hugo is the fastest tool of its kind. At <1 ms per page, the average site builds in less than a second.
+
+ - heading: Robust Content Management
+ image_path: /images/icon-content-management.svg
+ tagline: Flexibility rules. Hugo is a content strategist's dream.
+ copy: Hugo supports unlimited content types, taxonomies, menus, dynamic API-driven content, and more, all without plugins.
+
+ - heading: Shortcodes
+ image_path: /images/icon-shortcodes.svg
+ tagline: Hugo's shortcodes are Markdown's hidden superpower.
+ copy: We love the beautiful simplicity of markdown’s syntax, but there are times when we want more flexibility. Hugo shortcodes allow for both beauty and flexibility.
+
+ - heading: Built-in Templates
+ image_path: /images/icon-built-in-templates.svg
+ tagline: Hugo has common patterns to get your work done quickly.
+ copy: Hugo ships with pre-made templates to make quick work of SEO, commenting, analytics and other functions. One line of code, and you're done.
+
+ - heading: Multilingual and i18n
+ image_path: /images/icon-multilingual2.svg
+ tagline: Polyglot baked in.
+ copy: Hugo provides full i18n support for multi-language sites with the same straightforward development experience Hugo users love in single-language sites.
+
+ - heading: Custom Outputs
+ image_path: /images/icon-custom-outputs.svg
+ tagline: HTML not enough?
+ copy: Hugo allows you to output your content in multiple formats, including JSON or AMP, and makes it easy to create your own.
+sections:
+ - heading: "300+ Themes"
+ cta: Check out the Hugo themes.
+ link: https://themes.gohugo.io/
+ color_classes: bg-accent-color white
+ image: /images/homepage-screenshot-hugo-themes.jpg
+ copy: "Hugo provides a robust theming system that is easy to implement but capable of producing even the most complicated websites."
+ - heading: "Capable Templating"
+ cta: Get Started.
+ link: templates/
+ color_classes: bg-primary-color-light black
+ image: /images/home-page-templating-example.png
+ copy: "Hugo's Go-based templating provides just the right amount of logic to build anything from the simple to complex."
+---
+
+Hugo is one of the most popular open-source static site generators. With its amazing speed and flexibility, Hugo makes building websites fun again.
diff --git a/docs/content/en/about/_index.md b/docs/content/en/about/_index.md
new file mode 100644
index 000000000..8ed441b61
--- /dev/null
+++ b/docs/content/en/about/_index.md
@@ -0,0 +1,20 @@
+---
+title: About Hugo
+linktitle: Overview
+description: Hugo's features, roadmap, license, and motivation.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: []
+keywords: []
+menu:
+ docs:
+ parent: "about"
+ weight: 1
+weight: 1
+draft: false
+aliases: [/about-hugo/,/docs/]
+toc: false
+---
+
+Hugo is not your average static site generator.
diff --git a/docs/content/en/about/benefits.md b/docs/content/en/about/benefits.md
new file mode 100644
index 000000000..d5c13a9c3
--- /dev/null
+++ b/docs/content/en/about/benefits.md
@@ -0,0 +1,43 @@
+---
+title: The Benefits of Static Site Generators
+linktitle: The Benefits of Static
+description: Improved performance, security and ease of use are just a few of the reasons static site generators are so appealing.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+keywords: [ssg,static,performance,security]
+menu:
+ docs:
+ parent: "about"
+ weight: 30
+weight: 30
+sections_weight: 30
+draft: false
+aliases: []
+toc: false
+---
+
+The purpose of website generators is to render content into HTML files. Most are "dynamic site generators." That means the HTTP server---i.e., the program that sends files to the browser to be viewed---runs the generator to create a new HTML file every time an end user requests a page.
+
+Over time, dynamic site generators were programmed to cache their HTML files to prevent unnecessary delays in delivering pages to end users. A cached page is a static version of a web page.
+
+Hugo takes caching a step further and all HTML files are rendered on your computer. You can review the files locally before copying them to the computer hosting the HTTP server. Since the HTML files aren't generated dynamically, we say that Hugo is a *static site generator*.
+
+This has many benefits. The most noticeable is performance. HTTP servers are *very* good at sending files---so good, in fact, that you can effectively serve the same number of pages with a fraction of the memory and CPU needed for a dynamic site.
+
+## More on Static Site Generators
+
+* ["An Introduction to Static Site Generators", David Walsh][]
+* ["Hugo vs. WordPress page load speed comparison: Hugo leaves WordPress in its dust", GettingThingsTech][hugovwordpress]
+* ["Static Site Generators", O'Reilly][]
+* [StaticGen: Top Open-Source Static Site Generators (GitHub Stars)][]
+* ["Top 10 Static Website Generators", Netlify blog][]
+* ["The Resurgence of Static", dotCMS][dotcms]
+
+
+["An Introduction to Static Site Generators", David Walsh]: https://davidwalsh.name/introduction-static-site-generators
+["Static Site Generators", O'Reilly]: https://github.com/gohugoio/hugoDocs/files/1242701/static-site-generators.pdf
+["Top 10 Static Website Generators", Netlify blog]: https://www.netlify.com/blog/2016/05/02/top-ten-static-website-generators/
+[hugovwordpress]: https://gettingthingstech.com/hugo-vs.-wordpress-page-load-speed-comparison-hugo-leaves-wordpress-in-its-dust/
+[StaticGen: Top Open-Source Static Site Generators (GitHub Stars)]: https://www.staticgen.com/
+[dotcms]: https://dotcms.com/blog/post/the-resurgence-of-static
diff --git a/docs/content/en/about/features.md b/docs/content/en/about/features.md
new file mode 100644
index 000000000..11f9f65b7
--- /dev/null
+++ b/docs/content/en/about/features.md
@@ -0,0 +1,85 @@
+---
+title: Hugo Features
+linktitle: Hugo Features
+description: Hugo boasts blistering speed, robust content management, and a powerful templating language making it a great fit for all kinds of static websites.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+menu:
+ docs:
+ parent: "about"
+ weight: 20
+weight: 20
+sections_weight: 20
+draft: false
+toc: true
+---
+
+## General
+
+* [Extremely fast][] build times (&lt; 1 ms per page)
+* Completely cross platform, with [easy installation][install] on macOS, Linux, Windows, and more
+* Renders changes on the fly with [LiveReload][] as you develop
+* [Powerful theming][]
+* [Host your site anywhere][hostanywhere]
+
+## Organization
+
+* Straightforward [organization for your projects][], including website sections
+* Customizable [URLs][]
+* Support for configurable [taxonomies][], including categories and tags
+* [Sort content][] as you desire through powerful template [functions][]
+* Automatic [table of contents][] generation
+* [Dynamic menu][] creation
+* [Pretty URLs][] support
+* [Permalink][] pattern support
+* Redirects via [aliases][]
+
+## Content
+
+* Native Markdown and Emacs Org-Mode support, as well as other languages via *external helpers* (see [supported formats][])
+* TOML, YAML, and JSON metadata support in [front matter][]
+* Customizable [homepage][]
+* Multiple [content types][]
+* Automatic and user defined [content summaries][]
+* [Shortcodes][] to enable rich content inside of Markdown
+* ["Minutes to Read"][pagevars] functionality
+* ["WordCount"][pagevars] functionality
+
+## Additional Features
+
+* Integrated [Disqus][] comment support
+* Integrated [Google Analytics][] support
+* Automatic [RSS][] creation
+* Support for [Go][] HTML templates
+* [Syntax highlighting][] powered by [Chroma][]
+
+
+[aliases]: /content-management/urls/#aliases
+[Chroma]: https://github.com/alecthomas/chroma
+[content summaries]: /content-management/summaries/
+[content types]: /content-management/types/
+[Disqus]: https://disqus.com/
+[Dynamic menu]: /templates/menus/
+[Extremely fast]: https://github.com/bep/hugo-benchmark
+[front matter]: /content-management/front-matter/
+[functions]: /functions/
+[Go]: https://golang.org/pkg/html/template/
+[Google Analytics]: https://google-analytics.com/
+[homepage]: /templates/homepage/
+[hostanywhere]: /hosting-and-deployment/
+[install]: /getting-started/installing/
+[LiveReload]: /getting-started/usage/
+[organization for your projects]: /getting-started/directory-structure/
+[pagevars]: /variables/page/
+[Permalink]: /content-management/urls/#permalinks
+[Powerful theming]: /themes/
+[Pretty URLs]: /content-management/urls/
+[RSS]: /templates/rss/
+[Shortcodes]: /content-management/shortcodes/
+[sort content]: /templates/
+[supported formats]: /content-management/formats/
+[Syntax highlighting]: /tools/syntax-highlighting/
+[table of contents]: /content-management/toc/
+[taxonomies]: /content-management/taxonomies/
+[URLs]: /content-management/urls/
diff --git a/docs/content/en/about/hugo-and-gdpr.md b/docs/content/en/about/hugo-and-gdpr.md
new file mode 100644
index 000000000..269c5d432
--- /dev/null
+++ b/docs/content/en/about/hugo-and-gdpr.md
@@ -0,0 +1,140 @@
+---
+title: Hugo and the General Data Protection Regulation (GDPR)
+linktitle: Hugo and GDPR
+description: About how to configure your Hugo site to meet the new regulations.
+date: 2018-05-25
+layout: single
+keywords: ["GDPR", "Privacy", "Data Protection"]
+menu:
+ docs:
+ parent: "about"
+ weight: 5
+weight: 5
+sections_weight: 5
+draft: false
+aliases: [/privacy/,/gdpr/]
+toc: true
+---
+
+
+ General Data Protection Regulation ([GDPR](https://en.wikipedia.org/wiki/General_Data_Protection_Regulation)) is a regulation in EU law on data protection and privacy for all individuals within the European Union and the European Economic Area. It became enforceable on 25 May 2018.
+
+ **Hugo is a static site generator. By using Hugo you are already standing on very solid ground. Static HTML files on disk are much easier to reason about compared to server and database driven web sites.**
+
+ But even static websites can integrate with external services, so from version `0.41`, Hugo provides a **Privacy Config** that covers the relevant built-in templates.
+
+ Note that:
+
+ * These settings have their defaults setting set to _off_, i.e. how it worked before Hugo `0.41`. You must do your own evaluation of your site and apply the appropriate settings.
+ * These settings work with the [internal templates](/templates/internal/). Some theme may contain custom templates for embedding services like Google Analytics. In that case these options have no effect.
+ * We will continue this work and improve this further in future Hugo versions.
+
+## All Privacy Settings
+
+Below are all privacy settings and their default value. These settings need to be put in your site config (e.g. `config.toml`).
+
+ {{< code-toggle file="config">}}
+[privacy]
+[privacy.disqus]
+disable = false
+[privacy.googleAnalytics]
+disable = false
+respectDoNotTrack = false
+anonymizeIP = false
+useSessionStorage = false
+[privacy.instagram]
+disable = false
+simple = false
+[privacy.twitter]
+disable = false
+enableDNT = false
+simple = false
+[privacy.vimeo]
+disable = false
+enableDNT = false
+simple = false
+[privacy.youtube]
+disable = false
+privacyEnhanced = false
+{{< /code-toggle >}}
+
+
+## Disable All Services
+
+An example Privacy Config that disables all the relevant services in Hugo. With this configuration, the other settings will not matter.
+
+ {{< code-toggle file="config">}}
+[privacy]
+[privacy.disqus]
+disable = true
+[privacy.googleAnalytics]
+disable = true
+[privacy.instagram]
+disable = true
+[privacy.twitter]
+disable = true
+[privacy.vimeo]
+disable = true
+[privacy.youtube]
+disable = true
+{{< /code-toggle >}}
+
+## The Privacy Settings Explained
+
+### GoogleAnalytics
+
+anonymizeIP
+: Enabling this will make it so the users' IP addresses are anonymized within Google Analytics.
+
+respectDoNotTrack
+: Enabling this will make the GA templates respect the "Do Not Track" HTTP header.
+
+useSessionStorage
+: Enabling this will disable the use of Cookies and use Session Storage to Store the GA Client ID.
+
+{{% warning %}}
+`useSessionStorage` is not supported when using Google Analytics v4 (gtag.js).
+{{% /warning %}}
+### Instagram
+
+simple
+: If simple mode is enabled, a static and no-JS version of the Instagram image card will be built. Note that this only supports image cards and the image itself will be fetched from Instagram's servers.
+
+**Note:** If you use the _simple mode_ for Instagram and a site styled with Bootstrap 4, you may want to disable the inline styles provided by Hugo:
+
+ {{< code-toggle file="config">}}
+[services]
+[services.instagram]
+disableInlineCSS = true
+{{< /code-toggle >}}
+
+### Twitter
+
+enableDNT
+: Enabling this for the twitter/tweet shortcode, the tweet and its embedded page on your site are not used for purposes that include personalized suggestions and personalized ads.
+
+simple
+: If simple mode is enabled, a static and no-JS version of a tweet will be built.
+
+
+**Note:** If you use the _simple mode_ for Twitter, you may want to disable the inlines styles provided by Hugo:
+
+ {{< code-toggle file="config">}}
+[services]
+[services.twitter]
+disableInlineCSS = true
+{{< /code-toggle >}}
+
+### YouTube
+
+privacyEnhanced
+: When you turn on privacy-enhanced mode, YouTube won’t store information about visitors on your website unless the user plays the embedded video.
+
+### Vimeo
+
+enableDNT
+: Enabling this for the vimeo shortcode, the Vimeo player will be blocked from tracking any session data, including all cookies and stats.
+
+simple
+: If simple mode is enabled, the video thumbnail is fetched from Vimeo's servers and it is overlayed with a play button. If the user clicks to play the video, it will open in a new tab directly on Vimeo's website.
+
diff --git a/docs/content/en/about/license.md b/docs/content/en/about/license.md
new file mode 100644
index 000000000..ae74b6047
--- /dev/null
+++ b/docs/content/en/about/license.md
@@ -0,0 +1,165 @@
+---
+title: Apache License
+linktitle: License
+description: Hugo v0.15 and later are released under the Apache 2.0 license.
+date: 2016-02-01
+publishdate: 2016-02-01
+lastmod: 2016-03-02
+categories: ["about hugo"]
+keywords: ["License","apache"]
+menu:
+ docs:
+ parent: "about"
+ weight: 60
+weight: 60
+sections_weight: 60
+aliases: [/meta/license]
+toc: true
+---
+
+{{% note %}}
+Hugo v0.15 and later are released under the Apache 2.0 license.
+Earlier versions of Hugo were released under the [Simple Public License](https://opensource.org/licenses/Simple-2.0).
+{{% /note %}}
+
+_Version 2.0, January 2004_ <br>
+<https://www.apache.org/licenses/LICENSE-2.0>
+
+*Terms and Conditions for use, reproduction, and distribution*
+
+## 1. Definitions
+
+“License” shall mean the terms and conditions for use, reproduction, and
+distribution as defined by Sections 1 through 9 of this document.
+
+“Licensor” shall mean the copyright owner or entity authorized by the copyright
+owner that is granting the License.
+
+“Legal Entity” shall mean the union of the acting entity and all other entities
+that control, are controlled by, or are under common control with that entity.
+For the purposes of this definition, “control” means **(i)** the power, direct or
+indirect, to cause the direction or management of such entity, whether by
+contract or otherwise, or **(ii)** ownership of fifty percent (50%) or more of the
+outstanding shares, or **(iii)** beneficial ownership of such entity.
+
+“You” (or “Your”) shall mean an individual or Legal Entity exercising
+permissions granted by this License.
+
+“Source” form shall mean the preferred form for making modifications, including
+but not limited to software source code, documentation source, and configuration
+files.
+
+“Object” form shall mean any form resulting from mechanical transformation or
+translation of a Source form, including but not limited to compiled object code,
+generated documentation, and conversions to other media types.
+
+“Work” shall mean the work of authorship, whether in Source or Object form, made
+available under the License, as indicated by a copyright notice that is included
+in or attached to the work (an example is provided in the Appendix below).
+
+“Derivative Works” shall mean any work, whether in Source or Object form, that
+is based on (or derived from) the Work and for which the editorial revisions,
+annotations, elaborations, or other modifications represent, as a whole, an
+original work of authorship. For the purposes of this License, Derivative Works
+shall not include works that remain separable from, or merely link (or bind by
+name) to the interfaces of, the Work and Derivative Works thereof.
+
+“Contribution” shall mean any work of authorship, including the original version
+of the Work and any modifications or additions to that Work or Derivative Works
+thereof, that is intentionally submitted to Licensor for inclusion in the Work
+by the copyright owner or by an individual or Legal Entity authorized to submit
+on behalf of the copyright owner. For the purposes of this definition,
+“submitted” means any form of electronic, verbal, or written communication sent
+to the Licensor or its representatives, including but not limited to
+communication on electronic mailing lists, source code control systems, and
+issue tracking systems that are managed by, or on behalf of, the Licensor for
+the purpose of discussing and improving the Work, but excluding communication
+that is conspicuously marked or otherwise designated in writing by the copyright
+owner as “Not a Contribution.”
+
+“Contributor” shall mean Licensor and any individual or Legal Entity on behalf
+of whom a Contribution has been received by Licensor and subsequently
+incorporated within the Work.
+
+## 2. Grant of Copyright License
+
+Subject to the terms and conditions of this License, each Contributor hereby
+grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free,
+irrevocable copyright license to reproduce, prepare Derivative Works of,
+publicly display, publicly perform, sublicense, and distribute the Work and such
+Derivative Works in Source or Object form.
+
+## 3. Grant of Patent License
+
+Subject to the terms and conditions of this License, each Contributor hereby
+grants to You a perpetual, worldwide, non-exclusive, no-charge, royalty-free,
+irrevocable (except as stated in this section) patent license to make, have
+made, use, offer to sell, sell, import, and otherwise transfer the Work, where
+such license applies only to those patent claims licensable by such Contributor
+that are necessarily infringed by their Contribution(s) alone or by combination
+of their Contribution(s) with the Work to which such Contribution(s) was
+submitted. If You institute patent litigation against any entity (including a
+cross-claim or counterclaim in a lawsuit) alleging that the Work or a
+Contribution incorporated within the Work constitutes direct or contributory
+patent infringement, then any patent licenses granted to You under this License
+for that Work shall terminate as of the date such litigation is filed.
+
+## 4. Redistribution
+
+You may reproduce and distribute copies of the Work or Derivative Works thereof
+in any medium, with or without modifications, and in Source or Object form,
+provided that You meet the following conditions:
+
+* **(a)** You must give any other recipients of the Work or Derivative Works a copy of
+this License; and
+* **(b)** You must cause any modified files to carry prominent notices stating that You
+changed the files; and
+* **\(c)** You must retain, in the Source form of any Derivative Works that You distribute,
+all copyright, patent, trademark, and attribution notices from the Source form
+of the Work, excluding those notices that do not pertain to any part of the
+Derivative Works; and
+* **(d)** If the Work includes a “NOTICE” text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License.
+
+You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.
+
+## 5. Submission of Contributions
+
+Unless You explicitly state otherwise, any Contribution intentionally submitted for inclusion in the Work by You to the Licensor shall be under the terms and conditions of this License, without any additional terms or conditions. Notwithstanding the above, nothing herein shall supersede or modify the terms of any separate license agreement you may have executed with Licensor regarding such Contributions.
+
+## 6. Trademarks
+
+This License does not grant permission to use the trade names, trademarks, service marks, or product names of the Licensor, except as required for reasonable and customary use in describing the origin of the Work and reproducing the content of the NOTICE file.
+
+## 7. Disclaimer of Warranty
+
+Unless required by applicable law or agreed to in writing, Licensor provides the Work (and each Contributor provides its Contributions) on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied, including, without limitation, any warranties or conditions of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A PARTICULAR PURPOSE. You are solely responsible for determining the appropriateness of using or redistributing the Work and assume any risks associated with Your exercise of permissions under this License.
+
+## 8. Limitation of Liability
+
+In no event and under no legal theory, whether in tort (including negligence), contract, or otherwise, unless required by applicable law (such as deliberate and grossly negligent acts) or agreed to in writing, shall any Contributor be liable to You for damages, including any direct, indirect, special, incidental, or consequential damages of any character arising as a result of this License or out of the use or inability to use the Work (including but not limited to damages for loss of goodwill, work stoppage, computer failure or malfunction, or any and all other commercial damages or losses), even if such Contributor has been advised of the possibility of such damages.
+
+## 9. Accepting Warranty or Additional Liability
+
+While redistributing the Work or Derivative Works thereof, You may choose to offer, and charge a fee for, acceptance of support, warranty, indemnity, or other liability obligations and/or rights consistent with this License. However, in accepting such obligations, You may act only on Your own behalf and on Your sole responsibility, not on behalf of any other Contributor, and only if You agree to indemnify, defend, and hold each Contributor harmless for any liability incurred by, or claims asserted against, such Contributor by reason of your accepting any such warranty or additional liability.
+
+_END OF TERMS AND CONDITIONS_
+
+## APPENDIX: How to apply the Apache License to your work
+
+To apply the Apache License to your work, attach the following boilerplate notice, with the fields enclosed by brackets `[]` replaced with your own identifying information. (Don't include the brackets!) The text should be enclosed in the appropriate comment syntax for the file format. We also recommend that a file or class name and description of purpose be included on the same “printed page” as the copyright notice for easier identification within third-party archives.
+
+{{< code file="apache-notice.txt" download="apache-notice.txt" >}}
+Copyright [yyyy] [name of copyright owner]
+
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+
+ https://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+{{< /code >}}
diff --git a/docs/content/en/about/security-model/hugo-security-model-featured.png b/docs/content/en/about/security-model/hugo-security-model-featured.png
new file mode 100644
index 000000000..5592d104b
--- /dev/null
+++ b/docs/content/en/about/security-model/hugo-security-model-featured.png
Binary files differ
diff --git a/docs/content/en/about/security-model/index.md b/docs/content/en/about/security-model/index.md
new file mode 100644
index 000000000..7a7841131
--- /dev/null
+++ b/docs/content/en/about/security-model/index.md
@@ -0,0 +1,54 @@
+---
+title: Hugo's Security Model
+description: A summary of Hugo's security model.
+date: 2019-10-01
+layout: single
+keywords: ["Security", "Privacy"]
+menu:
+ docs:
+ parent: "about"
+ weight: 4
+weight: 5
+sections_weight: 5
+draft: false
+aliases: [/security/]
+toc: true
+---
+
+## Runtime Security
+
+Hugo produces static output, so once built, the runtime is the browser (assuming the output is HTML) and any server (API) that you integrate with.
+
+But when developing and building your site, the runtime is the `hugo` executable. Securing a runtime can be [a real challenge](https://blog.logrocket.com/how-to-protect-your-node-js-applications-from-malicious-dependencies-5f2e60ea08f9/).
+
+**Hugo's main approach is that of sandboxing:**
+
+* Hugo has a virtual file system and only the main project (not third-party components) is allowed to mount directories or files outside the project root.
+* Only the main project can walk symbolic links.
+* User-defined components have only read-access to the filesystem.
+* We shell out to some external binaries to support [Asciidoctor](/content-management/formats/#list-of-content-formats) and similar, but those binaries and their flags are predefined. General functions to run arbitrary external OS commands have been [discussed](https://github.com/gohugoio/hugo/issues/796), but not implemented because of security concerns.
+
+Hugo will soon introduce a concept of _Content Source Plugins_ (AKA _Pages from Data_), but the above will still hold true.
+
+## Dependency Security
+
+Hugo builds as a static binary using [Go Modules](https://github.com/golang/go/wiki/Modules) to manage its dependencies. Go Modules have several safeguards, one of them being the `go.sum` file. This is a database of the expected cryptographic checksums of all of your dependencies, including any transitive.
+
+[Hugo Modules](/hugo-modules/) is built on top of Go Modules functionality, and a Hugo project using Hugo Modules will have a `go.sum` file. We recommend that you commit this file to your version control system. The Hugo build will fail if there is a checksum mismatch, which would be an indication of [dependency tampering](https://julienrenaux.fr/2019/12/20/github-actions-security-risk/).
+
+## Web Application Security
+
+These are the security threats as defined by [OWASP](https://en.wikipedia.org/wiki/OWASP).
+
+For HTML output, this is the core security model:
+
+https://golang.org/pkg/html/template/#hdr-Security_Model
+
+In short:
+
+Templates authors (you) are trusted, but the data you send in is not.
+This is why you sometimes need to use the _safe_ functions, such as `safeHTML`, to avoid escaping of data you know is safe.
+There is one exception to the above, as noted in the documentation: If you enable inline shortcodes, you also say that the shortcodes and data handling in content files are trusted, as those macros are treated as pure text.
+It may be worth adding that Hugo is a static site generator with no concept of dynamic user input.
+
+For content, the default Markdown renderer is [configured](/getting-started/configuration-markup) to remove or escape potentially unsafe content. This behavior can be reconfigured if you trust your content.
diff --git a/docs/content/en/about/what-is-hugo.md b/docs/content/en/about/what-is-hugo.md
new file mode 100644
index 000000000..b84f61f10
--- /dev/null
+++ b/docs/content/en/about/what-is-hugo.md
@@ -0,0 +1,63 @@
+---
+title: What is Hugo
+linktitle: What is Hugo
+description: Hugo is a fast and modern static site generator written in Go, and designed to make website creation fun again.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+layout: single
+menu:
+ docs:
+ parent: "about"
+ weight: 10
+weight: 10
+sections_weight: 10
+draft: false
+aliases: [/overview/introduction/,/about/why-i-built-hugo/]
+toc: true
+---
+
+Hugo is a general-purpose website framework. Technically speaking, Hugo is a [static site generator][]. Unlike systems that dynamically build a page with each visitor request, Hugo builds pages when you create or update your content. Since websites are viewed far more often than they are edited, Hugo is designed to provide an optimal viewing experience for your website's end users and an ideal writing experience for website authors.
+
+Websites built with Hugo are extremely fast and secure. Hugo sites can be hosted anywhere, including [Netlify][], [Heroku][], [GoDaddy][], [DreamHost][], [GitHub Pages][], [GitLab Pages][], [Surge][], [Aerobatic][], [Firebase][], [Google Cloud Storage][], [Amazon S3][], [Rackspace][], [Azure][], and [CloudFront][] and work well with CDNs. Hugo sites run without the need for a database or dependencies on expensive runtimes like Ruby, Python, or PHP.
+
+We think of Hugo as the ideal website creation tool with nearly instant build times, able to rebuild whenever a change is made.
+
+## How Fast is Hugo?
+
+{{< youtube "CdiDYZ51a2o" >}}
+
+## What Does Hugo Do?
+
+In technical terms, Hugo takes a source directory of files and templates and uses these as input to create a complete website.
+
+## Who Should Use Hugo?
+
+Hugo is for people that prefer writing in a text editor over a browser.
+
+Hugo is for people who want to hand code their own website without worrying about setting up complicated runtimes, dependencies and databases.
+
+Hugo is for people building a blog, a company site, a portfolio site, documentation, a single landing page, or a website with thousands of pages.
+
+[@spf13]: https://twitter.com/spf13
+[Aerobatic]: https://www.aerobatic.com/
+[Amazon S3]: https://aws.amazon.com/s3/
+[Azure]: https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-static-website
+[CloudFront]: https://aws.amazon.com/cloudfront/ "Amazon CloudFront"
+[DreamHost]: https://www.dreamhost.com/
+[Firebase]: https://firebase.google.com/docs/hosting/ "Firebase static hosting"
+[GitHub Pages]: https://pages.github.com/
+[GitLab Pages]: https://about.gitlab.com/features/pages/
+[Go language]: https://golang.org/
+[GoDaddy]: https://www.godaddy.com/ "GoDaddy.com Hosting"
+[Google Cloud Storage]: https://cloud.google.com/storage/
+[Heroku]: https://www.heroku.com/
+[Jekyll]: https://jekyllrb.com/
+[Middleman]: https://middlemanapp.com/
+[Nanoc]: https://nanoc.ws/
+[Netlify]: https://netlify.com
+[Rackspace]: https://www.rackspace.com/cloud/files
+[Surge]: https://surge.sh
+[contributing to it]: https://github.com/gohugoio/hugo
+[rackspace]: https://www.rackspace.com/openstack/public/files
+[static site generator]: /about/benefits/
diff --git a/docs/content/en/commands/hugo.md b/docs/content/en/commands/hugo.md
new file mode 100644
index 000000000..00d60be04
--- /dev/null
+++ b/docs/content/en/commands/hugo.md
@@ -0,0 +1,84 @@
+---
+title: "hugo"
+slug: hugo
+url: /commands/hugo/
+---
+## hugo
+
+hugo builds your site
+
+### Synopsis
+
+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 http://gohugo.io/.
+
+```
+hugo [flags]
+```
+
+### Options
+
+```
+ -b, --baseURL string hostname (and path) to the root, e.g. http://spf13.com/
+ -D, --buildDrafts include content marked as draft
+ -E, --buildExpired include expired content
+ -F, --buildFuture include content with publishdate in the future
+ --cacheDir string filesystem path to cache directory. Defaults: $TMPDIR/hugo_cache/
+ --cleanDestinationDir remove files from destination not found in static directories
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ -c, --contentDir string filesystem path to content directory
+ --debug debug output
+ -d, --destination string filesystem path to write files to
+ --disableKinds strings disable different kind of pages (home, RSS etc.)
+ --enableGitInfo add Git revision, date and author info to the pages
+ -e, --environment string build environment
+ --forceSyncStatic copy all files when static is changed.
+ --gc enable to run some cleanup tasks (remove unused cache files) after the build
+ -h, --help help for hugo
+ --i18n-warnings print missing translations
+ --ignoreCache ignores the cache directory
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ -l, --layoutDir string filesystem path to layout directory
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --minify minify any supported output format (HTML, XML etc.)
+ --noChmod don't sync permission mode of files
+ --noTimes don't sync modification time of files
+ --path-warnings print warnings on duplicate target paths etc.
+ --poll string set this to a poll interval, e.g --poll 700ms, to use a poll based approach to watch for file system changes
+ --print-mem print memory usage to screen at intervals
+ --quiet build in quiet mode
+ --renderToMemory render to memory (only useful for benchmark testing)
+ -s, --source string filesystem path to read files relative from
+ --templateMetrics display metrics about template executions
+ --templateMetricsHints calculate some improvement hints when combined with --templateMetrics
+ -t, --theme strings themes to use (located in /themes/THEMENAME/)
+ --themesDir string filesystem path to themes directory
+ --trace file write trace to file (not useful in general)
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+ -w, --watch watch filesystem for changes and recreate as needed
+```
+
+### SEE ALSO
+
+* [hugo check](/commands/hugo_check/) - Contains some verification checks
+* [hugo completion](/commands/hugo_completion/) - generate the autocompletion script for the specified shell
+* [hugo config](/commands/hugo_config/) - Print the site configuration
+* [hugo convert](/commands/hugo_convert/) - Convert your content to different formats
+* [hugo deploy](/commands/hugo_deploy/) - Deploy your site to a Cloud provider.
+* [hugo env](/commands/hugo_env/) - Print Hugo version and environment info
+* [hugo gen](/commands/hugo_gen/) - A collection of several useful generators.
+* [hugo import](/commands/hugo_import/) - Import your site from others.
+* [hugo list](/commands/hugo_list/) - Listing out various types of content
+* [hugo mod](/commands/hugo_mod/) - Various Hugo Modules helpers.
+* [hugo new](/commands/hugo_new/) - Create new content for your site
+* [hugo server](/commands/hugo_server/) - A high performance webserver
+* [hugo version](/commands/hugo_version/) - Print the version number of Hugo
+
diff --git a/docs/content/en/commands/hugo_check.md b/docs/content/en/commands/hugo_check.md
new file mode 100644
index 000000000..1c9bb0c9d
--- /dev/null
+++ b/docs/content/en/commands/hugo_check.md
@@ -0,0 +1,38 @@
+---
+title: "hugo check"
+slug: hugo_check
+url: /commands/hugo_check/
+---
+## hugo check
+
+Contains some verification checks
+
+### Options
+
+```
+ -h, --help help for check
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo](/commands/hugo/) - hugo builds your site
+* [hugo check ulimit](/commands/hugo_check_ulimit/) - Check system ulimit settings
+
diff --git a/docs/content/en/commands/hugo_check_ulimit.md b/docs/content/en/commands/hugo_check_ulimit.md
new file mode 100644
index 000000000..a27bd6837
--- /dev/null
+++ b/docs/content/en/commands/hugo_check_ulimit.md
@@ -0,0 +1,46 @@
+---
+title: "hugo check ulimit"
+slug: hugo_check_ulimit
+url: /commands/hugo_check_ulimit/
+---
+## hugo check ulimit
+
+Check system ulimit settings
+
+### Synopsis
+
+Hugo will inspect the current ulimit settings on the system.
+This is primarily to ensure that Hugo can watch enough files on some OSs
+
+```
+hugo check ulimit [flags]
+```
+
+### Options
+
+```
+ -h, --help help for ulimit
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo check](/commands/hugo_check/) - Contains some verification checks
+
diff --git a/docs/content/en/commands/hugo_completion.md b/docs/content/en/commands/hugo_completion.md
new file mode 100644
index 000000000..fdcb008b8
--- /dev/null
+++ b/docs/content/en/commands/hugo_completion.md
@@ -0,0 +1,48 @@
+---
+title: "hugo completion"
+slug: hugo_completion
+url: /commands/hugo_completion/
+---
+## hugo completion
+
+generate the autocompletion script for the specified shell
+
+### Synopsis
+
+
+Generate the autocompletion script for hugo for the specified shell.
+See each sub-command's help for details on how to use the generated script.
+
+
+### Options
+
+```
+ -h, --help help for completion
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo](/commands/hugo/) - hugo builds your site
+* [hugo completion bash](/commands/hugo_completion_bash/) - generate the autocompletion script for bash
+* [hugo completion fish](/commands/hugo_completion_fish/) - generate the autocompletion script for fish
+* [hugo completion powershell](/commands/hugo_completion_powershell/) - generate the autocompletion script for powershell
+* [hugo completion zsh](/commands/hugo_completion_zsh/) - generate the autocompletion script for zsh
+
diff --git a/docs/content/en/commands/hugo_completion_bash.md b/docs/content/en/commands/hugo_completion_bash.md
new file mode 100644
index 000000000..5ff7c0ad6
--- /dev/null
+++ b/docs/content/en/commands/hugo_completion_bash.md
@@ -0,0 +1,62 @@
+---
+title: "hugo completion bash"
+slug: hugo_completion_bash
+url: /commands/hugo_completion_bash/
+---
+## hugo completion bash
+
+generate the autocompletion script for bash
+
+### Synopsis
+
+
+Generate the autocompletion script for the bash shell.
+
+This script depends on the 'bash-completion' package.
+If it is not installed already, you can install it via your OS's package manager.
+
+To load completions in your current shell session:
+$ source <(hugo completion bash)
+
+To load completions for every new session, execute once:
+Linux:
+ $ hugo completion bash > /etc/bash_completion.d/hugo
+MacOS:
+ $ hugo completion bash > /usr/local/etc/bash_completion.d/hugo
+
+You will need to start a new shell for this setup to take effect.
+
+
+```
+hugo completion bash
+```
+
+### Options
+
+```
+ -h, --help help for bash
+ --no-descriptions disable completion descriptions
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo completion](/commands/hugo_completion/) - generate the autocompletion script for the specified shell
+
diff --git a/docs/content/en/commands/hugo_completion_fish.md b/docs/content/en/commands/hugo_completion_fish.md
new file mode 100644
index 000000000..aab77bfa0
--- /dev/null
+++ b/docs/content/en/commands/hugo_completion_fish.md
@@ -0,0 +1,56 @@
+---
+title: "hugo completion fish"
+slug: hugo_completion_fish
+url: /commands/hugo_completion_fish/
+---
+## hugo completion fish
+
+generate the autocompletion script for fish
+
+### Synopsis
+
+
+Generate the autocompletion script for the fish shell.
+
+To load completions in your current shell session:
+$ hugo completion fish | source
+
+To load completions for every new session, execute once:
+$ hugo completion fish > ~/.config/fish/completions/hugo.fish
+
+You will need to start a new shell for this setup to take effect.
+
+
+```
+hugo completion fish [flags]
+```
+
+### Options
+
+```
+ -h, --help help for fish
+ --no-descriptions disable completion descriptions
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo completion](/commands/hugo_completion/) - generate the autocompletion script for the specified shell
+
diff --git a/docs/content/en/commands/hugo_completion_powershell.md b/docs/content/en/commands/hugo_completion_powershell.md
new file mode 100644
index 000000000..dc8aadc37
--- /dev/null
+++ b/docs/content/en/commands/hugo_completion_powershell.md
@@ -0,0 +1,54 @@
+---
+title: "hugo completion powershell"
+slug: hugo_completion_powershell
+url: /commands/hugo_completion_powershell/
+---
+## hugo completion powershell
+
+generate the autocompletion script for powershell
+
+### Synopsis
+
+
+Generate the autocompletion script for powershell.
+
+To load completions in your current shell session:
+PS C:\> hugo completion powershell | Out-String | Invoke-Expression
+
+To load completions for every new session, add the output of the above command
+to your powershell profile.
+
+
+```
+hugo completion powershell [flags]
+```
+
+### Options
+
+```
+ -h, --help help for powershell
+ --no-descriptions disable completion descriptions
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo completion](/commands/hugo_completion/) - generate the autocompletion script for the specified shell
+
diff --git a/docs/content/en/commands/hugo_completion_zsh.md b/docs/content/en/commands/hugo_completion_zsh.md
new file mode 100644
index 000000000..b3062b7a1
--- /dev/null
+++ b/docs/content/en/commands/hugo_completion_zsh.md
@@ -0,0 +1,61 @@
+---
+title: "hugo completion zsh"
+slug: hugo_completion_zsh
+url: /commands/hugo_completion_zsh/
+---
+## hugo completion zsh
+
+generate the autocompletion script for zsh
+
+### Synopsis
+
+
+Generate the autocompletion script for the zsh shell.
+
+If shell completion is not already enabled in your environment you will need
+to enable it. You can execute the following once:
+
+$ echo "autoload -U compinit; compinit" >> ~/.zshrc
+
+To load completions for every new session, execute once:
+# Linux:
+$ hugo completion zsh > "${fpath[1]}/_hugo"
+# macOS:
+$ hugo completion zsh > /usr/local/share/zsh/site-functions/_hugo
+
+You will need to start a new shell for this setup to take effect.
+
+
+```
+hugo completion zsh [flags]
+```
+
+### Options
+
+```
+ -h, --help help for zsh
+ --no-descriptions disable completion descriptions
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo completion](/commands/hugo_completion/) - generate the autocompletion script for the specified shell
+
diff --git a/docs/content/en/commands/hugo_config.md b/docs/content/en/commands/hugo_config.md
new file mode 100644
index 000000000..e305e68d0
--- /dev/null
+++ b/docs/content/en/commands/hugo_config.md
@@ -0,0 +1,46 @@
+---
+title: "hugo config"
+slug: hugo_config
+url: /commands/hugo_config/
+---
+## hugo config
+
+Print the site configuration
+
+### Synopsis
+
+Print the site configuration, both default and custom settings.
+
+```
+hugo config [flags]
+```
+
+### Options
+
+```
+ -h, --help help for config
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo](/commands/hugo/) - hugo builds your site
+* [hugo config mounts](/commands/hugo_config_mounts/) - Print the configured file mounts
+
diff --git a/docs/content/en/commands/hugo_config_mounts.md b/docs/content/en/commands/hugo_config_mounts.md
new file mode 100644
index 000000000..f12ec8dfa
--- /dev/null
+++ b/docs/content/en/commands/hugo_config_mounts.md
@@ -0,0 +1,41 @@
+---
+title: "hugo config mounts"
+slug: hugo_config_mounts
+url: /commands/hugo_config_mounts/
+---
+## hugo config mounts
+
+Print the configured file mounts
+
+```
+hugo config mounts [flags]
+```
+
+### Options
+
+```
+ -h, --help help for mounts
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo config](/commands/hugo_config/) - Print the site configuration
+
diff --git a/docs/content/en/commands/hugo_convert.md b/docs/content/en/commands/hugo_convert.md
new file mode 100644
index 000000000..df67d3c1d
--- /dev/null
+++ b/docs/content/en/commands/hugo_convert.md
@@ -0,0 +1,48 @@
+---
+title: "hugo convert"
+slug: hugo_convert
+url: /commands/hugo_convert/
+---
+## hugo convert
+
+Convert your content to different formats
+
+### Synopsis
+
+Convert your content (e.g. front matter) to different formats.
+
+See convert's subcommands toJSON, toTOML and toYAML for more information.
+
+### Options
+
+```
+ -h, --help help for convert
+ -o, --output string filesystem path to write files to
+ --unsafe enable less safe operations, please backup first
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo](/commands/hugo/) - hugo builds your site
+* [hugo convert toJSON](/commands/hugo_convert_tojson/) - Convert front matter to JSON
+* [hugo convert toTOML](/commands/hugo_convert_totoml/) - Convert front matter to TOML
+* [hugo convert toYAML](/commands/hugo_convert_toyaml/) - Convert front matter to YAML
+
diff --git a/docs/content/en/commands/hugo_convert_toJSON.md b/docs/content/en/commands/hugo_convert_toJSON.md
new file mode 100644
index 000000000..a6840bbfd
--- /dev/null
+++ b/docs/content/en/commands/hugo_convert_toJSON.md
@@ -0,0 +1,48 @@
+---
+title: "hugo convert toJSON"
+slug: hugo_convert_toJSON
+url: /commands/hugo_convert_tojson/
+---
+## hugo convert toJSON
+
+Convert front matter to JSON
+
+### Synopsis
+
+toJSON converts all front matter in the content directory
+to use JSON for the front matter.
+
+```
+hugo convert toJSON [flags]
+```
+
+### Options
+
+```
+ -h, --help help for toJSON
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ -o, --output string filesystem path to write files to
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ --unsafe enable less safe operations, please backup first
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo convert](/commands/hugo_convert/) - Convert your content to different formats
+
diff --git a/docs/content/en/commands/hugo_convert_toTOML.md b/docs/content/en/commands/hugo_convert_toTOML.md
new file mode 100644
index 000000000..522af07b3
--- /dev/null
+++ b/docs/content/en/commands/hugo_convert_toTOML.md
@@ -0,0 +1,48 @@
+---
+title: "hugo convert toTOML"
+slug: hugo_convert_toTOML
+url: /commands/hugo_convert_totoml/
+---
+## hugo convert toTOML
+
+Convert front matter to TOML
+
+### Synopsis
+
+toTOML converts all front matter in the content directory
+to use TOML for the front matter.
+
+```
+hugo convert toTOML [flags]
+```
+
+### Options
+
+```
+ -h, --help help for toTOML
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ -o, --output string filesystem path to write files to
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ --unsafe enable less safe operations, please backup first
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo convert](/commands/hugo_convert/) - Convert your content to different formats
+
diff --git a/docs/content/en/commands/hugo_convert_toYAML.md b/docs/content/en/commands/hugo_convert_toYAML.md
new file mode 100644
index 000000000..656556d30
--- /dev/null
+++ b/docs/content/en/commands/hugo_convert_toYAML.md
@@ -0,0 +1,48 @@
+---
+title: "hugo convert toYAML"
+slug: hugo_convert_toYAML
+url: /commands/hugo_convert_toyaml/
+---
+## hugo convert toYAML
+
+Convert front matter to YAML
+
+### Synopsis
+
+toYAML converts all front matter in the content directory
+to use YAML for the front matter.
+
+```
+hugo convert toYAML [flags]
+```
+
+### Options
+
+```
+ -h, --help help for toYAML
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ -o, --output string filesystem path to write files to
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ --unsafe enable less safe operations, please backup first
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo convert](/commands/hugo_convert/) - Convert your content to different formats
+
diff --git a/docs/content/en/commands/hugo_deploy.md b/docs/content/en/commands/hugo_deploy.md
new file mode 100644
index 000000000..41ae5d457
--- /dev/null
+++ b/docs/content/en/commands/hugo_deploy.md
@@ -0,0 +1,55 @@
+---
+title: "hugo deploy"
+slug: hugo_deploy
+url: /commands/hugo_deploy/
+---
+## hugo deploy
+
+Deploy your site to a Cloud provider.
+
+### Synopsis
+
+Deploy your site to a Cloud provider.
+
+See https://gohugo.io/hosting-and-deployment/hugo-deploy/ for detailed
+documentation.
+
+
+```
+hugo deploy [flags]
+```
+
+### Options
+
+```
+ --confirm ask for confirmation before making changes to the target
+ --dryRun dry run
+ --force force upload of all files
+ -h, --help help for deploy
+ --invalidateCDN invalidate the CDN cache listed in the deployment target (default true)
+ --maxDeletes int maximum # of files to delete, or -1 to disable (default 256)
+ --target string target deployment from deployments section in config file; defaults to the first one
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo](/commands/hugo/) - hugo builds your site
+
diff --git a/docs/content/en/commands/hugo_env.md b/docs/content/en/commands/hugo_env.md
new file mode 100644
index 000000000..c5919b248
--- /dev/null
+++ b/docs/content/en/commands/hugo_env.md
@@ -0,0 +1,48 @@
+---
+title: "hugo env"
+slug: hugo_env
+url: /commands/hugo_env/
+---
+## hugo env
+
+Print Hugo version and environment info
+
+### Synopsis
+
+Print Hugo version and environment info. This is useful in Hugo bug reports.
+
+If you add the -v flag, you will get a full dependency list.
+
+
+```
+hugo env [flags]
+```
+
+### Options
+
+```
+ -h, --help help for env
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo](/commands/hugo/) - hugo builds your site
+
diff --git a/docs/content/en/commands/hugo_gen.md b/docs/content/en/commands/hugo_gen.md
new file mode 100644
index 000000000..84ec7ecba
--- /dev/null
+++ b/docs/content/en/commands/hugo_gen.md
@@ -0,0 +1,41 @@
+---
+title: "hugo gen"
+slug: hugo_gen
+url: /commands/hugo_gen/
+---
+## hugo gen
+
+A collection of several useful generators.
+
+### Options
+
+```
+ -h, --help help for gen
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo](/commands/hugo/) - hugo builds your site
+* [hugo gen autocomplete](/commands/hugo_gen_autocomplete/) - Generate shell autocompletion script for Hugo
+* [hugo gen chromastyles](/commands/hugo_gen_chromastyles/) - Generate CSS stylesheet for the Chroma code highlighter
+* [hugo gen doc](/commands/hugo_gen_doc/) - Generate Markdown documentation for the Hugo CLI.
+* [hugo gen man](/commands/hugo_gen_man/) - Generate man pages for the Hugo CLI
+
diff --git a/docs/content/en/commands/hugo_gen_autocomplete.md b/docs/content/en/commands/hugo_gen_autocomplete.md
new file mode 100644
index 000000000..7d2d4fd68
--- /dev/null
+++ b/docs/content/en/commands/hugo_gen_autocomplete.md
@@ -0,0 +1,59 @@
+---
+title: "hugo gen autocomplete"
+slug: hugo_gen_autocomplete
+url: /commands/hugo_gen_autocomplete/
+---
+## hugo gen autocomplete
+
+Generate shell autocompletion script for Hugo
+
+### Synopsis
+
+Generates a shell autocompletion script for Hugo.
+
+The script is written to the console (stdout).
+
+To write to file, add the `--completionfile=/path/to/file` flag.
+
+Add `--type={bash, zsh, fish or powershell}` flag to set alternative
+shell type.
+
+Logout and in again to reload the completion scripts,
+or just source them in directly:
+
+ $ . /etc/bash_completion or /path/to/file
+
+```
+hugo gen autocomplete [flags]
+```
+
+### Options
+
+```
+ -f, --completionfile string autocompletion file, defaults to stdout
+ -h, --help help for autocomplete
+ -t, --type string autocompletion type (bash, zsh, fish, or powershell) (default "bash")
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo gen](/commands/hugo_gen/) - A collection of several useful generators.
+
diff --git a/docs/content/en/commands/hugo_gen_chromastyles.md b/docs/content/en/commands/hugo_gen_chromastyles.md
new file mode 100644
index 000000000..2c24abca7
--- /dev/null
+++ b/docs/content/en/commands/hugo_gen_chromastyles.md
@@ -0,0 +1,50 @@
+---
+title: "hugo gen chromastyles"
+slug: hugo_gen_chromastyles
+url: /commands/hugo_gen_chromastyles/
+---
+## hugo gen chromastyles
+
+Generate CSS stylesheet for the Chroma code highlighter
+
+### Synopsis
+
+Generate CSS stylesheet for the Chroma code highlighter for a given style. This stylesheet is needed if markup.highlight.noClasses is disabled in config.
+
+See https://xyproto.github.io/splash/docs/all.html for a preview of the available styles
+
+```
+hugo gen chromastyles [flags]
+```
+
+### Options
+
+```
+ -h, --help help for chromastyles
+ --highlightStyle string style used for highlighting lines (see https://github.com/alecthomas/chroma) (default "bg:#ffffcc")
+ --linesStyle string style used for line numbers (see https://github.com/alecthomas/chroma)
+ --style string highlighter style (see https://xyproto.github.io/splash/docs/) (default "friendly")
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo gen](/commands/hugo_gen/) - A collection of several useful generators.
+
diff --git a/docs/content/en/commands/hugo_gen_doc.md b/docs/content/en/commands/hugo_gen_doc.md
new file mode 100644
index 000000000..8c17b594d
--- /dev/null
+++ b/docs/content/en/commands/hugo_gen_doc.md
@@ -0,0 +1,52 @@
+---
+title: "hugo gen doc"
+slug: hugo_gen_doc
+url: /commands/hugo_gen_doc/
+---
+## hugo gen doc
+
+Generate Markdown documentation for the Hugo CLI.
+
+### Synopsis
+
+Generate Markdown documentation for the Hugo CLI.
+
+This command is, mostly, used to create up-to-date documentation
+of Hugo's command-line interface for http://gohugo.io/.
+
+It creates one Markdown file per command with front matter suitable
+for rendering in Hugo.
+
+```
+hugo gen doc [flags]
+```
+
+### Options
+
+```
+ --dir string the directory to write the doc. (default "/tmp/hugodoc/")
+ -h, --help help for doc
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo gen](/commands/hugo_gen/) - A collection of several useful generators.
+
diff --git a/docs/content/en/commands/hugo_gen_man.md b/docs/content/en/commands/hugo_gen_man.md
new file mode 100644
index 000000000..9aef9ab8e
--- /dev/null
+++ b/docs/content/en/commands/hugo_gen_man.md
@@ -0,0 +1,48 @@
+---
+title: "hugo gen man"
+slug: hugo_gen_man
+url: /commands/hugo_gen_man/
+---
+## hugo gen man
+
+Generate man pages for the Hugo CLI
+
+### Synopsis
+
+This command automatically generates up-to-date man pages of Hugo's
+command-line interface. By default, it creates the man page files
+in the "man" directory under the current directory.
+
+```
+hugo gen man [flags]
+```
+
+### Options
+
+```
+ --dir string the directory to write the man pages. (default "man/")
+ -h, --help help for man
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo gen](/commands/hugo_gen/) - A collection of several useful generators.
+
diff --git a/docs/content/en/commands/hugo_import.md b/docs/content/en/commands/hugo_import.md
new file mode 100644
index 000000000..1170b3b16
--- /dev/null
+++ b/docs/content/en/commands/hugo_import.md
@@ -0,0 +1,44 @@
+---
+title: "hugo import"
+slug: hugo_import
+url: /commands/hugo_import/
+---
+## hugo import
+
+Import your site from others.
+
+### Synopsis
+
+Import your site from other web site generators like Jekyll.
+
+Import requires a subcommand, e.g. `hugo import jekyll jekyll_root_path target_path`.
+
+### Options
+
+```
+ -h, --help help for import
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo](/commands/hugo/) - hugo builds your site
+* [hugo import jekyll](/commands/hugo_import_jekyll/) - hugo import from Jekyll
+
diff --git a/docs/content/en/commands/hugo_import_jekyll.md b/docs/content/en/commands/hugo_import_jekyll.md
new file mode 100644
index 000000000..f1d811fe6
--- /dev/null
+++ b/docs/content/en/commands/hugo_import_jekyll.md
@@ -0,0 +1,48 @@
+---
+title: "hugo import jekyll"
+slug: hugo_import_jekyll
+url: /commands/hugo_import_jekyll/
+---
+## hugo import jekyll
+
+hugo import from Jekyll
+
+### Synopsis
+
+hugo import from Jekyll.
+
+Import from Jekyll requires two paths, e.g. `hugo import jekyll jekyll_root_path target_path`.
+
+```
+hugo import jekyll [flags]
+```
+
+### Options
+
+```
+ --force allow import into non-empty target directory
+ -h, --help help for jekyll
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo import](/commands/hugo_import/) - Import your site from others.
+
diff --git a/docs/content/en/commands/hugo_list.md b/docs/content/en/commands/hugo_list.md
new file mode 100644
index 000000000..7f70ccb0e
--- /dev/null
+++ b/docs/content/en/commands/hugo_list.md
@@ -0,0 +1,47 @@
+---
+title: "hugo list"
+slug: hugo_list
+url: /commands/hugo_list/
+---
+## hugo list
+
+Listing out various types of content
+
+### Synopsis
+
+Listing out various types of content.
+
+List requires a subcommand, e.g. `hugo list drafts`.
+
+### Options
+
+```
+ -h, --help help for list
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo](/commands/hugo/) - hugo builds your site
+* [hugo list all](/commands/hugo_list_all/) - List all posts
+* [hugo list drafts](/commands/hugo_list_drafts/) - List all drafts
+* [hugo list expired](/commands/hugo_list_expired/) - List all posts already expired
+* [hugo list future](/commands/hugo_list_future/) - List all posts dated in the future
+
diff --git a/docs/content/en/commands/hugo_list_all.md b/docs/content/en/commands/hugo_list_all.md
new file mode 100644
index 000000000..1a52f3f3e
--- /dev/null
+++ b/docs/content/en/commands/hugo_list_all.md
@@ -0,0 +1,45 @@
+---
+title: "hugo list all"
+slug: hugo_list_all
+url: /commands/hugo_list_all/
+---
+## hugo list all
+
+List all posts
+
+### Synopsis
+
+List all of the posts in your content directory, include drafts, future and expired pages.
+
+```
+hugo list all [flags]
+```
+
+### Options
+
+```
+ -h, --help help for all
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo list](/commands/hugo_list/) - Listing out various types of content
+
diff --git a/docs/content/en/commands/hugo_list_drafts.md b/docs/content/en/commands/hugo_list_drafts.md
new file mode 100644
index 000000000..0de7b0964
--- /dev/null
+++ b/docs/content/en/commands/hugo_list_drafts.md
@@ -0,0 +1,45 @@
+---
+title: "hugo list drafts"
+slug: hugo_list_drafts
+url: /commands/hugo_list_drafts/
+---
+## hugo list drafts
+
+List all drafts
+
+### Synopsis
+
+List all of the drafts in your content directory.
+
+```
+hugo list drafts [flags]
+```
+
+### Options
+
+```
+ -h, --help help for drafts
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo list](/commands/hugo_list/) - Listing out various types of content
+
diff --git a/docs/content/en/commands/hugo_list_expired.md b/docs/content/en/commands/hugo_list_expired.md
new file mode 100644
index 000000000..71e938da1
--- /dev/null
+++ b/docs/content/en/commands/hugo_list_expired.md
@@ -0,0 +1,45 @@
+---
+title: "hugo list expired"
+slug: hugo_list_expired
+url: /commands/hugo_list_expired/
+---
+## hugo list expired
+
+List all posts already expired
+
+### Synopsis
+
+List all of the posts in your content directory which has already expired.
+
+```
+hugo list expired [flags]
+```
+
+### Options
+
+```
+ -h, --help help for expired
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo list](/commands/hugo_list/) - Listing out various types of content
+
diff --git a/docs/content/en/commands/hugo_list_future.md b/docs/content/en/commands/hugo_list_future.md
new file mode 100644
index 000000000..b723ee005
--- /dev/null
+++ b/docs/content/en/commands/hugo_list_future.md
@@ -0,0 +1,45 @@
+---
+title: "hugo list future"
+slug: hugo_list_future
+url: /commands/hugo_list_future/
+---
+## hugo list future
+
+List all posts dated in the future
+
+### Synopsis
+
+List all of the posts in your content directory which will be posted in the future.
+
+```
+hugo list future [flags]
+```
+
+### Options
+
+```
+ -h, --help help for future
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo list](/commands/hugo_list/) - Listing out various types of content
+
diff --git a/docs/content/en/commands/hugo_mod.md b/docs/content/en/commands/hugo_mod.md
new file mode 100644
index 000000000..044cff1a2
--- /dev/null
+++ b/docs/content/en/commands/hugo_mod.md
@@ -0,0 +1,86 @@
+---
+title: "hugo mod"
+slug: hugo_mod
+url: /commands/hugo_mod/
+---
+## hugo mod
+
+Various Hugo Modules helpers.
+
+### Synopsis
+
+Various helpers to help manage the modules in your project's dependency graph.
+
+Most operations here requires a Go version installed on your system (>= Go 1.12) and the relevant VCS client (typically Git).
+This is not needed if you only operate on modules inside /themes or if you have vendored them via "hugo mod vendor".
+
+
+Note that Hugo will always start out by resolving the components defined in the site
+configuration, provided by a _vendor directory (if no --ignoreVendor flag provided),
+Go Modules, or a folder inside the themes directory, in that order.
+
+See https://gohugo.io/hugo-modules/ for more information.
+
+
+
+### Options
+
+```
+ -b, --baseURL string hostname (and path) to the root, e.g. http://spf13.com/
+ -D, --buildDrafts include content marked as draft
+ -E, --buildExpired include expired content
+ -F, --buildFuture include content with publishdate in the future
+ --cacheDir string filesystem path to cache directory. Defaults: $TMPDIR/hugo_cache/
+ --cleanDestinationDir remove files from destination not found in static directories
+ -c, --contentDir string filesystem path to content directory
+ -d, --destination string filesystem path to write files to
+ --disableKinds strings disable different kind of pages (home, RSS etc.)
+ --enableGitInfo add Git revision, date and author info to the pages
+ --forceSyncStatic copy all files when static is changed.
+ --gc enable to run some cleanup tasks (remove unused cache files) after the build
+ -h, --help help for mod
+ --i18n-warnings print missing translations
+ --ignoreCache ignores the cache directory
+ -l, --layoutDir string filesystem path to layout directory
+ --minify minify any supported output format (HTML, XML etc.)
+ --noChmod don't sync permission mode of files
+ --noTimes don't sync modification time of files
+ --path-warnings print warnings on duplicate target paths etc.
+ --poll string set this to a poll interval, e.g --poll 700ms, to use a poll based approach to watch for file system changes
+ --print-mem print memory usage to screen at intervals
+ --templateMetrics display metrics about template executions
+ --templateMetricsHints calculate some improvement hints when combined with --templateMetrics
+ -t, --theme strings themes to use (located in /themes/THEMENAME/)
+ --trace file write trace to file (not useful in general)
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo](/commands/hugo/) - hugo builds your site
+* [hugo mod clean](/commands/hugo_mod_clean/) - Delete the Hugo Module cache for the current project.
+* [hugo mod get](/commands/hugo_mod_get/) - Resolves dependencies in your current Hugo Project.
+* [hugo mod graph](/commands/hugo_mod_graph/) - Print a module dependency graph.
+* [hugo mod init](/commands/hugo_mod_init/) - Initialize this project as a Hugo Module.
+* [hugo mod npm](/commands/hugo_mod_npm/) - Various npm helpers.
+* [hugo mod tidy](/commands/hugo_mod_tidy/) - Remove unused entries in go.mod and go.sum.
+* [hugo mod vendor](/commands/hugo_mod_vendor/) - Vendor all module dependencies into the _vendor directory.
+* [hugo mod verify](/commands/hugo_mod_verify/) - Verify dependencies.
+
diff --git a/docs/content/en/commands/hugo_mod_clean.md b/docs/content/en/commands/hugo_mod_clean.md
new file mode 100644
index 000000000..81caa6c91
--- /dev/null
+++ b/docs/content/en/commands/hugo_mod_clean.md
@@ -0,0 +1,53 @@
+---
+title: "hugo mod clean"
+slug: hugo_mod_clean
+url: /commands/hugo_mod_clean/
+---
+## hugo mod clean
+
+Delete the Hugo Module cache for the current project.
+
+### Synopsis
+
+Delete the Hugo Module cache for the current project.
+
+Note that after you run this command, all of your dependencies will be re-downloaded next time you run "hugo".
+
+Also note that if you configure a positive maxAge for the "modules" file cache, it will also be cleaned as part of "hugo --gc".
+
+
+
+```
+hugo mod clean [flags]
+```
+
+### Options
+
+```
+ --all clean entire module cache
+ -h, --help help for clean
+ --pattern string pattern matching module paths to clean (all if not set), e.g. "**hugo*"
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo mod](/commands/hugo_mod/) - Various Hugo Modules helpers.
+
diff --git a/docs/content/en/commands/hugo_mod_get.md b/docs/content/en/commands/hugo_mod_get.md
new file mode 100644
index 000000000..f2f9cff0c
--- /dev/null
+++ b/docs/content/en/commands/hugo_mod_get.md
@@ -0,0 +1,71 @@
+---
+title: "hugo mod get"
+slug: hugo_mod_get
+url: /commands/hugo_mod_get/
+---
+## hugo mod get
+
+Resolves dependencies in your current Hugo Project.
+
+### Synopsis
+
+
+Resolves dependencies in your current Hugo Project.
+
+Some examples:
+
+Install the latest version possible for a given module:
+
+ hugo mod get github.com/gohugoio/testshortcodes
+
+Install a specific version:
+
+ hugo mod get github.com/gohugoio/testshortcodes@v0.3.0
+
+Install the latest versions of all module dependencies:
+
+ hugo mod get -u
+ hugo mod get -u ./... (recursive)
+
+Run "go help get" for more information. All flags available for "go get" is also relevant here.
+
+Note that Hugo will always start out by resolving the components defined in the site
+configuration, provided by a _vendor directory (if no --ignoreVendor flag provided),
+Go Modules, or a folder inside the themes directory, in that order.
+
+See https://gohugo.io/hugo-modules/ for more information.
+
+
+
+```
+hugo mod get [flags]
+```
+
+### Options
+
+```
+ -h, --help help for get
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo mod](/commands/hugo_mod/) - Various Hugo Modules helpers.
+
diff --git a/docs/content/en/commands/hugo_mod_graph.md b/docs/content/en/commands/hugo_mod_graph.md
new file mode 100644
index 000000000..af8b01faf
--- /dev/null
+++ b/docs/content/en/commands/hugo_mod_graph.md
@@ -0,0 +1,47 @@
+---
+title: "hugo mod graph"
+slug: hugo_mod_graph
+url: /commands/hugo_mod_graph/
+---
+## hugo mod graph
+
+Print a module dependency graph.
+
+### Synopsis
+
+Print a module dependency graph with information about module status (disabled, vendored).
+Note that for vendored modules, that is the version listed and not the one from go.mod.
+
+
+```
+hugo mod graph [flags]
+```
+
+### Options
+
+```
+ -h, --help help for graph
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo mod](/commands/hugo_mod/) - Various Hugo Modules helpers.
+
diff --git a/docs/content/en/commands/hugo_mod_init.md b/docs/content/en/commands/hugo_mod_init.md
new file mode 100644
index 000000000..a7a569d30
--- /dev/null
+++ b/docs/content/en/commands/hugo_mod_init.md
@@ -0,0 +1,52 @@
+---
+title: "hugo mod init"
+slug: hugo_mod_init
+url: /commands/hugo_mod_init/
+---
+## hugo mod init
+
+Initialize this project as a Hugo Module.
+
+### Synopsis
+
+Initialize this project as a Hugo Module.
+It will try to guess the module path, but you may help by passing it as an argument, e.g:
+
+ hugo mod init github.com/gohugoio/testshortcodes
+
+Note that Hugo Modules supports multi-module projects, so you can initialize a Hugo Module
+inside a subfolder on GitHub, as one example.
+
+
+```
+hugo mod init [flags]
+```
+
+### Options
+
+```
+ -h, --help help for init
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo mod](/commands/hugo_mod/) - Various Hugo Modules helpers.
+
diff --git a/docs/content/en/commands/hugo_mod_npm.md b/docs/content/en/commands/hugo_mod_npm.md
new file mode 100644
index 000000000..5d0008705
--- /dev/null
+++ b/docs/content/en/commands/hugo_mod_npm.md
@@ -0,0 +1,46 @@
+---
+title: "hugo mod npm"
+slug: hugo_mod_npm
+url: /commands/hugo_mod_npm/
+---
+## hugo mod npm
+
+Various npm helpers.
+
+### Synopsis
+
+Various npm (Node package manager) helpers.
+
+```
+hugo mod npm [flags]
+```
+
+### Options
+
+```
+ -h, --help help for npm
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo mod](/commands/hugo_mod/) - Various Hugo Modules helpers.
+* [hugo mod npm pack](/commands/hugo_mod_npm_pack/) - Experimental: Prepares and writes a composite package.json file for your project.
+
diff --git a/docs/content/en/commands/hugo_mod_npm_pack.md b/docs/content/en/commands/hugo_mod_npm_pack.md
new file mode 100644
index 000000000..809c3a5bf
--- /dev/null
+++ b/docs/content/en/commands/hugo_mod_npm_pack.md
@@ -0,0 +1,55 @@
+---
+title: "hugo mod npm pack"
+slug: hugo_mod_npm_pack
+url: /commands/hugo_mod_npm_pack/
+---
+## hugo mod npm pack
+
+Experimental: Prepares and writes a composite package.json file for your project.
+
+### Synopsis
+
+Prepares and writes a composite package.json file for your project.
+
+On first run it creates a "package.hugo.json" in the project root if not already there. This file will be used as a template file
+with the base dependency set.
+
+This set will be merged with all "package.hugo.json" files found in the dependency tree, picking the version closest to the project.
+
+This command is marked as 'Experimental'. We think it's a great idea, so it's not likely to be
+removed from Hugo, but we need to test this out in "real life" to get a feel of it,
+so this may/will change in future versions of Hugo.
+
+
+```
+hugo mod npm pack [flags]
+```
+
+### Options
+
+```
+ -h, --help help for pack
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo mod npm](/commands/hugo_mod_npm/) - Various npm helpers.
+
diff --git a/docs/content/en/commands/hugo_mod_tidy.md b/docs/content/en/commands/hugo_mod_tidy.md
new file mode 100644
index 000000000..925def7cb
--- /dev/null
+++ b/docs/content/en/commands/hugo_mod_tidy.md
@@ -0,0 +1,41 @@
+---
+title: "hugo mod tidy"
+slug: hugo_mod_tidy
+url: /commands/hugo_mod_tidy/
+---
+## hugo mod tidy
+
+Remove unused entries in go.mod and go.sum.
+
+```
+hugo mod tidy [flags]
+```
+
+### Options
+
+```
+ -h, --help help for tidy
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo mod](/commands/hugo_mod/) - Various Hugo Modules helpers.
+
diff --git a/docs/content/en/commands/hugo_mod_vendor.md b/docs/content/en/commands/hugo_mod_vendor.md
new file mode 100644
index 000000000..2d18951f3
--- /dev/null
+++ b/docs/content/en/commands/hugo_mod_vendor.md
@@ -0,0 +1,48 @@
+---
+title: "hugo mod vendor"
+slug: hugo_mod_vendor
+url: /commands/hugo_mod_vendor/
+---
+## hugo mod vendor
+
+Vendor all module dependencies into the _vendor directory.
+
+### Synopsis
+
+Vendor all module dependencies into the _vendor directory.
+
+If a module is vendored, that is where Hugo will look for it's dependencies.
+
+
+```
+hugo mod vendor [flags]
+```
+
+### Options
+
+```
+ -h, --help help for vendor
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo mod](/commands/hugo_mod/) - Various Hugo Modules helpers.
+
diff --git a/docs/content/en/commands/hugo_mod_verify.md b/docs/content/en/commands/hugo_mod_verify.md
new file mode 100644
index 000000000..cd9b1cbf1
--- /dev/null
+++ b/docs/content/en/commands/hugo_mod_verify.md
@@ -0,0 +1,47 @@
+---
+title: "hugo mod verify"
+slug: hugo_mod_verify
+url: /commands/hugo_mod_verify/
+---
+## hugo mod verify
+
+Verify dependencies.
+
+### Synopsis
+
+Verify checks that the dependencies of the current module, which are stored in a local downloaded source cache, have not been modified since being downloaded.
+
+
+```
+hugo mod verify [flags]
+```
+
+### Options
+
+```
+ --clean delete module cache for dependencies that fail verification
+ -h, --help help for verify
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo mod](/commands/hugo_mod/) - Various Hugo Modules helpers.
+
diff --git a/docs/content/en/commands/hugo_new.md b/docs/content/en/commands/hugo_new.md
new file mode 100644
index 000000000..4c49d11c7
--- /dev/null
+++ b/docs/content/en/commands/hugo_new.md
@@ -0,0 +1,81 @@
+---
+title: "hugo new"
+slug: hugo_new
+url: /commands/hugo_new/
+---
+## hugo new
+
+Create new content for your site
+
+### Synopsis
+
+Create a new content file and automatically set the date and title.
+It will guess which kind of file to create based on the path provided.
+
+You can also specify the kind with `-k KIND`.
+
+If archetypes are provided in your theme or site, they will be used.
+
+Ensure you run this within the root directory of your site.
+
+```
+hugo new [path] [flags]
+```
+
+### Options
+
+```
+ -b, --baseURL string hostname (and path) to the root, e.g. http://spf13.com/
+ -D, --buildDrafts include content marked as draft
+ -E, --buildExpired include expired content
+ -F, --buildFuture include content with publishdate in the future
+ --cacheDir string filesystem path to cache directory. Defaults: $TMPDIR/hugo_cache/
+ --cleanDestinationDir remove files from destination not found in static directories
+ -c, --contentDir string filesystem path to content directory
+ -d, --destination string filesystem path to write files to
+ --disableKinds strings disable different kind of pages (home, RSS etc.)
+ --editor string edit new content with this editor, if provided
+ --enableGitInfo add Git revision, date and author info to the pages
+ --forceSyncStatic copy all files when static is changed.
+ --gc enable to run some cleanup tasks (remove unused cache files) after the build
+ -h, --help help for new
+ --i18n-warnings print missing translations
+ --ignoreCache ignores the cache directory
+ -k, --kind string content type to create
+ -l, --layoutDir string filesystem path to layout directory
+ --minify minify any supported output format (HTML, XML etc.)
+ --noChmod don't sync permission mode of files
+ --noTimes don't sync modification time of files
+ --path-warnings print warnings on duplicate target paths etc.
+ --poll string set this to a poll interval, e.g --poll 700ms, to use a poll based approach to watch for file system changes
+ --print-mem print memory usage to screen at intervals
+ --templateMetrics display metrics about template executions
+ --templateMetricsHints calculate some improvement hints when combined with --templateMetrics
+ -t, --theme strings themes to use (located in /themes/THEMENAME/)
+ --trace file write trace to file (not useful in general)
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo](/commands/hugo/) - hugo builds your site
+* [hugo new site](/commands/hugo_new_site/) - Create a new site (skeleton)
+* [hugo new theme](/commands/hugo_new_theme/) - Create a new theme
+
diff --git a/docs/content/en/commands/hugo_new_site.md b/docs/content/en/commands/hugo_new_site.md
new file mode 100644
index 000000000..60e58b1bc
--- /dev/null
+++ b/docs/content/en/commands/hugo_new_site.md
@@ -0,0 +1,49 @@
+---
+title: "hugo new site"
+slug: hugo_new_site
+url: /commands/hugo_new_site/
+---
+## hugo new site
+
+Create a new site (skeleton)
+
+### Synopsis
+
+Create a new site in the provided directory.
+The new site will have the correct structure, but no content or theme yet.
+Use `hugo new [contentPath]` to create new content.
+
+```
+hugo new site [path] [flags]
+```
+
+### Options
+
+```
+ --force init inside non-empty directory
+ -f, --format string config & frontmatter format (default "toml")
+ -h, --help help for site
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo new](/commands/hugo_new/) - Create new content for your site
+
diff --git a/docs/content/en/commands/hugo_new_theme.md b/docs/content/en/commands/hugo_new_theme.md
new file mode 100644
index 000000000..3563f5b73
--- /dev/null
+++ b/docs/content/en/commands/hugo_new_theme.md
@@ -0,0 +1,48 @@
+---
+title: "hugo new theme"
+slug: hugo_new_theme
+url: /commands/hugo_new_theme/
+---
+## hugo new theme
+
+Create a new theme
+
+### Synopsis
+
+Create a new theme (skeleton) called [name] in ./themes.
+New theme is a skeleton. Please add content to the touched files. Add your
+name to the copyright line in the license and adjust the theme.toml file
+as you see fit.
+
+```
+hugo new theme [name] [flags]
+```
+
+### Options
+
+```
+ -h, --help help for theme
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo new](/commands/hugo_new/) - Create new content for your site
+
diff --git a/docs/content/en/commands/hugo_server.md b/docs/content/en/commands/hugo_server.md
new file mode 100644
index 000000000..d801054dc
--- /dev/null
+++ b/docs/content/en/commands/hugo_server.md
@@ -0,0 +1,94 @@
+---
+title: "hugo server"
+slug: hugo_server
+url: /commands/hugo_server/
+---
+## hugo server
+
+A high performance webserver
+
+### Synopsis
+
+Hugo provides its own webserver which builds and serves the site.
+While hugo server is high performance, it is a webserver with limited options.
+Many run it in production, but the standard behavior is for people to use it
+in development and use a more full featured server such as Nginx or Caddy.
+
+'hugo server' will avoid writing the rendered and served content to disk,
+preferring to store it in memory.
+
+By default hugo will also watch your files for any changes you make and
+automatically rebuild the site. It will then live reload any open browser pages
+and push the latest content to them. As most Hugo sites are built in a fraction
+of a second, you will be able to save and see your changes nearly instantly.
+
+```
+hugo server [flags]
+```
+
+### Options
+
+```
+ --appendPort append port to baseURL (default true)
+ -b, --baseURL string hostname (and path) to the root, e.g. http://spf13.com/
+ --bind string interface to which the server will bind (default "127.0.0.1")
+ -D, --buildDrafts include content marked as draft
+ -E, --buildExpired include expired content
+ -F, --buildFuture include content with publishdate in the future
+ --cacheDir string filesystem path to cache directory. Defaults: $TMPDIR/hugo_cache/
+ --cleanDestinationDir remove files from destination not found in static directories
+ -c, --contentDir string filesystem path to content directory
+ -d, --destination string filesystem path to write files to
+ --disableBrowserError do not show build errors in the browser
+ --disableFastRender enables full re-renders on changes
+ --disableKinds strings disable different kind of pages (home, RSS etc.)
+ --disableLiveReload watch without enabling live browser reload on rebuild
+ --enableGitInfo add Git revision, date and author info to the pages
+ --forceSyncStatic copy all files when static is changed.
+ --gc enable to run some cleanup tasks (remove unused cache files) after the build
+ -h, --help help for server
+ --i18n-warnings print missing translations
+ --ignoreCache ignores the cache directory
+ -l, --layoutDir string filesystem path to layout directory
+ --liveReloadPort int port for live reloading (i.e. 443 in HTTPS proxy situations) (default -1)
+ --meminterval string interval to poll memory usage (requires --memstats), valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". (default "100ms")
+ --memstats string log memory usage to this file
+ --minify minify any supported output format (HTML, XML etc.)
+ --navigateToChanged navigate to changed content file on live browser reload
+ --noChmod don't sync permission mode of files
+ --noHTTPCache prevent HTTP caching
+ --noTimes don't sync modification time of files
+ --path-warnings print warnings on duplicate target paths etc.
+ --poll string set this to a poll interval, e.g --poll 700ms, to use a poll based approach to watch for file system changes
+ -p, --port int port on which the server will listen (default 1313)
+ --print-mem print memory usage to screen at intervals
+ --renderToDisk render to Destination path (default is render to memory & serve from there)
+ --templateMetrics display metrics about template executions
+ --templateMetricsHints calculate some improvement hints when combined with --templateMetrics
+ -t, --theme strings themes to use (located in /themes/THEMENAME/)
+ --trace file write trace to file (not useful in general)
+ -w, --watch watch filesystem for changes and recreate as needed (default true)
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo](/commands/hugo/) - hugo builds your site
+
diff --git a/docs/content/en/commands/hugo_version.md b/docs/content/en/commands/hugo_version.md
new file mode 100644
index 000000000..f17671aed
--- /dev/null
+++ b/docs/content/en/commands/hugo_version.md
@@ -0,0 +1,45 @@
+---
+title: "hugo version"
+slug: hugo_version
+url: /commands/hugo_version/
+---
+## hugo version
+
+Print the version number of Hugo
+
+### Synopsis
+
+All software has versions. This is Hugo's.
+
+```
+hugo version [flags]
+```
+
+### Options
+
+```
+ -h, --help help for version
+```
+
+### Options inherited from parent commands
+
+```
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ --debug debug output
+ -e, --environment string build environment
+ --ignoreVendor ignores any _vendor directory
+ --ignoreVendorPaths string ignores any _vendor for module paths matching the given Glob pattern
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --quiet build in quiet mode
+ -s, --source string filesystem path to read files relative from
+ --themesDir string filesystem path to themes directory
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+```
+
+### SEE ALSO
+
+* [hugo](/commands/hugo/) - hugo builds your site
+
diff --git a/docs/content/en/content-management/_index.md b/docs/content/en/content-management/_index.md
new file mode 100644
index 000000000..28f2ecf82
--- /dev/null
+++ b/docs/content/en/content-management/_index.md
@@ -0,0 +1,20 @@
+---
+title: Content Management
+linktitle: Content Management Overview
+description: Hugo makes managing large static sites easy with support for archetypes, content types, menus, cross references, summaries, and more.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+menu:
+ docs:
+ parent: "content-management"
+ weight: 1
+keywords: [source, organization]
+categories: [content management]
+weight: 01 #rem
+draft: false
+aliases: [/content/,/content/organization]
+toc: false
+---
+
+A static site generator needs to extend beyond front matter and a couple of templates to be both scalable and *manageable*. Hugo was designed with not only developers in mind, but also content managers and authors.
diff --git a/docs/content/en/content-management/archetypes.md b/docs/content/en/content-management/archetypes.md
new file mode 100644
index 000000000..354ef0fef
--- /dev/null
+++ b/docs/content/en/content-management/archetypes.md
@@ -0,0 +1,97 @@
+---
+title: Archetypes
+linktitle: Archetypes
+description: Archetypes are templates used when creating new content.
+date: 2017-02-01
+publishdate: 2017-02-01
+keywords: [archetypes,generators,metadata,front matter]
+categories: ["content management"]
+menu:
+ docs:
+ parent: "content-management"
+ weight: 70
+ quicklinks:
+weight: 70 #rem
+draft: false
+aliases: [/content/archetypes/]
+toc: true
+---
+
+## What are Archetypes?
+
+**Archetypes** are content template files in the [archetypes directory][] of your project that contain preconfigured [front matter][] and possibly also a content disposition for your website's [content types][]. These will be used when you run `hugo new`.
+
+
+The `hugo new` uses the `content-section` to find the most suitable archetype template in your project. If your project does not contain any archetype files, it will also look in the theme.
+
+{{< code file="archetype-example.sh" >}}
+hugo new posts/my-first-post.md
+{{< /code >}}
+
+The above will create a new content file in `content/posts/my-first-post.md` using the first archetype file found of these:
+
+1. `archetypes/posts.md`
+2. `archetypes/default.md`
+3. `themes/my-theme/archetypes/posts.md`
+4. `themes/my-theme/archetypes/default.md`
+
+The last two list items are only applicable if you use a theme and it uses the `my-theme` theme name as an example.
+
+## Create a New Archetype Template
+
+A fictional example for the section `newsletter` and the archetype file `archetypes/newsletter.md`. Create a new file in `archetypes/newsletter.md` and open it in a text editor.
+
+{{< code file="archetypes/newsletter.md" >}}
+---
+title: "{{ replace .Name "-" " " | title }}"
+date: {{ .Date }}
+draft: true
+---
+
+**Insert Lead paragraph here.**
+
+## New Cool Posts
+
+{{ range first 10 ( where .Site.RegularPages "Type" "cool" ) }}
+* {{ .Title }}
+{{ end }}
+{{< /code >}}
+
+When you create a new newsletter with:
+
+```bash
+hugo new newsletter/the-latest-cool.stuff.md
+```
+
+It will create a new newsletter type of content file based on the archetype template.
+
+**Note:** the site will only be built if the `.Site` is in use in the archetype file, and this can be time consuming for big sites.
+
+The above _newsletter type archetype_ illustrates the possibilities: The full Hugo `.Site` and all of Hugo&#39;s template funcs can be used in the archetype file.
+
+
+## Directory based archetypes
+
+Since Hugo `0.49` you can use complete directories as archetype templates. Given this archetype directory:
+
+```bash
+archetypes
+├── default.md
+└── post-bundle
+ ├── bio.md
+ ├── images
+ │ └── featured.jpg
+ └── index.md
+```
+
+```bash
+hugo new --kind post-bundle posts/my-post
+```
+
+Will create a new folder in `/content/posts/my-post` with the same set of files as in the `post-bundle` archetypes folder. All content files (`index.md` etc.) can contain template logic, and will receive the correct `.Site` for the content's language.
+
+
+
+[archetypes directory]: /getting-started/directory-structure/
+[content types]: /content-management/types/
+[front matter]: /content-management/front-matter/
diff --git a/docs/content/en/content-management/build-options.md b/docs/content/en/content-management/build-options.md
new file mode 100644
index 000000000..93da7c421
--- /dev/null
+++ b/docs/content/en/content-management/build-options.md
@@ -0,0 +1,119 @@
+---
+title: Build Options
+linktitle: Build Options
+description: Build options help define how Hugo must treat a given page when building the site.
+date: 2020-03-02
+publishdate: 2020-03-02
+keywords: [build,content,front matter, page resources]
+categories: ["content management"]
+menu:
+ docs:
+ parent: "content-management"
+ weight: 31
+weight: 31 #rem
+draft: false
+aliases: [/content/build-options/]
+toc: true
+---
+
+They are stored in a reserved Front Matter object named `_build` with the following defaults:
+
+```yaml
+_build:
+ render: always
+ list: always
+ publishResources: true
+```
+
+#### render
+If `always`, the page will be treated as a published page, holding its dedicated output files (`index.html`, etc...) and permalink.
+
+{{< new-in "0.76.0" >}} We extended this property from a boolean to an enum in Hugo 0.76.0. Valid values are:
+
+never
+: The page will not be included in any page collection.
+
+always (default)
+: The page will be rendered to disk and get a `RelPermalink` etc.
+
+link
+: The page will be not be rendered to disk, but will get a `RelPermalink`.
+
+#### list
+
+Note that we extended this property from a boolean to an enum in Hugo 0.68.0.
+
+Valid values are:
+
+never
+: The page will not be included in any page collection.
+
+always (default)
+: The page will be included in all page collections, e.g. `site.RegularPages`, `$page.Pages`.
+
+local
+: The page will be included in any _local_ page collection, e.g. `$page.RegularPages`, `$page.Pages`. One use case for this would be to create fully navigable, but headless content sections. {{< new-in "0.68.0" >}}
+
+If true, the page will be treated as part of the project's collections and, when appropriate, returned by Hugo's listing methods (`.Pages`, `.RegularPages` etc...).
+
+#### publishResources
+
+If set to true the [Bundle's Resources]({{< relref "content-management/page-bundles" >}}) will be published.
+Setting this to false will still publish Resources on demand (when a resource's `.Permalink` or `.RelPermalink` is invoked from the templates) but will skip the others.
+
+{{% note %}}
+Any page, regardless of their build options, will always be available using the [`.GetPage`]({{< relref "functions/GetPage" >}}) methods.
+{{% /note %}}
+
+------
+
+### Illustrative use cases
+
+#### Not publishing a page
+Project needs a "Who We Are" content file for Front Matter and body to be used by the homepage but nowhere else.
+
+```yaml
+# content/who-we-are.md`
+title: Who we are
+_build:
+ list: false
+ render: false
+```
+
+```go-html-template
+{{/* layouts/index.html */}}
+<section id="who-we-are">
+{{ with site.GetPage "who-we-are" }}
+ {{ .Content }}
+{{ end }}
+</section>
+```
+
+#### Listing pages without publishing them
+
+Website needs to showcase a few of the hundred "testimonials" available as content files without publishing any of them.
+
+To avoid setting the build options on every testimonials, one can use [`cascade`]({{< relref "/content-management/front-matter#front-matter-cascade" >}}) on the testimonial section's content file.
+
+```yaml
+#content/testimonials/_index.md
+title: Testimonials
+# section build options:
+_build:
+ render: true
+# children build options with cascade
+cascade:
+ _build:
+ render: false
+ list: true # default
+```
+
+```go-html-template
+{{/* layouts/_defaults/testimonials.html */}}
+<section id="testimonials">
+{{ range first 5 .Pages }}
+ <blockquote cite="{{ .Params.cite }}">
+ {{ .Content }}
+ </blockquote>
+{{ end }}
+</section>
diff --git a/docs/content/en/content-management/comments.md b/docs/content/en/content-management/comments.md
new file mode 100644
index 000000000..bbeb21ada
--- /dev/null
+++ b/docs/content/en/content-management/comments.md
@@ -0,0 +1,75 @@
+---
+title: Comments
+linktitle: Comments
+description: Hugo ships with an internal Disqus template, but this isn't the only commenting system that will work with your new Hugo website.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-03-09
+keywords: [sections,content,organization]
+categories: [project organization, fundamentals]
+menu:
+ docs:
+ parent: "content-management"
+ weight: 140
+weight: 140 #rem
+draft: false
+aliases: [/extras/comments/]
+toc: true
+---
+
+Hugo ships with support for [Disqus](https://disqus.com/), a third-party service that provides comment and community capabilities to websites via JavaScript.
+
+Your theme may already support Disqus, but if not, it is easy to add to your templates via [Hugo's built-in Disqus partial][disquspartial].
+
+## Add Disqus
+
+Hugo comes with all the code you need to load Disqus into your templates. Before adding Disqus to your site, you'll need to [set up an account][disqussetup].
+
+### Configure Disqus
+
+Disqus comments require you set a single value in your [site's configuration file][configuration] like so:
+
+{{< code-toggle copy="false" >}}
+disqusShortname = "yourdiscussshortname"
+{{</ code-toggle >}}
+
+For many websites, this is enough configuration. However, you also have the option to set the following in the [front matter][] of a single content file:
+
+* `disqus_identifier`
+* `disqus_title`
+* `disqus_url`
+
+### Render Hugo's Built-in Disqus Partial Template
+
+Disqus has its own [internal template](https://gohugo.io/templates/internal/#disqus) available, to render it add the following code where you want comments to appear:
+
+```
+{{ template "_internal/disqus.html" . }}
+```
+
+## Alternatives
+
+These are some alternatives to Disqus:
+
+* [Cactus Comments](https://cactus.chat/docs/integrations/hugo/) (Open Source, Matrix appservice, Docker install)
+* [Commento](https://commento.io/) (Open Source, available as a service, local install, or docker image)
+* [Graph Comment](https://graphcomment.com/)
+* [Hyvor Talk](https://talk.hyvor.com/) (Available as a service)
+* [IntenseDebate](https://intensedebate.com/)
+* [Isso](https://posativ.org/isso/) (Self-hosted, Python) ([tutorial][issotutorial])
+* [Muut](https://muut.com/)
+* [Remark42](https://remark42.com/) (Open source, Golang, Easy to run docker)
+* [Staticman](https://staticman.net/)
+* [Talkyard](https://www.talkyard.io/blog-comments) (Open source, & serverless hosting)
+* [Utterances](https://utteranc.es/) (Open source, GitHub comments widget built on GitHub issues)
+
+[configuration]: /getting-started/configuration/
+[disquspartial]: /templates/partials/#disqus
+[disqussetup]: https://disqus.com/profile/signup/
+[forum]: https://discourse.gohugo.io
+[front matter]: /content-management/front-matter/
+[kaijuissue]: https://github.com/spf13/kaiju/issues/new
+[issotutorial]: https://stiobhart.net/2017-02-24-isso-comments/
+[partials]: /templates/partials/
+[MongoDB]: https://www.mongodb.com/
+[tweet]: https://twitter.com/spf13
diff --git a/docs/content/en/content-management/cross-references.md b/docs/content/en/content-management/cross-references.md
new file mode 100644
index 000000000..9580fd7e5
--- /dev/null
+++ b/docs/content/en/content-management/cross-references.md
@@ -0,0 +1,129 @@
+---
+title: Links and Cross References
+description: Shortcodes for creating links to documents.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-03-31
+categories: [content management]
+keywords: ["cross references","references", "anchors", "urls"]
+menu:
+ docs:
+ parent: "content-management"
+ weight: 100
+weight: 100 #rem
+aliases: [/extras/crossreferences/]
+toc: true
+---
+
+The `ref` and `relref` shortcodes display the absolute and relative permalinks to a document, respectively.
+
+## Use `ref` and `relref`
+
+```go-html-template
+{{</* ref "document" */>}}
+{{</* ref "document#anchor" */>}}
+{{</* ref "document.md" */>}}
+{{</* ref "document.md#anchor" */>}}
+{{</* ref "#anchor" */>}}
+{{</* ref "/blog/my-post" */>}}
+{{</* ref "/blog/my-post.md" */>}}
+{{</* relref "document" */>}}
+{{</* relref "document.md" */>}}
+{{</* relref "#anchor" */>}}
+{{</* relref "/blog/my-post.md" */>}}
+```
+
+To generate a hyperlink using `ref` or `relref` in markdown:
+
+```md
+[About]({{</* ref "/page/about" */>}} "About Us")
+```
+
+The `ref` and `relref` shortcodes require a single parameter: the path to a content document, with or without a file extension, with or without an anchor.
+
+**Paths without a leading `/` are first resolved relative to the current page, then to the remainder of the site.
+
+Hugo emits an error or warning if a document cannot be uniquely resolved. The error behavior is configurable; see below.
+
+### Link to another language version
+
+To link to another language version of a document, use this syntax:
+
+```go-html-template
+{{</* relref path="document.md" lang="ja" */>}}
+```
+
+### Get another Output Format
+
+To link to another Output Format of a document, use this syntax:
+
+```go-html-template
+{{</* relref path="document.md" outputFormat="rss" */>}}
+```
+
+### Heading IDs
+
+When using Markdown document types, Hugo generates element IDs for every heading on a page. For example:
+
+```md
+## Reference
+```
+
+produces this HTML:
+
+```html
+<h2 id="reference">Reference</h2>
+```
+
+Get the permalink to a heading by appending the ID to the path when using the `ref` or `relref` shortcodes:
+
+```go-html-template
+{{</* ref "document.md#reference" */>}}
+{{</* relref "document.md#reference" */>}}
+```
+
+Generate a custom heading ID by including an attribute. For example:
+
+```md
+## Reference A {#foo}
+## Reference B {id="bar"}
+```
+
+produces this HTML:
+
+```html
+<h2 id="foo">Reference A</h2>
+<h2 id="bar">Reference B</h2>
+```
+
+Hugo will generate unique element IDs if the same heading appears more than once on a page. For example:
+
+```md
+## Reference
+## Reference
+## Reference
+```
+
+produces this HTML:
+
+```html
+<h2 id="reference">Reference</h2>
+<h2 id="reference-1">Reference</h2>
+<h2 id="reference-2">Reference</h2>
+```
+
+## Ref and RelRef Configuration
+
+The behavior can, since Hugo 0.45, be configured in `config.toml`:
+
+refLinksErrorLevel ("ERROR")
+: When using `ref` or `relref` to resolve page links and a link cannot resolved, it will be logged with this log level. Valid values are `ERROR` (default) or `WARNING`. Any `ERROR` will fail the build (`exit -1`).
+
+refLinksNotFoundURL
+: URL to be used as a placeholder when a page reference cannot be found in `ref` or `relref`. Is used as-is.
+
+
+[lists]: /templates/lists/
+[output formats]: /templates/output-formats/
+[shortcode]: /content-management/shortcodes/
+[bfext]: /content-management/formats/#blackfriday-extensions
diff --git a/docs/content/en/content-management/formats.md b/docs/content/en/content-management/formats.md
new file mode 100644
index 000000000..1ae20ba58
--- /dev/null
+++ b/docs/content/en/content-management/formats.md
@@ -0,0 +1,157 @@
+---
+title: Content Formats
+linktitle: Content Formats
+description: Both HTML and Markdown are supported content formats.
+date: 2017-01-10
+publishdate: 2017-01-10
+lastmod: 2017-04-06
+categories: [content management]
+keywords: [markdown,asciidoc,mmark,pandoc,content format]
+menu:
+ docs:
+ parent: "content-management"
+ weight: 20
+weight: 20 #rem
+draft: false
+aliases: [/content/markdown-extras/,/content/supported-formats/,/doc/supported-formats/]
+toc: true
+---
+
+You can put any file type into your `/content` directories, but Hugo uses the `markup` front matter value if set or the file extension (see `Markup identifiers` in the table below) to determine if the markup needs to be processed, e.g.:
+
+* Markdown converted to HTML
+* [Shortcodes](/content-management/shortcodes/) processed
+* Layout applied
+
+## List of content formats
+
+The current list of content formats in Hugo:
+
+| Name | Markup identifiers | Comment |
+| ------------- | ------------- |-------------|
+| Goldmark | md, markdown, goldmark |Note that you can set the default handler of `md` and `markdown` to something else, see [Configure Markup](/getting-started/configuration-markup/).{{< new-in "0.60.0" >}} |
+| Blackfriday | blackfriday |Blackfriday will eventually be deprecated.|
+|MMark|mmark|Mmark is deprecated and will be removed in a future release.|
+|Emacs Org-Mode|org|See [go-org](https://github.com/niklasfasching/go-org).|
+|AsciiDoc|asciidocext, adoc, ad|Needs [Asciidoctor][ascii] installed.|
+|RST|rst|Needs [RST](http://docutils.sourceforge.net/rst.html) installed.|
+|Pandoc|pandoc, pdc|Needs [Pandoc](https://www.pandoc.org/) installed.|
+|HTML|html, htm|To be treated as a content file, with layout, shortcodes etc., it must have front matter. If not, it will be copied as-is.|
+
+The `markup identifier` is fetched from either the `markup` variable in front matter or from the file extension. For markup-related configuration, see [Configure Markup](/getting-started/configuration-markup/).
+
+
+## External Helpers
+
+Some of the formats in the table above need external helpers installed on your PC. For example, for AsciiDoc files,
+Hugo will try to call the `asciidoctor` command. This means that you will have to install the associated
+tool on your machine to be able to use these formats.
+
+Hugo passes reasonable default arguments to these external helpers by default:
+
+- `asciidoctor`: `--no-header-footer -`
+- `rst2html`: `--leave-comments --initial-header-level=2`
+- `pandoc`: `--mathjax`
+
+{{% warning "Performance of External Helpers" %}}
+Because additional formats are external commands, generation performance will rely heavily on the performance of the external tool you are using. As this feature is still in its infancy, feedback is welcome.
+{{% /warning %}}
+
+### External Helper AsciiDoc
+
+[AsciiDoc](https://github.com/asciidoc/asciidoc) implementation EOLs in Jan 2020 and is no longer supported.
+AsciiDoc development is being continued under [Asciidoctor](https://github.com/asciidoctor). The format AsciiDoc
+remains of course. Please continue with the implementation Asciidoctor.
+
+### External Helper Asciidoctor
+
+The Asciidoctor community offers a wide set of tools for the AsciiDoc format that can be installed additionally to Hugo.
+[See the Asciidoctor docs for installation instructions](https://asciidoctor.org/docs/install-toolchain/). Make sure that also all
+optional extensions like `asciidoctor-diagram` or `asciidoctor-html5s` are installed if required.
+
+{{% note %}}
+External `asciidoctor` command requires Hugo rendering to _disk_ to a specific destination directory. It is required to run Hugo with the command option `--destination`.
+{{% /note %}}
+
+Some [Asciidoctor](https://asciidoctor.org/man/asciidoctor/) parameters can be customized in Hugo:
+
+Parameter | Comment
+--- | ---
+backend | Don't change this unless you know what you are doing.
+doctype | Currently, the only document type supported in Hugo is `article`.
+extensions | Possible extensions are `asciidoctor-html5s`, `asciidoctor-bibtex`, `asciidoctor-diagram`, `asciidoctor-interdoc-reftext`, `asciidoctor-katex`, `asciidoctor-latex`, `asciidoctor-mathematical`, `asciidoctor-question`, `asciidoctor-rouge`.
+attributes | Variables to be referenced in your AsciiDoc file. This is a list of variable name/value maps. See [Asciidoctor's attributes](https://asciidoctor.org/docs/asciidoc-syntax-quick-reference/#attributes-and-substitutions).
+noHeaderOrFooter | Output an embeddable document, which excludes the header, the footer, and everything outside the body of the document. Don't change this unless you know what you are doing.
+safeMode | Safe mode level `unsafe`, `safe`, `server` or `secure`. Don't change this unless you know what you are doing.
+sectionNumbers | Auto-number section titles.
+verbose | Verbosely print processing information and configuration file checks to stderr.
+trace | Include backtrace information on errors.
+failureLevel | The minimum logging level that triggers a non-zero exit code (failure).
+
+Hugo provides additional settings that don't map directly to Asciidoctor's CLI options:
+
+workingFolderCurrent
+: Sets the working directory to be the same as that of the AsciiDoc file being processed, so that [include](https://asciidoctor.org/docs/asciidoc-syntax-quick-reference/#include-files) will work with relative paths. This setting uses the `asciidoctor` cli parameter `--base-dir` and attribute `outdir=`. For rendering diagrams with [asciidoctor-diagram](https://asciidoctor.org/docs/asciidoctor-diagram/), `workingFolderCurrent` must be set to `true`.
+
+preserveTOC
+: By default, Hugo removes the table of contents generated by Asciidoctor and provides it through the built-in variable [`.TableOfContents`](/content-management/toc/) to enable further customization and better integration with the various Hugo themes. This option can be set to `true` to preserve Asciidoctor's TOC in the generated page.
+
+Below are all the AsciiDoc related settings in Hugo with their default values:
+
+{{< code-toggle config="markup.asciidocExt" />}}
+
+Notice that for security concerns only extensions that do not have path separators (either `\`, `/` or `.`) are allowed. That means that extensions can only be invoked if they are in one's ruby's `$LOAD_PATH` (ie. most likely, the extension has been installed by the user). Any extension declared relative to the website's path will not be accepted.
+
+Example of how to set extensions and attributes:
+
+```
+[markup.asciidocExt]
+ extensions = ["asciidoctor-html5s", "asciidoctor-diagram"]
+ workingFolderCurrent = true
+ [markup.asciidocExt.attributes]
+ my-base-url = "https://example.com/"
+ my-attribute-name = "my value"
+```
+
+In a complex Asciidoctor environment it is sometimes helpful to debug the exact call to your external helper with all
+parameters. Run Hugo with `-v`. You will get an output like
+
+```
+INFO 2019/12/22 09:08:48 Rendering book-as-pdf.adoc with C:\Ruby26-x64\bin\asciidoctor.bat using asciidoc args [--no-header-footer -r asciidoctor-html5s -b html5s -r asciidoctor-diagram --base-dir D:\prototypes\hugo_asciidoc_ddd\docs -a outdir=D:\prototypes\hugo_asciidoc_ddd\build -] ...
+```
+
+## Learn Markdown
+
+Markdown syntax is simple enough to learn in a single sitting. The following are excellent resources to get you up and running:
+
+* [Daring Fireball: Markdown, John Gruber (Creator of Markdown)][fireball]
+* [Markdown Cheatsheet, Adam Pritchard][mdcheatsheet]
+* [Markdown Tutorial (Interactive), Garen Torikian][mdtutorial]
+* [The Markdown Guide, Matt Cone][mdguide]
+
+[`emojify` function]: /functions/emojify/
+[ascii]: https://asciidoctor.org/
+[bfconfig]: /getting-started/configuration/#configuring-blackfriday-rendering
+[blackfriday]: https://github.com/russross/blackfriday
+[mmark]: https://github.com/miekg/mmark
+[config]: /getting-started/configuration/
+[developer tools]: /tools/
+[emojis]: https://www.webpagefx.com/tools/emoji-cheat-sheet/
+[fireball]: https://daringfireball.net/projects/markdown/
+[gfmtasks]: https://guides.github.com/features/mastering-markdown/#syntax
+[helperssource]: https://github.com/gohugoio/hugo/blob/77c60a3440806067109347d04eb5368b65ea0fe8/helpers/general.go#L65
+[hl]: /content-management/syntax-highlighting/
+[hlsc]: /content-management/shortcodes/#highlight
+[hugocss]: /css/style.css
+[ietf]: https://tools.ietf.org/html/
+[mathjaxdocs]: https://docs.mathjax.org/en/latest/
+[mdcheatsheet]: https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet
+[mdguide]: https://www.markdownguide.org/
+[mdtutorial]: https://www.markdowntutorial.com/
+[Miek Gieben's website]: https://miek.nl/2016/march/05/mmark-syntax-document/
+[mmark]: https://github.com/mmarkdown/mmark
+[org]: https://orgmode.org/
+[pandoc]: https://www.pandoc.org/
+[rest]: https://docutils.sourceforge.io/rst.html
+[sc]: /content-management/shortcodes/
+[sct]: /templates/shortcode-templates/
diff --git a/docs/content/en/content-management/front-matter.md b/docs/content/en/content-management/front-matter.md
new file mode 100644
index 000000000..2155f1992
--- /dev/null
+++ b/docs/content/en/content-management/front-matter.md
@@ -0,0 +1,246 @@
+---
+title: Front Matter
+linktitle:
+description: Hugo allows you to add front matter in yaml, toml, or json to your content files.
+date: 2017-01-09
+publishdate: 2017-01-09
+lastmod: 2017-02-24
+categories: [content management]
+keywords: ["front matter", "yaml", "toml", "json", "metadata", "archetypes"]
+menu:
+ docs:
+ parent: "content-management"
+ weight: 30
+weight: 30 #rem
+draft: false
+aliases: [/content/front-matter/]
+toc: true
+---
+
+**Front matter** allows you to keep metadata attached to an instance of a [content type][]---i.e., embedded inside a content file---and is one of the many features that gives Hugo its strength.
+
+{{< youtube Yh2xKRJGff4 >}}
+
+## Front Matter Formats
+
+Hugo supports four formats for front matter, each with their own identifying tokens.
+
+TOML
+: identified by opening and closing `+++`.
+
+YAML
+: identified by opening and closing `---`.
+
+JSON
+: a single JSON object surrounded by '`{`' and '`}`', followed by a new line.
+
+ORG
+: a group of Org mode keywords in the format '`#+KEY: VALUE`'. Any line that does not start with `#+` ends the front matter section.
+ Keyword values can be either strings (`#+KEY: VALUE`) or a whitespace separated list of strings (`#+KEY[]: VALUE_1 VALUE_2`).
+
+### Example
+
+{{< code-toggle >}}
+title = "spf13-vim 3.0 release and new website"
+description = "spf13-vim is a cross platform distribution of vim plugins and resources for Vim."
+tags = [ ".vimrc", "plugins", "spf13-vim", "vim" ]
+date = "2012-04-06"
+categories = [
+ "Development",
+ "VIM"
+]
+slug = "spf13-vim-3-0-release-and-new-website"
+{{< /code-toggle >}}
+
+## Front Matter Variables
+
+### Predefined
+
+There are a few predefined variables that Hugo is aware of. See [Page Variables][pagevars] for how to call many of these predefined variables in your templates.
+
+aliases
+: an array of one or more aliases (e.g., old published paths of renamed content) that will be created in the output directory structure . See [Aliases][aliases] for details.
+
+audio
+: an array of paths to audio files related to the page; used by the `opengraph` [internal template](/templates/internal) to populate `og:audio`.
+
+cascade
+: a map of Front Matter keys whose values are passed down to the page's descendants unless overwritten by self or a closer ancestor's cascade. See [Front Matter Cascade](#front-matter-cascade) for details.
+
+date
+: the datetime assigned to this page. This is usually fetched from the `date` field in front matter, but this behaviour is configurable.
+
+description
+: the description for the content.
+
+draft
+: if `true`, the content will not be rendered unless the `--buildDrafts` flag is passed to the `hugo` command.
+
+expiryDate
+: the datetime at which the content should no longer be published by Hugo; expired content will not be rendered unless the `--buildExpired` flag is passed to the `hugo` command.
+
+headless
+: if `true`, sets a leaf bundle to be [headless][headless-bundle].
+
+images
+: an array of paths to images related to the page; used by [internal templates](/templates/internal) such as `_internal/twitter_cards.html`.
+
+isCJKLanguage
+: if `true`, Hugo will explicitly treat the content as a CJK language; both `.Summary` and `.WordCount` work properly in CJK languages.
+
+keywords
+: the meta keywords for the content.
+
+layout
+: the layout Hugo should select from the [lookup order][lookup] when rendering the content. If a `type` is not specified in the front matter, Hugo will look for the layout of the same name in the layout directory that corresponds with a content's section. See ["Defining a Content Type"][definetype]
+
+lastmod
+: the datetime at which the content was last modified.
+
+linkTitle
+: used for creating links to content; if set, Hugo defaults to using the `linktitle` before the `title`. Hugo can also [order lists of content by `linktitle`][bylinktitle].
+
+markup
+: **experimental**; specify `"rst"` for reStructuredText (requires`rst2html`) or `"md"` (default) for Markdown.
+
+outputs
+: allows you to specify output formats specific to the content. See [output formats][outputs].
+
+publishDate
+: if in the future, content will not be rendered unless the `--buildFuture` flag is passed to `hugo`.
+
+resources
+: used for configuring page bundle resources. See [Page Resources][page-resources].
+
+series
+: an array of series this page belongs to, as a subset of the `series` [taxonomy](/content-management/taxonomies/); used by the `opengraph` [internal template](/templates/internal) to populate `og:see_also`.
+
+slug
+: appears as the tail of the output URL. A value specified in front matter will override the segment of the URL based on the filename.
+
+summary
+: text used when providing a summary of the article in the `.Summary` page variable; details available in the [content-summaries](/content-management/summaries/) section.
+
+title
+: the title for the content.
+
+type
+: the type of the content; this value will be automatically derived from the directory (i.e., the [section][]) if not specified in front matter.
+
+url
+: the full path to the content from the web root. It makes no assumptions about the path of the content file. See [URL Management](/content-management/urls/#set-url-in-front-matter).
+
+videos
+: an array of paths to videos related to the page; used by the `opengraph` [internal template](/templates/internal) to populate `og:video`.
+
+weight
+: used for [ordering your content in lists][ordering]. Lower weight gets higher precedence. So content with lower weight will come first. If set, weights should be non-zero, as 0 is interpreted as an *unset* weight.
+
+\<taxonomies\>
+: field name of the *plural* form of the index. See `tags` and `categories` in the above front matter examples. _Note that the plural form of user-defined taxonomies cannot be the same as any of the predefined front matter variables._
+
+{{% note "Hugo's Default URL Destinations" %}}
+If neither `slug` nor `url` is present and [permalinks are not configured otherwise in your site `config` file](/content-management/urls/#permalinks), Hugo will use the filename of your content to create the output URL. See [Content Organization](/content-management/organization) for an explanation of paths in Hugo and [URL Management](/content-management/urls/) for ways to customize Hugo's default behaviors.
+{{% /note %}}
+
+### User-Defined
+
+You can add fields to your front matter arbitrarily to meet your needs. These user-defined key-values are placed into a single `.Params` variable for use in your templates.
+
+The following fields can be accessed via `.Params.include_toc` and `.Params.show_comments`, respectively. The [Variables][] section provides more information on using Hugo's page- and site-level variables in your templates.
+
+{{< code-toggle copy="false" >}}
+include_toc: true
+show_comments: false
+{{</ code-toggle >}}
+
+## Front Matter Cascade
+
+Any node or section can pass down to descendants a set of Front Matter values as long as defined underneath the reserved `cascade` Front Matter key.
+
+### Target Specific Pages
+
+{{< new-in "0.76.0" >}}
+
+Since Hugo 0.76 the `cascade` block can be a slice with a optional `_target` keyword, allowing for multiple `cascade` values targeting different page sets.
+
+{{< code-toggle copy="false" >}}
+title ="Blog"
+[[cascade]]
+background = "yosemite.jpg"
+[cascade._target]
+path="/blog/**"
+lang="en"
+kind="page"
+[[cascade]]
+background = "goldenbridge.jpg"
+[cascade._target]
+kind="section"
+{{</ code-toggle >}}
+
+Keywords available for `_target`:
+
+path
+: A [Glob](https://github.com/gobwas/glob) pattern matching the content path below /content. Expects Unix-styled slashes. Note that this is the virtual path, so it starts at the mount root. The matching support double-asterisks so you can match for patterns like `/blog/*/**` to match anything from the third level and down.
+
+kind
+: The Page's Kind, e.g. "section".
+
+lang
+: A Glob pattern matching the Page's language, e.g. "{en,sv}".
+
+Any of the above can be omitted.
+
+### Example
+
+In `content/blog/_index.md`
+
+{{< code-toggle copy="false" >}}
+title: Blog
+cascade:
+ banner: images/typewriter.jpg
+{{</ code-toggle >}}
+
+With the above example the Blog section page and its descendants will return `images/typewriter.jpg` when `.Params.banner` is invoked unless:
+
+- Said descendant has its own `banner` value set
+- Or a closer ancestor node has its own `cascade.banner` value set.
+
+
+
+## Order Content Through Front Matter
+
+You can assign content-specific `weight` in the front matter of your content. These values are especially useful for [ordering][ordering] in list views. You can use `weight` for ordering of content and the convention of [`<TAXONOMY>_weight`][taxweight] for ordering content within a taxonomy. See [Ordering and Grouping Hugo Lists][lists] to see how `weight` can be used to organize your content in list views.
+
+## Override Global Markdown Configuration
+
+It's possible to set some options for Markdown rendering in a content's front matter as an override to the [BlackFriday rendering options set in your project configuration][config].
+
+## Front Matter Format Specs
+
+* [TOML Spec][toml]
+* [YAML Spec][yaml]
+* [JSON Spec][json]
+
+[variables]: /variables/
+[aliases]: /content-management/urls/#aliases
+[archetype]: /content-management/archetypes/
+[bylinktitle]: /templates/lists/#by-link-title
+[config]: /getting-started/configuration/ "Hugo documentation for site configuration"
+[content type]: /content-management/types/
+[contentorg]: /content-management/organization/
+[definetype]: /content-management/types/#defining-a-content-type "Learn how to specify a type and a layout in a content's front matter"
+[headless-bundle]: /content-management/page-bundles/#headless-bundle
+[json]: https://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf "Specification for JSON, JavaScript Object Notation"
+[lists]: /templates/lists/#ordering-content "See how to order content in list pages; for example, templates that look to specific _index.md for content and front matter."
+[lookup]: /templates/lookup-order/ "Hugo traverses your templates in a specific order when rendering content to allow for DRYer templating."
+[ordering]: /templates/lists/ "Hugo provides multiple ways to sort and order your content in list templates"
+[outputs]: /templates/output-formats/ "With the release of v22, you can output your content to any text format using Hugo's familiar templating"
+[page-resources]: /content-management/page-resources/
+[pagevars]: /variables/page/
+[section]: /content-management/sections/
+[taxweight]: /content-management/taxonomies/
+[toml]: https://github.com/toml-lang/toml "Specification for TOML, Tom's Obvious Minimal Language"
+[urls]: /content-management/urls/
+[variables]: /variables/
+[yaml]: https://yaml.org/spec/ "Specification for YAML, YAML Ain't Markup Language"
diff --git a/docs/content/en/content-management/image-processing/index.md b/docs/content/en/content-management/image-processing/index.md
new file mode 100644
index 000000000..8f84145ac
--- /dev/null
+++ b/docs/content/en/content-management/image-processing/index.md
@@ -0,0 +1,346 @@
+---
+title: "Image Processing"
+description: "Image Page resources can be resized and cropped."
+date: 2018-01-24T13:10:00-05:00
+linktitle: "Image Processing"
+categories: ["content management"]
+keywords: [resources, images]
+weight: 4004
+draft: false
+toc: true
+menu:
+ docs:
+ parent: "content-management"
+ weight: 32
+---
+
+## The Image Page Resource
+
+The `image` is a [Page Resource]({{< relref "/content-management/page-resources" >}}), and the processing methods listed below do not work on images inside your `/static` folder.
+
+To print all images paths in a [Page Bundle]({{< relref "/content-management/organization#page-bundles" >}}):
+
+```go-html-template
+{{ with .Resources.ByType "image" }}
+{{ range . }}
+{{ .RelPermalink }}
+{{ end }}
+{{ end }}
+
+```
+
+## The Image Resource
+
+The `image` resource can also be retrieved from a [global resource]({{< relref "/hugo-pipes/introduction#from-file-to-resource" >}})
+
+```go-html-template
+{{- $image := resources.Get "images/logo.jpg" -}}
+```
+
+## Image Processing Methods
+
+The `image` resource implements the `Resize`, `Fit`, `Fill`, and `Filter` methods, each returning a transformed image using the specified dimensions and processing options.
+
+{{% note %}}
+Metadata (EXIF, IPTC, XMP, etc.) is not preserved during image transformation. Use the [`Exif`](#exif) method with the _original_ image to extract EXIF metadata from JPEG or TIFF images.
+{{% /note %}}
+
+### Resize
+
+Resizes the image to the specified width and height.
+
+```go
+// Resize to a width of 600px and preserve ratio
+{{ $image := $resource.Resize "600x" }}
+
+// Resize to a height of 400px and preserve ratio
+{{ $image := $resource.Resize "x400" }}
+
+// Resize to a width 600px and a height of 400px
+{{ $image := $resource.Resize "600x400" }}
+```
+
+### Fit
+
+Scale down the image to fit the given dimensions while maintaining aspect ratio. Both height and width are required.
+
+```go
+{{ $image := $resource.Fit "600x400" }}
+```
+
+### Fill
+
+Resize and crop the image to match the given dimensions. Both height and width are required.
+
+```go
+{{ $image := $resource.Fill "600x400" }}
+```
+
+### Filter
+
+Apply one or more filters to your image. See [Image Filters](/functions/images/#image-filters) for a full list.
+
+```go-html-template
+{{ $img = $img.Filter (images.GaussianBlur 6) (images.Pixelate 8) }}
+```
+
+The above can also be written in a more functional style using pipes:
+
+```go-html-template
+{{ $img = $img | images.Filter (images.GaussianBlur 6) (images.Pixelate 8) }}
+```
+
+The filters will be applied in the given order.
+
+Sometimes it can be useful to create the filter chain once and then reuse it:
+
+```go-html-template
+{{ $filters := slice (images.GaussianBlur 6) (images.Pixelate 8) }}
+{{ $img1 = $img1.Filter $filters }}
+{{ $img2 = $img2.Filter $filters }}
+```
+
+### Exif
+
+Provides an [Exif](https://en.wikipedia.org/wiki/Exif) object with metadata about the image.
+
+Note that this is only supported for JPEG and TIFF images, so it's recommended to wrap the access with a `with`, e.g.:
+
+```go-html-template
+{{ with $img.Exif }}
+Date: {{ .Date }}
+Lat/Long: {{ .Lat}}/{{ .Long }}
+Tags:
+{{ range $k, $v := .Tags }}
+TAG: {{ $k }}: {{ $v }}
+{{ end }}
+{{ end }}
+```
+
+Or individually access EXIF data with dot access, e.g.:
+
+```go-html-template
+{{ with $src.Exif }}
+ <ul>
+ {{ with .Date }}<li>Date: {{ .Format "January 02, 2006" }}</li>{{ end }}
+ {{ with .Tags.ApertureValue }}<li>Aperture: {{ lang.NumFmt 2 . }}</li>{{ end }}
+ {{ with .Tags.BrightnessValue }}<li>Brightness: {{ lang.NumFmt 2 . }}</li>{{ end }}
+ {{ with .Tags.ExposureTime }}<li>Exposure Time: {{ . }}</li>{{ end }}
+ {{ with .Tags.FNumber }}<li>F Number: {{ . }}</li>{{ end }}
+ {{ with .Tags.FocalLength }}<li>Focal Length: {{ . }}</li>{{ end }}
+ {{ with .Tags.ISOSpeedRatings }}<li>ISO Speed Ratings: {{ . }}</li>{{ end }}
+ {{ with .Tags.LensModel }}<li>Lens Model: {{ . }}</li>{{ end }}
+ </ul>
+{{ end }}
+```
+
+Some fields may need to be formatted with [`lang.FormatNumberCustom`]({{< relref "functions/lang" >}}) function to prevent display like `Aperture: 2.278934289` instead of `Aperture: 2.28`.
+
+#### Exif fields
+
+Date
+: "photo taken" date/time
+
+Lat
+: "photo taken where", GPS latitude
+
+Long
+: "photo taken where", GPS longitude
+
+See [Image Processing Config](#image-processing-config) for how to configure what gets included in Exif.
+
+## Image Processing Options
+
+In addition to the dimensions (e.g. `600x400`), Hugo supports a set of additional image options.
+
+### Background Color
+
+The background color to fill into the transparency layer. This is mostly useful when converting to a format that does not support transparency, e.g. `JPEG`.
+
+You can set the background color to use with a 3 or 6 digit hex code starting with `#`.
+
+```go
+{{ $image.Resize "600x jpg #b31280" }}
+```
+
+For color codes, see https://www.google.com/search?q=color+picker
+
+**Note** that you also set a default background color to use, see [Image Processing Config](#image-processing-config).
+
+### JPEG and WebP Quality
+
+Only relevant for JPEG and WebP images, values 1 to 100 inclusive, higher is better. Default is 75.
+
+```go
+{{ $image.Resize "600x q50" }}
+```
+
+{{< new-in "0.83.0" >}} WebP support was added in Hugo 0.83.0.
+
+### Hint
+
+ {{< new-in "0.83.0" >}}
+
+ {{< new-in "0.83.0" >}}
+
+Hint about what type of image this is. Currently only used when encoding to WebP.
+
+Default value is `photo`.
+
+Valid values are `picture`, `photo`, `drawing`, `icon`, or `text`.
+
+```go
+{{ $image.Resize "600x webp drawing" }}
+```
+
+### Rotate
+
+Rotates an image by the given angle counter-clockwise. The rotation will be performed first to get the dimensions correct. The main use of this is to be able to manually correct for [EXIF orientation](https://github.com/golang/go/issues/4341) of JPEG images.
+
+```go
+{{ $image.Resize "600x r90" }}
+```
+
+### Anchor
+
+Only relevant for the `Fill` method. This is useful for thumbnail generation where the main motive is located in, say, the left corner.
+
+Valid values are `Smart`, `Center`, `TopLeft`, `Top`, `TopRight`, `Left`, `Right`, `BottomLeft`, `Bottom`, `BottomRight`.
+
+Default value is `Smart`, which uses [Smartcrop](https://github.com/muesli/smartcrop) to determine the best crop.
+
+```go
+{{ $image.Fill "300x200 BottomLeft" }}
+```
+
+### Resample Filter
+
+Filter used in resizing. Default is `Box`, a simple and fast resampling filter appropriate for downscaling.
+
+Examples are: `Box`, `NearestNeighbor`, `Linear`, `Gaussian`.
+
+See https://github.com/disintegration/imaging for more. If you want to trade quality for faster processing, this may be a option to test.
+
+```go
+{{ $image.Resize "600x400 Gaussian" }}
+```
+
+### Target Format
+
+By default the images is encoded in the source format, but you can set the target format as an option.
+
+Valid values are `bmp`, `gif`, `jpeg`, `jpg`, `png`, `tif`, `tiff`, and `webp`.
+
+```go
+{{ $image.Resize "600x jpg" }}
+```
+
+{{< new-in "0.83.0" >}} WebP support was added in Hugo 0.83.0.
+
+## Image Processing Examples
+
+_The photo of the sunset used in the examples below is Copyright [Bjørn Erik Pedersen](https://commons.wikimedia.org/wiki/User:Bep) (Creative Commons Attribution-Share Alike 4.0 International license)_
+
+{{< imgproc sunset Resize "300x" />}}
+
+{{< imgproc sunset Fill "90x120 left" />}}
+
+{{< imgproc sunset Fill "90x120 right" />}}
+
+{{< imgproc sunset Fit "90x90" />}}
+
+{{< imgproc sunset Resize "300x q10" />}}
+
+This is the shortcode used in the examples above:
+
+{{< code file="layouts/shortcodes/imgproc.html" >}}
+{{< readfile file="layouts/shortcodes/imgproc.html" >}}
+{{< /code >}}
+
+And it is used like this:
+
+```go-html-template
+{{</* imgproc sunset Resize "300x" /*/>}}
+```
+
+{{% note %}}
+**Tip:** Note the self-closing shortcode syntax above. The `imgproc` shortcode can be called both with and without **inner content**.
+{{% /note %}}
+
+## Image Processing Config
+
+You can configure an `imaging` section in `config.toml` with default image processing options:
+
+```toml
+[imaging]
+# Default resample filter used for resizing. Default is Box,
+# a simple and fast averaging filter appropriate for downscaling.
+# See https://github.com/disintegration/imaging
+resampleFilter = "box"
+
+# Default JPEG or WebP quality setting. Default is 75.
+quality = 75
+
+# Default hint about what type of image. Currently only used for WebP encoding.
+# Default is "photo".
+# Valid values are "picture", "photo", "drawing", "icon", or "text".
+hint = "photo"
+
+# Anchor used when cropping pictures.
+# Default is "smart" which does Smart Cropping, using https://github.com/muesli/smartcrop
+# Smart Cropping is content aware and tries to find the best crop for each image.
+# Valid values are Smart, Center, TopLeft, Top, TopRight, Left, Right, BottomLeft, Bottom, BottomRight
+anchor = "smart"
+
+# Default background color.
+# Hugo will preserve transparency for target formats that supports it,
+# but will fall back to this color for JPEG.
+# Expects a standard HEX color string with 3 or 6 digits.
+# See https://www.google.com/search?q=color+picker
+bgColor = "#ffffff"
+
+[imaging.exif]
+ # Regexp matching the fields you want to Exclude from the (massive) set of Exif info
+# available. As we cache this info to disk, this is for performance and
+# disk space reasons more than anything.
+# If you want it all, put ".*" in this config setting.
+# Note that if neither this or ExcludeFields is set, Hugo will return a small
+# default set.
+includeFields = ""
+
+# Regexp matching the Exif fields you want to exclude. This may be easier to use
+# than IncludeFields above, depending on what you want.
+excludeFields = ""
+
+# Hugo extracts the "photo taken" date/time into .Date by default.
+# Set this to true to turn it off.
+disableDate = false
+
+# Hugo extracts the "photo taken where" (GPS latitude and longitude) into
+# .Long and .Lat. Set this to true to turn it off.
+disableLatLong = false
+```
+
+## Smart Cropping of Images
+
+By default, Hugo will use [Smartcrop](https://github.com/muesli/smartcrop), a library created by [muesli](https://github.com/muesli), when cropping images with `.Fill`. You can set the anchor point manually, but in most cases the smart option will make a good choice. And we will work with the library author to improve this in the future.
+
+An example using the sunset image from above:
+
+{{< imgproc sunset Fill "200x200 smart" />}}
+
+## Image Processing Performance Consideration
+
+Processed images are stored below `<project-dir>/resources` (can be set with `resourceDir` config setting). This folder is deliberately placed in the project, as it is recommended to check these into source control as part of the project. These images are not "Hugo fast" to generate, but once generated they can be reused.
+
+If you change your image settings (e.g. size), remove or rename images etc., you will end up with unused images taking up space and cluttering your project.
+
+To clean up, run:
+
+```bash
+hugo --gc
+```
+
+{{% note %}}
+**GC** is short for **Garbage Collection**.
+{{% /note %}}
diff --git a/docs/content/en/content-management/image-processing/sunset.jpg b/docs/content/en/content-management/image-processing/sunset.jpg
new file mode 100644
index 000000000..4dbcc0836
--- /dev/null
+++ b/docs/content/en/content-management/image-processing/sunset.jpg
Binary files differ
diff --git a/docs/content/en/content-management/menus.md b/docs/content/en/content-management/menus.md
new file mode 100644
index 000000000..aefc99e00
--- /dev/null
+++ b/docs/content/en/content-management/menus.md
@@ -0,0 +1,133 @@
+---
+title: Menus
+linktitle: Menus
+description: Hugo has a simple yet powerful menu system.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-03-31
+categories: [content management]
+keywords: [menus]
+draft: false
+menu:
+ docs:
+ parent: "content-management"
+ weight: 120
+weight: 120
+aliases: [/extras/menus/]
+toc: true
+---
+
+{{% note "Lazy Blogger"%}}
+If all you want is a simple menu for your sections, see the ["Section Menu for Lazy Bloggers" in Menu Templates](/templates/menu-templates/#section-menu-for-lazy-bloggers).
+{{% /note %}}
+
+You can do this:
+
+* Place content in one or many menus
+* Handle nested menus with unlimited depth
+* Create menu entries without being attached to any content
+* Distinguish active element (and active branch)
+
+## What is a Menu in Hugo?
+
+A **menu** is a named array of menu entries accessible by name via the [`.Site.Menus` site variable][sitevars]. For example, you can access your site's `main` menu via `.Site.Menus.main`.
+
+{{% note "Menus on Multilingual Sites" %}}
+If you make use of the [multilingual feature](/content-management/multilingual/), you can define language-independent menus.
+{{% /note %}}
+
+See the [Menu Entry Properties][me-props] for all the variables and functions related to a menu entry.
+
+## Add content to menus
+
+Hugo allows you to add content to a menu via the content's [front matter](/content-management/front-matter/).
+
+### Simple
+
+If all you need to do is add an entry to a menu, the simple form works well.
+
+#### A Single Menu
+
+{{< code-toggle >}}
+menu: "main"
+{{< /code-toggle >}}
+
+#### Multiple Menus
+
+{{< code-toggle >}}
+menu: ["main", "footer"]
+{{< /code-toggle >}}
+
+#### Advanced
+
+{{< code-toggle >}}
+menu:
+ docs:
+ parent: 'extras'
+ weight: 20
+{{< /code-toggle >}}
+
+## Add Non-content Entries to a Menu
+
+You can also add entries to menus that aren’t attached to a piece of content. This takes place in your Hugo project's [`config` file][config].
+
+Here’s an example snippet pulled from a configuration file:
+
+{{< code-toggle file="config" >}}
+[[menu.main]]
+ name = "about hugo"
+ pre = "<i class='fa fa-heart'></i>"
+ weight = -110
+ identifier = "about"
+ url = "/about/"
+[[menu.main]]
+ name = "getting started"
+ pre = "<i class='fa fa-road'></i>"
+ post = "<span class='alert'>New!</span>"
+ weight = -100
+ url = "/getting-started/"
+{{< /code-toggle >}}
+
+{{% note %}}
+The URLs must be relative to the context root. If the `baseURL` is `https://example.com/mysite/`, then the URLs in the menu must not include the context root `mysite`. Using an absolute URL will override the baseURL. If the value used for `URL` in the above example is `https://subdomain.example.com/`, the output will be `https://subdomain.example.com`.
+{{% /note %}}
+
+## Nesting
+
+All nesting of content is done via the `parent` field.
+
+The parent of an entry should be the identifier of another entry. The identifier should be unique (within a menu).
+
+The following order is used to determine an Identifier:
+
+`.Name > .LinkTitle > .Title`
+
+This means that `.Title` will be used unless `.LinkTitle` is present, etc. In practice, `.Name` and `.Identifier` are only used to structure relationships and therefore never displayed.
+
+In this example, the top level of the menu is defined in your [site `config` file][config]. All content entries are attached to one of these entries via the `.Parent` field.
+
+## Params
+
+You can also add user-defined content to menu items via the `params` field.
+
+A common use case is to define a custom param to add a css class to a specific menu item.
+
+{{< code-toggle file="config" >}}
+[[menu.main]]
+ name = "about hugo"
+ pre = "<i class='fa fa-heart'></i>"
+ weight = -110
+ identifier = "about"
+ url = "/about/"
+ [menu.main.params]
+ class = "highlight-menu-item"
+{{</ code-toggle >}}
+
+## Render Menus
+
+See [Menu Templates](/templates/menu-templates/) for information on how to render your site menus within your templates.
+
+[config]: /getting-started/configuration/
+[multilingual]: /content-management/multilingual/
+[sitevars]: /variables/
+[me-props]: /variables/menus/
diff --git a/docs/content/en/content-management/multilingual.md b/docs/content/en/content-management/multilingual.md
new file mode 100644
index 000000000..c24c0ccc4
--- /dev/null
+++ b/docs/content/en/content-management/multilingual.md
@@ -0,0 +1,582 @@
+---
+title: Multilingual Mode
+linktitle: Multilingual and i18n
+description: Hugo supports the creation of websites with multiple languages side by side.
+date: 2017-01-10
+publishdate: 2017-01-10
+lastmod: 2017-01-10
+categories: [content management]
+keywords: [multilingual,i18n, internationalization]
+menu:
+ docs:
+ parent: "content-management"
+ weight: 150
+weight: 150 #rem
+draft: false
+aliases: [/content/multilingual/,/tutorials/create-a-multilingual-site/]
+toc: true
+---
+
+You should define the available languages in a `languages` section in your site configuration.
+
+> Also See [Hugo Multilingual Part 1: Content translation]
+
+## Configure Languages
+
+The following is an example of a site configuration for a multilingual Hugo project:
+
+{{< code-toggle file="config" >}}
+defaultContentLanguage = "en"
+copyright = "Everything is mine"
+
+[params]
+[params.navigation]
+help = "Help"
+
+[languages]
+[languages.en]
+title = "My blog"
+weight = 1
+[languages.en.params]
+linkedin = "https://linkedin.com/whoever"
+
+[languages.fr]
+title = "Mon blogue"
+weight = 2
+[languages.fr.params]
+linkedin = "https://linkedin.com/fr/whoever"
+[languages.fr.params.navigation]
+help = "Aide"
+
+[languages.ar]
+title = "مدونتي"
+weight = 2
+languagedirection = "rtl"
+
+[languages.pt-pt]
+title = "O meu blog"
+weight = 3
+{{< /code-toggle >}}
+
+Anything not defined in a `languages` block will fall back to the global value for that key (e.g., `copyright` for the English `en` language). This also works for `params`, as demonstrated with `help` above: You will get the value `Aide` in French and `Help` in all the languages without this parameter set.
+
+With the configuration above, all content, sitemap, RSS feeds, paginations,
+and taxonomy pages will be rendered below `/` in English (your default content language) and then below `/fr` in French.
+
+When working with front matter `Params` in [single page templates], omit the `params` in the key for the translation.
+
+`defaultContentLanguage` sets the project's default language. If not set, the default language will be `en`.
+
+If the default language needs to be rendered below its own language code (`/en`) like the others, set `defaultContentLanguageInSubdir: true`.
+
+Only the obvious non-global options can be overridden per language. Examples of global options are `baseURL`, `buildDrafts`, etc.
+
+**Please note:** use lowercase language codes, even when using regional languages (ie. use pt-pt instead of pt-PT). Currently Hugo language internals lowercase language codes, which can cause conflicts with settings like `defaultContentLanguage` which are not lowercased. Please track the evolution of this issue in [Hugo repository issue tracker](https://github.com/gohugoio/hugo/issues/7344)
+
+### Disable a Language
+
+You can disable one or more languages. This can be useful when working on a new translation.
+
+{{< code-toggle file="config" >}}
+disableLanguages = ["fr", "ja"]
+{{< /code-toggle >}}
+
+Note that you cannot disable the default content language.
+
+We kept this as a standalone setting to make it easier to set via [OS environment]:
+
+```bash
+HUGO_DISABLELANGUAGES="fr ja" hugo
+```
+
+If you have already a list of disabled languages in `config.toml`, you can enable them in development like this:
+
+```bash
+HUGO_DISABLELANGUAGES=" " hugo server
+```
+
+### Configure Multilingual Multihost
+
+From **Hugo 0.31** we support multiple languages in a multihost configuration. See [this issue](https://github.com/gohugoio/hugo/issues/4027) for details.
+
+This means that you can now configure a `baseURL` per `language`:
+
+> If a `baseURL` is set on the `language` level, then all languages must have one and they must all be different.
+
+Example:
+
+{{< code-toggle file="config" >}}
+[languages]
+[languages.fr]
+baseURL = "https://example.fr"
+languageName = "Français"
+weight = 1
+title = "En Français"
+
+[languages.en]
+baseURL = "https://example.com"
+languageName = "English"
+weight = 2
+title = "In English"
+{{</ code-toggle >}}
+
+With the above, the two sites will be generated into `public` with their own root:
+
+```text
+public
+├── en
+└── fr
+```
+
+**All URLs (i.e `.Permalink` etc.) will be generated from that root. So the English home page above will have its `.Permalink` set to `https://example.com/`.**
+
+When you run `hugo server` we will start multiple HTTP servers. You will typically see something like this in the console:
+
+```text
+Web Server is available at 127.0.0.1:1313 (bind address 127.0.0.1)
+Web Server is available at 127.0.0.1:1314 (bind address 127.0.0.1)
+Press Ctrl+C to stop
+```
+
+Live reload and `--navigateToChanged` between the servers work as expected.
+
+### Taxonomies and Blackfriday
+
+Taxonomies and [Blackfriday configuration][config] can also be set per language:
+
+{{< code-toggle file="config" >}}
+[Taxonomies]
+tag = "tags"
+
+[blackfriday]
+angledQuotes = true
+hrefTargetBlank = true
+
+[languages]
+[languages.en]
+weight = 1
+title = "English"
+[languages.en.blackfriday]
+angledQuotes = false
+
+[languages.fr]
+weight = 2
+title = "Français"
+[languages.fr.Taxonomies]
+plaque = "plaques"
+{{</ code-toggle >}}
+
+## Translate Your Content
+
+There are two ways to manage your content translations. Both ensure each page is assigned a language and is linked to its counterpart translations.
+
+### Translation by filename
+
+Considering the following example:
+
+1. `/content/about.en.md`
+2. `/content/about.fr.md`
+
+The first file is assigned the English language and is linked to the second.
+The second file is assigned the French language and is linked to the first.
+
+Their language is __assigned__ according to the language code added as a __suffix to the filename__.
+
+By having the same **path and base filename**, the content pieces are __linked__ together as translated pages.
+
+{{< note >}}
+If a file has no language code, it will be assigned the default language.
+{{</ note >}}
+
+### Translation by content directory
+
+This system uses different content directories for each of the languages. Each language's content directory is set using the `contentDir` param.
+
+{{< code-toggle file="config" >}}
+languages:
+ en:
+ weight: 10
+ languageName: "English"
+ contentDir: "content/english"
+ fr:
+ weight: 20
+ languageName: "Français"
+ contentDir: "content/french"
+{{< /code-toggle >}}
+
+The value of `contentDir` can be any valid path -- even absolute path references. The only restriction is that the content directories cannot overlap.
+
+Considering the following example in conjunction with the configuration above:
+
+1. `/content/english/about.md`
+2. `/content/french/about.md`
+
+The first file is assigned the English language and is linked to the second.
+The second file is assigned the French language and is linked to the first.
+
+Their language is __assigned__ according to the content directory they are __placed__ in.
+
+By having the same **path and basename** (relative to their language content directory), the content pieces are __linked__ together as translated pages.
+
+### Bypassing default linking
+
+Any pages sharing the same `translationKey` set in front matter will be linked as translated pages regardless of basename or location.
+
+Considering the following example:
+
+1. `/content/about-us.en.md`
+2. `/content/om.nn.md`
+3. `/content/presentation/a-propos.fr.md`
+
+{{< code-toggle >}}
+translationKey: "about"
+{{< /code-toggle >}}
+
+By setting the `translationKey` front matter param to `about` in all three pages, they will be __linked__ as translated pages.
+
+### Localizing permalinks
+
+Because paths and filenames are used to handle linking, all translated pages will share the same URL (apart from the language subdirectory).
+
+To localize the URLs, the [`slug`]({{< ref "/content-management/organization/index.md#slug" >}}) or [`url`]({{< ref "/content-management/organization/index.md#url" >}}) front matter param can be set in any of the non-default language file.
+
+For example, a French translation (`content/about.fr.md`) can have its own localized slug.
+
+{{< code-toggle >}}
+Title: A Propos
+slug: "a-propos"
+{{< /code-toggle >}}
+
+At render, Hugo will build both `/about/` and `/fr/a-propos/` while maintaining their translation linking.
+
+{{% note %}}
+If using `url`, remember to include the language part as well: `/fr/compagnie/a-propos/`.
+{{%/ note %}}
+
+### Page Bundles
+
+To avoid the burden of having to duplicate files, each Page Bundle inherits the resources of its linked translated pages' bundles except for the content files (markdown files, html files etc...).
+
+Therefore, from within a template, the page will have access to the files from all linked pages' bundles.
+
+If, across the linked bundles, two or more files share the same basename, only one will be included and chosen as follows:
+
+* File from current language bundle, if present.
+* First file found across bundles by order of language `Weight`.
+
+{{% note %}}
+Page Bundle resources follow the same language assignment logic as content files, both by filename (`image.jpg`, `image.fr.jpg`) and by directory (`english/about/header.jpg`, `french/about/header.jpg`).
+{{%/ note %}}
+
+## Reference the Translated Content
+
+To create a list of links to translated content, use a template similar to the following:
+
+{{< code file="layouts/partials/i18nlist.html" >}}
+{{ if .IsTranslated }}
+<h4>{{ i18n "translations" }}</h4>
+<ul>
+ {{ range .Translations }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Lang }}: {{ .Title }}{{ if .IsPage }} ({{ i18n "wordCount" . }}){{ end }}</a>
+ </li>
+ {{ end }}
+</ul>
+{{ end }}
+{{< /code >}}
+
+The above can be put in a `partial` (i.e., inside `layouts/partials/`) and included in any template, whether a [single content page][contenttemplate] or the [homepage]. It will not print anything if there are no translations for a given page.
+
+The above also uses the [`i18n` function][i18func] described in the next section.
+
+### List All Available Languages
+
+`.AllTranslations` on a `Page` can be used to list all translations, including the page itself. On the home page it can be used to build a language navigator:
+
+{{< code file="layouts/partials/allLanguages.html" >}}
+<ul>
+{{ range $.Site.Home.AllTranslations }}
+<li><a href="{{ .Permalink }}">{{ .Language.LanguageName }}</a></li>
+{{ end }}
+</ul>
+{{< /code >}}
+
+## Translation of Strings
+
+Hugo uses [go-i18n] to support string translations. [See the project's source repository][go-i18n-source] to find tools that will help you manage your translation workflows.
+
+Translations are collected from the `themes/<THEME>/i18n/` folder (built into the theme), as well as translations present in `i18n/` at the root of your project. In the `i18n`, the translations will be merged and take precedence over what is in the theme folder. Language files should be named according to [RFC 5646] with names such as `en-US.toml`, `fr.toml`, etc.
+
+Artificial languages with private use subtags as defined in [RFC 5646 &#167; 2.2.7](https://datatracker.ietf.org/doc/html/rfc5646#section-2.2.7) are also supported. You may omit the `art-x-` prefix for brevity. For example:
+
+```text
+art-x-hugolang
+hugolang
+```
+
+Private use subtags must not exceed 8 alphanumeric characters.
+
+### Query basic translation
+
+From within your templates, use the `i18n` function like this:
+
+```go-html-template
+{{ i18n "home" }}
+```
+
+The function will search for the `"home"` id:
+
+{{< code-toggle file="i18n/en-US" >}}
+[home]
+other = "Home"
+{{< /code-toggle >}}
+
+The result will be
+
+```text
+Home
+```
+
+### Query a flexible translation with variables
+
+Often you will want to use the page variables in the translation strings. To do so, pass the `.` context when calling `i18n`:
+
+```go-html-template
+{{ i18n "wordCount" . }}
+```
+
+The function will pass the `.` context to the `"wordCount"` id:
+
+{{< code-toggle file="i18n/en-US" >}}
+[wordCount]
+other = "This article has {{ .WordCount }} words."
+{{< /code-toggle >}}
+
+Assume `.WordCount` in the context has value is 101. The result will be:
+
+```text
+This article has 101 words.
+```
+
+### Query a singular/plural translation
+
+In order to meet singular/plural requirement, you must pass a dictionary (map) with a numeric `.Count` property to the `i18n` function. The below example uses `.ReadingTime` variable which has a built-in `.Count` property.
+
+```go-html-template
+{{ i18n "readingTime" .ReadingTime }}
+```
+
+The function will read `.Count` from `.ReadingTime` and evaluate where the number is singular (`one`) or plural (`other`). After that, it will pass to `readingTime` id:
+
+{{< code-toggle file="i18n/en-US" >}}
+[readingTime]
+one = "One minute to read"
+other = "{{.Count}} minutes to read"
+{{< /code-toggle >}}
+
+Assume `.ReadingTime.Count` in the context has value of 525600. The result will be:
+
+```text
+525600 minutes to read
+```
+
+If `.ReadingTime.Count` in the context has value is 1. The result is:
+
+```text
+One minute to read
+```
+
+In case you need to pass custom data: (`(dict "Count" 25)` is minimum requirement)
+
+```go-html-template
+{{ i18n "readingTime" (dict "Count" 25 "FirstArgument" true "SecondArgument" false "Etc" "so on, so far") }}
+```
+
+## Localization
+
+The following localization examples assume your site's primary language is English, with translations to French and German.
+
+{{< code-toggle file="config" >}}
+defaultContentLang = 'en'
+
+[languages]
+[languages.en]
+contentDir = 'content/en'
+languageName = 'English'
+weight = 1
+[languages.fr]
+contentDir = 'content/fr'
+languageName = 'Français'
+weight = 2
+[languages.de]
+contentDir = 'content/de'
+languageName = 'Deutsch'
+weight = 3
+
+{{< /code-toggle >}}
+
+### Dates
+
+With this front matter:
+
+{{< code-toggle >}}
+date = 2021-11-03T12:34:56+01:00
+{{< /code-toggle >}}
+
+And this template code:
+
+```go-html-template
+{{ .Date | time.Format ":date_full" }}
+```
+
+The rendered page displays:
+
+Language|Value
+:--|:--
+English|Wednesday, November 3, 2021
+Français|mercredi 3 novembre 2021
+Deutsch|Mittwoch, 3. November 2021
+
+See [time.Format] for details.
+
+### Currency
+
+With this template code:
+
+```go-html-template
+{{ 512.5032 | lang.FormatCurrency 2 "USD" }}
+```
+
+The rendered page displays:
+
+Language|Value
+:--|:--
+English|$512.50
+Français|512,50 $US
+Deutsch|512,50 $
+
+See [lang.FormatCurrency] and [lang.FormatAccounting] for details.
+
+### Numbers
+
+With this template code:
+
+```go-html-template
+{{ 512.5032 | lang.FormatNumber 2 }}
+```
+
+The rendered page displays:
+
+Language|Value
+:--|:--
+English|512.50
+Français|512,50
+Deutsch|512,50
+
+See [lang.FormatNumber] and [lang.FormatNumberCustom] for details.
+
+### Percentages
+
+With this template code:
+
+```go-html-template
+{{ 512.5032 | lang.FormatPercent 2 }} ---> 512.50%
+```
+
+The rendered page displays:
+
+Language|Value
+:--|:--
+English|512.50%
+Français|512,50 %
+Deutsch|512,50 %
+
+See [lang.FormatPercent] for details.
+
+## Menus
+
+You can define your menus for each language independently. Creating multilingual menus works just like [creating regular menus][menus], except they're defined in language-specific blocks in the configuration file:
+
+{{< code-toggle file="config" >}}
+defaultContentLanguage = "en"
+
+[languages.en]
+weight = 0
+languageName = "English"
+
+[[languages.en.menu.main]]
+url = "/"
+name = "Home"
+weight = 0
+
+[languages.de]
+weight = 10
+languageName = "Deutsch"
+
+[[languages.de.menu.main]]
+url = "/"
+name = "Startseite"
+weight = 0
+{{< /code-toggle >}}
+
+The rendering of the main navigation works as usual. `.Site.Menus` will just contain the menu in the current language. Note that `absLangURL` below will link to the correct locale of your website. Without it, menu entries in all languages would link to the English version, since it's the default content language that resides in the root directory.
+
+```go-html-template
+<ul>
+ {{- $currentPage := . -}}
+ {{ range .Site.Menus.main -}}
+ <li class="{{ if $currentPage.IsMenuCurrent "main" . }}active{{ end }}">
+ <a href="{{ .URL | absLangURL }}">{{ .Name }}</a>
+ </li>
+ {{- end }}
+</ul>
+```
+
+## Missing Translations
+
+If a string does not have a translation for the current language, Hugo will use the value from the default language. If no default value is set, an empty string will be shown.
+
+While translating a Hugo website, it can be handy to have a visual indicator of missing translations. The [`enableMissingTranslationPlaceholders` configuration option][config] will flag all untranslated strings with the placeholder `[i18n] identifier`, where `identifier` is the id of the missing translation.
+
+{{% note %}}
+Hugo will generate your website with these missing translation placeholders. It might not be suitable for production environments.
+{{% /note %}}
+
+For merging of content from other languages (i.e. missing content translations), see [lang.Merge].
+
+To track down missing translation strings, run Hugo with the `--i18n-warnings` flag:
+
+```bash
+hugo --i18n-warnings | grep i18n
+i18n|MISSING_TRANSLATION|en|wordCount
+```
+
+## Multilingual Themes support
+
+To support Multilingual mode in your themes, some considerations must be taken for the URLs in the templates. If there is more than one language, URLs must meet the following criteria:
+
+* Come from the built-in `.Permalink` or `.RelPermalink`
+* Be constructed with the [`relLangURL` template function][rellangurl] or the [`absLangURL` template function][abslangurl] **OR** be prefixed with `{{ .LanguagePrefix }}`
+
+If there is more than one language defined, the `LanguagePrefix` variable will equal `/en` (or whatever your `CurrentLanguage` is). If not enabled, it will be an empty string (and is therefore harmless for single-language Hugo websites).
+
+[abslangurl]: /functions/abslangurl
+[config]: /getting-started/configuration/
+[contenttemplate]: /templates/single-page-templates/
+[go-i18n-source]: https://github.com/nicksnyder/go-i18n
+[go-i18n]: https://github.com/nicksnyder/go-i18n
+[homepage]: /templates/homepage/
+[Hugo Multilingual Part 1: Content translation]: https://regisphilibert.com/blog/2018/08/hugo-multilingual-part-1-managing-content-translation/
+[i18func]: /functions/i18n/
+[lang.FormatAccounting]: /functions/lang/#langformataccounting
+[lang.FormatCurrency]: /functions/lang/#langformatcurrency
+[lang.FormatNumber]: /functions/lang/#langformatnumber
+[lang.FormatNumberCustom]: functions/lang/#langformatnumbercustom
+[lang.FormatPercent]: /functions/lang/#langformatpercent
+[lang.Merge]: /functions/lang.merge/
+[menus]: /content-management/menus/
+[OS environment]: /getting-started/configuration/#configure-with-environment-variables
+[rellangurl]: /functions/rellangurl
+[RFC 5646]: https://tools.ietf.org/html/rfc5646
+[single page templates]: /templates/single-page-templates/
+[time.Format]: /functions/dateformat
diff --git a/docs/content/en/content-management/organization/1-featured-content-bundles.png b/docs/content/en/content-management/organization/1-featured-content-bundles.png
new file mode 100644
index 000000000..501e671e2
--- /dev/null
+++ b/docs/content/en/content-management/organization/1-featured-content-bundles.png
Binary files differ
diff --git a/docs/content/en/content-management/organization/index.md b/docs/content/en/content-management/organization/index.md
new file mode 100644
index 000000000..10e22c2d3
--- /dev/null
+++ b/docs/content/en/content-management/organization/index.md
@@ -0,0 +1,240 @@
+---
+title: Content Organization
+linktitle: Organization
+description: Hugo assumes that the same structure that works to organize your source content is used to organize the rendered site.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [content management,fundamentals]
+keywords: [sections,content,organization,bundle,resources]
+menu:
+ docs:
+ parent: "content-management"
+ weight: 10
+weight: 10 #rem
+draft: false
+aliases: [/content/sections/]
+toc: true
+---
+
+## Page Bundles
+
+Hugo `0.32` announced page-relative images and other resources packaged into `Page Bundles`.
+
+These terms are connected, and you also need to read about [Page Resources]({{< relref "/content-management/page-resources" >}}) and [Image Processing]({{< relref "/content-management/image-processing" >}}) to get the full picture.
+
+{{< imgproc 1-featured Resize "300x" >}}
+The illustration shows three bundles. Note that the home page bundle cannot contain other content pages, although other files (images etc.) are allowed.
+{{< /imgproc >}}
+
+
+{{% note %}}
+The bundle documentation is a **work in progress**. We will publish more comprehensive docs about this soon.
+{{% /note %}}
+
+
+## Organization of Content Source
+
+
+In Hugo, your content should be organized in a manner that reflects the rendered website.
+
+While Hugo supports content nested at any level, the top levels (i.e. `content/<DIRECTORIES>`) are special in Hugo and are considered the content type used to determine layouts etc. To read more about sections, including how to nest them, see [sections][].
+
+Without any additional configuration, the following will automatically work:
+
+```
+.
+└── content
+ └── about
+ | └── index.md // <- https://example.com/about/
+ ├── posts
+ | ├── firstpost.md // <- https://example.com/posts/firstpost/
+ | ├── happy
+ | | └── ness.md // <- https://example.com/posts/happy/ness/
+ | └── secondpost.md // <- https://example.com/posts/secondpost/
+ └── quote
+ ├── first.md // <- https://example.com/quote/first/
+ └── second.md // <- https://example.com/quote/second/
+```
+
+## Path Breakdown in Hugo
+
+
+The following demonstrates the relationships between your content organization and the output URL structure for your Hugo website when it renders. These examples assume you are [using pretty URLs][pretty], which is the default behavior for Hugo. The examples also assume a key-value of `baseURL = "https://example.com"` in your [site's configuration file][config].
+
+### Index Pages: `_index.md`
+
+`_index.md` has a special role in Hugo. It allows you to add front matter and content to your [list templates][lists]. These templates include those for [section templates][], [taxonomy templates][], [taxonomy terms templates][], and your [homepage template][].
+
+{{% note %}}
+**Tip:** You can get a reference to the content and metadata in `_index.md` using the [`.Site.GetPage` function](/functions/getpage/).
+{{% /note %}}
+
+You can create one `_index.md` for your homepage and one in each of your content sections, taxonomies, and taxonomy terms. The following shows typical placement of an `_index.md` that would contain content and front matter for a `posts` section list page on a Hugo website:
+
+
+```
+. url
+. ⊢--^-⊣
+. path slug
+. ⊢--^-⊣⊢---^---⊣
+. filepath
+. ⊢------^------⊣
+content/posts/_index.md
+```
+
+At build, this will output to the following destination with the associated values:
+
+```
+
+ url ("/posts/")
+ ⊢-^-⊣
+ baseurl section ("posts")
+⊢--------^---------⊣⊢-^-⊣
+ permalink
+⊢----------^-------------⊣
+https://example.com/posts/index.html
+```
+
+The [sections] can be nested as deeply as you want. The important thing to understand is that to make the section tree fully navigational, at least the lower-most section must include a content file. (i.e. `_index.md`).
+
+
+### Single Pages in Sections
+
+Single content files in each of your sections will be rendered as [single page templates][singles]. Here is an example of a single `post` within `posts`:
+
+
+```
+ path ("posts/my-first-hugo-post.md")
+. ⊢-----------^------------⊣
+. section slug
+. ⊢-^-⊣⊢--------^----------⊣
+content/posts/my-first-hugo-post.md
+```
+
+When Hugo builds your site, the content will be output to the following destination:
+
+```
+
+ url ("/posts/my-first-hugo-post/")
+ ⊢------------^----------⊣
+ baseurl section slug
+⊢--------^--------⊣⊢-^--⊣⊢-------^---------⊣
+ permalink
+⊢--------------------^---------------------⊣
+https://example.com/posts/my-first-hugo-post/index.html
+```
+
+
+## Paths Explained
+
+The following concepts provide more insight into the relationship between your project's organization and the default Hugo behavior when building output for the website.
+
+### `section`
+
+A default content type is determined by the section in which a content item is stored. `section` is determined by the location within the project's `content` directory. `section` *cannot* be specified or overridden in front matter.
+
+### `slug`
+
+A content's `slug` is either `name.extension` or `name/`. The value for `slug` is determined by
+
+* the name of the content file (e.g., `lollapalooza.md`) OR
+* front matter overrides
+
+### `path`
+
+A content's `path` is determined by the section's path to the file. The file `path`
+
+* is based on the path to the content's location AND
+* does not include the slug
+
+### `url`
+
+The `url` is the relative URL for the piece of content. The `url`
+
+* is based on the content item's location within the directory structure OR
+* is defined in front matter, in which case it *overrides all the above*
+
+## Override Destination Paths via Front Matter
+
+Hugo assumes that your content is organized with a purpose. The same structure that you use to organize your source content is used to organize the rendered site. As displayed above, the organization of the source content will be mirrored at the destination.
+
+There are times when you may need more fine-grained control over the content organization. In such cases, the front matter field can be used to determine the destination of a specific piece of content.
+
+The following items are defined in a specific order for a reason: items explained lower down in the list override higher items. Note that not all items can be defined in front matter.
+
+### `filename`
+
+`filename` is not a front matter field. It is the actual file name, minus the extension. This will be the name of the file in the destination (e.g., `content/posts/my-post.md` becomes `example.com/posts/my-post/`).
+
+### `slug`
+
+When defined in the front matter, the `slug` can take the place of the filename in the destination.
+
+{{< code file="content/posts/old-post.md" >}}
+---
+title: A new post with the filename old-post.md
+slug: "new-post"
+---
+{{< /code >}}
+
+This will render to the following destination according to Hugo's default behavior:
+
+```
+example.com/posts/new-post/
+```
+
+### `section`
+
+`section` is determined by a content item's location on disk and *cannot* be specified in the front matter. See [sections] for more information.
+
+### `type`
+
+A content item's `type` is also determined by its location on disk but, unlike `section`, it *can* be specified in the front matter. See [types]. This can come in especially handy when you want a piece of content to render using a different layout. In the following example, you can create a layout at `layouts/new/mylayout.html` that Hugo will use to render this piece of content, even in the midst of many other posts.
+
+{{< code file="content/posts/my-post.md" >}}
+---
+title: My Post
+type: new
+layout: mylayout
+---
+{{< /code >}}
+<!-- See https://discourse.gohugo.io/t/path-not-works/6387 -->
+<!-- ### `path`-->
+
+<!--`path` can be provided in the front matter. This will replace the actual path to the file on disk. Destination will create the destination with the same path, including the section. -->
+
+### `url`
+
+A complete URL can be provided. This will override all the above as it pertains to the end destination. This must be the path from the baseURL (starting with a `/`). `url` will be used exactly as it is defined in the front matter, and will ignore the `--uglyURLs` setting in your site configuration:
+
+{{< code file="content/posts/old-url.md" >}}
+---
+title: Old URL
+url: /blog/new-url/
+---
+{{< /code >}}
+
+Assuming your `baseURL` is [configured][config] to `https://example.com`, the addition of `url` to the front matter will make `old-url.md` render to the following destination:
+
+```
+https://example.com/blog/new-url/
+```
+
+You can see more information on how to control output paths in [URL Management][urls].
+
+[config]: /getting-started/configuration/
+[formats]: /content-management/formats/
+[front matter]: /content-management/front-matter/
+[getpage]: /functions/getpage/
+[homepage template]: /templates/homepage/
+[homepage]: /templates/homepage/
+[lists]: /templates/lists/
+[pretty]: /content-management/urls/#pretty-urls
+[section templates]: /templates/section-templates/
+[sections]: /content-management/sections/
+[singles]: /templates/single-page-templates/
+[taxonomy templates]: /templates/taxonomy-templates/
+[taxonomy terms templates]: /templates/taxonomy-templates/
+[types]: /content-management/types/
+[urls]: /content-management/urls/
diff --git a/docs/content/en/content-management/page-bundles.md b/docs/content/en/content-management/page-bundles.md
new file mode 100644
index 000000000..9561ea2e9
--- /dev/null
+++ b/docs/content/en/content-management/page-bundles.md
@@ -0,0 +1,188 @@
+---
+title : "Page Bundles"
+description : "Content organization using Page Bundles"
+date : 2018-01-24T13:09:00-05:00
+linktitle : "Page Bundles"
+keywords : ["page", "bundle", "leaf", "branch"]
+categories : ["content management"]
+toc : true
+menu :
+ docs:
+ identifier : "page-bundles"
+ parent : "content-management"
+ weight : 11
+---
+
+Page Bundles are a way to group [Page Resources](/content-management/page-resources/).
+
+A Page Bundle can be one of:
+
+- Leaf Bundle (leaf means it has no children)
+- Branch Bundle (home page, section, taxonomy terms, taxonomy list)
+
+| | Leaf Bundle | Branch Bundle |
+|-------------------------------------|----------------------------------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
+| Usage | Collection of content and attachments for single pages | Collection of attachments for section pages (home page, section, taxonomy terms, taxonomy list) |
+| Index file name | `index.md` [^fn:1] | `_index.md` [^fn:1] |
+| Allowed Resources | Page and non-page (like images, pdf, etc.) types | Only non-page (like images, pdf, etc.) types |
+| Where can the Resources live? | At any directory level within the leaf bundle directory. | Only in the directory level **of** the branch bundle directory i.e. the directory containing the `_index.md` ([ref](https://discourse.gohugo.io/t/question-about-content-folder-structure/11822/4?u=kaushalmodi)). |
+| Layout type | `single` | `list` |
+| Nesting | Does not allow nesting of more bundles under it | Allows nesting of leaf or branch bundles under it |
+| Example | `content/posts/my-post/index.md` | `content/posts/_index.md` |
+| Content from non-index page files... | Accessed only as page resources | Accessed only as regular pages |
+
+
+## Leaf Bundles {#leaf-bundles}
+
+A _Leaf Bundle_ is a directory at any hierarchy within the `content/`
+directory, that contains an **`index.md`** file.
+
+### Examples of Leaf Bundle organization {#examples-of-leaf-bundle-organization}
+
+```text
+content/
+├── about
+│ ├── index.md
+├── posts
+│ ├── my-post
+│ │ ├── content1.md
+│ │ ├── content2.md
+│ │ ├── image1.jpg
+│ │ ├── image2.png
+│ │ └── index.md
+│ └── my-other-post
+│    └── index.md
+│
+└── another-section
+ ├── ..
+    └── not-a-leaf-bundle
+ ├── ..
+    └── another-leaf-bundle
+    └── index.md
+```
+
+In the above example `content/` directory, there are four leaf
+bundles:
+
+about
+: This leaf bundle is at the root level (directly under
+ `content` directory) and has only the `index.md`.
+
+my-post
+: This leaf bundle has the `index.md`, two other content
+ Markdown files and two image files.
+
+image1
+: This image is a page resource of `my-post`
+ and only available in `my-post/index.md` resources.
+
+image2
+: This image is a page resource of `my-post`
+ and only available in `my-post/index.md` resources.
+
+my-other-post
+: This leaf bundle has only the `index.md`.
+
+another-leaf-bundle
+: This leaf bundle is nested under couple of
+ directories. This bundle also has only the `index.md`.
+
+{{% note %}}
+The hierarchy depth at which a leaf bundle is created does not matter,
+as long as it is not inside another **leaf** bundle.
+{{% /note %}}
+
+
+### Headless Bundle {#headless-bundle}
+
+A headless bundle is a bundle that is configured to not get published
+anywhere:
+
+- It will have no `Permalink` and no rendered HTML in `public/`.
+- It will not be part of `.Site.RegularPages`, etc.
+
+But you can get it by `.Site.GetPage`. Here is an example:
+
+```go-html-template
+{{ $headless := .Site.GetPage "/some-headless-bundle" }}
+{{ $reusablePages := $headless.Resources.Match "author*" }}
+<h2>Authors</h2>
+{{ range $reusablePages }}
+ <h3>{{ .Title }}</h3>
+ {{ .Content }}
+{{ end }}
+```
+
+_In this example, we are assuming the `some-headless-bundle` to be a headless
+ bundle containing one or more **page** resources whose `.Name` matches
+ `"author*"`._
+
+Explanation of the above example:
+
+1. Get the `some-headless-bundle` Page "object".
+2. Collect a *slice* of resources in this *Page Bundle* that matches
+ `"author*"` using `.Resources.Match`.
+3. Loop through that *slice* of nested pages, and output their `.Title` and
+ `.Content`.
+
+---
+
+A leaf bundle can be made headless by adding below in the Front Matter
+(in the `index.md`):
+
+```toml
+headless = true
+```
+
+There are many use cases of such headless page bundles:
+
+- Shared media galleries
+- Reusable page content "snippets"
+
+
+## Branch Bundles {#branch-bundles}
+
+A _Branch Bundle_ is any directory at any hierarchy within the
+`content/` directory, that contains at least an **`_index.md`** file.
+
+This `_index.md` can also be directly under the `content/` directory.
+
+{{% note %}}
+Here `md` (markdown) is used just as an example. You can use any file
+type as a content resource as long as it is a content type recognized by Hugo.
+{{% /note %}}
+
+
+### Examples of Branch Bundle organization {#examples-of-branch-bundle-organization}
+
+```text
+content/
+├── branch-bundle-1
+│   ├── branch-content1.md
+│   ├── branch-content2.md
+│   ├── image1.jpg
+│   ├── image2.png
+│   └── _index.md
+└── branch-bundle-2
+ ├── _index.md
+ └── a-leaf-bundle
+ └── index.md
+```
+
+In the above example `content/` directory, there are two branch
+bundles (and a leaf bundle):
+
+`branch-bundle-1`
+: This branch bundle has the `_index.md`, two
+ other content Markdown files and two image files.
+
+`branch-bundle-2`
+: This branch bundle has the `_index.md` and a
+ nested leaf bundle.
+
+{{% note %}}
+The hierarchy depth at which a branch bundle is created does not
+matter.
+{{% /note %}}
+
+[^fn:1]: The `.md` extension is just an example. The extension can be `.html`, `.json` or any valid MIME type.
diff --git a/docs/content/en/content-management/page-resources.md b/docs/content/en/content-management/page-resources.md
new file mode 100644
index 000000000..9f2c0cfab
--- /dev/null
+++ b/docs/content/en/content-management/page-resources.md
@@ -0,0 +1,208 @@
+---
+title : "Page Resources"
+description : "Page resources -- images, other pages, documents, etc. -- have page-relative URLs and their own metadata."
+date: 2018-01-24
+categories: ["content management"]
+keywords: [bundle,content,resources]
+weight: 4003
+draft: false
+toc: true
+linktitle: "Page Resources"
+menu:
+ docs:
+ parent: "content-management"
+ weight: 31
+---
+Page resources are only accessible from [page bundles]({{< relref
+"/content-management/page-bundles" >}}), those directories with `index.md` or
+`_index.md` files at their root. Page resources are only available to the
+page with which they are bundled.
+
+In this example, `first-post` is a page bundle with access to 10 page resources including audio, data, documents, images, and video. Although `second-post` is also a page bundle, it has no page resources and is unable to directly access the page resources associated with `first-post`.
+
+```text
+content
+└── post
+ ├── first-post
+ │ ├── images
+ │ │ ├── a.jpg
+ │ │ ├── b.jpg
+ │ │ └── c.jpg
+ │ ├── index.md (root of page bundle)
+ │ ├── latest.html
+ │ ├── manual.json
+ │ ├── notice.md
+ │ ├── office.mp3
+ │ ├── pocket.mp4
+ │ ├── rating.pdf
+ │ └── safety.txt
+ └── second-post
+ └── index.md (root of page bundle)
+```
+
+## Properties
+
+ResourceType
+: The main type of the resource's [Media Type](/templates/output-formats/#media-types). For example, a file of MIME type `image/jpeg` has the ResourceType `image`. A `Page` will have `ResourceType` with value `page`.
+
+{{< new-in "0.80.0" >}} Note that we in Hugo `v0.80.0` fixed a bug where non-image resources (e.g. video) would return the MIME sub type, e.g. `json`.
+
+Name
+: Default value is the filename (relative to the owning page). Can be set in front matter.
+
+Title
+: Default value is the same as `.Name`. Can be set in front matter.
+
+Permalink
+: The absolute URL to the resource. Resources of type `page` will have no value.
+
+RelPermalink
+: The relative URL to the resource. Resources of type `page` will have no value.
+
+Content
+: The content of the resource itself. For most resources, this returns a string
+with the contents of the file. Use this to create inline resources.
+
+```go-html-template
+{{ with .Resources.GetMatch "script.js" }}
+ <script>{{ .Content | safeJS }}</script>
+{{ end }}
+
+{{ with .Resources.GetMatch "style.css" }}
+ <style>{{ .Content | safeCSS }}</style>
+{{ end }}
+
+{{ with .Resources.GetMatch "img.png" }}
+ <img src="data:{{ .MediaType }};base64,{{ .Content | base64Encode }}">
+{{ end }}
+```
+
+MediaType
+: The MIME type of the resource, such as `image/jpeg`.
+
+MediaType.MainType
+: The main type of the resource's MIME type. For example, a file of MIME type `application/pdf` has for MainType `application`.
+
+MediaType.SubType
+: The subtype of the resource's MIME type. For example, a file of MIME type `application/pdf` has for SubType `pdf`. Note that this is not the same as the file extension - PowerPoint files have a subtype of `vnd.mspowerpoint`.
+
+MediaType.Suffixes
+: A slice of possible suffixes for the resource's MIME type.
+
+## Methods
+ByType
+: Returns the page resources of the given type.
+
+```go
+{{ .Resources.ByType "image" }}
+```
+Match
+: Returns all the page resources (as a slice) whose `Name` matches the given Glob pattern ([examples](https://github.com/gobwas/glob/blob/master/readme.md)). The matching is case-insensitive.
+
+```go
+{{ .Resources.Match "images/*" }}
+```
+
+GetMatch
+: Same as `Match` but will return the first match.
+
+### Pattern Matching
+```go
+// Using Match/GetMatch to find this images/sunset.jpg ?
+.Resources.Match "images/sun*" ✅
+.Resources.Match "**/sunset.jpg" ✅
+.Resources.Match "images/*.jpg" ✅
+.Resources.Match "**.jpg" ✅
+.Resources.Match "*" 🚫
+.Resources.Match "sunset.jpg" 🚫
+.Resources.Match "*sunset.jpg" 🚫
+
+```
+
+## Page Resources Metadata
+
+The page resources' metadata is managed from the corresponding page's front matter with an array/table parameter named `resources`. You can batch assign values using [wildcards](https://tldp.org/LDP/GNU-Linux-Tools-Summary/html/x11655.htm).
+
+{{% note %}}
+Resources of type `page` get `Title` etc. from their own front matter.
+{{% /note %}}
+
+name
+: Sets the value returned in `Name`.
+
+{{% warning %}}
+The methods `Match` and `GetMatch` use `Name` to match the resources.
+{{%/ warning %}}
+
+title
+: Sets the value returned in `Title`
+
+params
+: A map of custom key/values.
+
+
+### Resources metadata example
+
+{{< code-toggle copy="false">}}
+title: Application
+date : 2018-01-25
+resources :
+- src : "images/sunset.jpg"
+ name : "header"
+- src : "documents/photo_specs.pdf"
+ title : "Photo Specifications"
+ params:
+ icon : "photo"
+- src : "documents/guide.pdf"
+ title : "Instruction Guide"
+- src : "documents/checklist.pdf"
+ title : "Document Checklist"
+- src : "documents/payment.docx"
+ title : "Proof of Payment"
+- src : "**.pdf"
+ name : "pdf-file-:counter"
+ params :
+ icon : "pdf"
+- src : "**.docx"
+ params :
+ icon : "word"
+{{</ code-toggle >}}
+
+From the example above:
+
+- `sunset.jpg` will receive a new `Name` and can now be found with `.GetMatch "header"`.
+- `documents/photo_specs.pdf` will get the `photo` icon.
+- `documents/checklist.pdf`, `documents/guide.pdf` and `documents/payment.docx` will get `Title` as set by `title`.
+- Every `PDF` in the bundle except `documents/photo_specs.pdf` will get the `pdf` icon.
+- All `PDF` files will get a new `Name`. The `name` parameter contains a special placeholder [`:counter`](#the-counter-placeholder-in-name-and-title), so the `Name` will be `pdf-file-1`, `pdf-file-2`, `pdf-file-3`.
+- Every docx in the bundle will receive the `word` icon.
+
+{{% warning %}}
+The __order matters__ --- Only the **first set** values of the `title`, `name` and `params`-**keys** will be used. Consecutive parameters will be set only for the ones not already set. In the above example, `.Params.icon` is first set to `"photo"` in `src = "documents/photo_specs.pdf"`. So that would not get overridden to `"pdf"` by the later set `src = "**.pdf"` rule.
+{{%/ warning %}}
+
+### The `:counter` placeholder in `name` and `title`
+
+The `:counter` is a special placeholder recognized in `name` and `title` parameters `resources`.
+
+The counter starts at 1 the first time they are used in either `name` or `title`.
+
+For example, if a bundle has the resources `photo_specs.pdf`, `other_specs.pdf`, `guide.pdf` and `checklist.pdf`, and the front matter has specified the `resources` as:
+
+{{< code-toggle copy="false">}}
+[[resources]]
+ src = "*specs.pdf"
+ title = "Specification #:counter"
+[[resources]]
+ src = "**.pdf"
+ name = "pdf-file-:counter"
+{{</ code-toggle >}}
+
+the `Name` and `Title` will be assigned to the resource files as follows:
+
+| Resource file | `Name` | `Title` |
+|-------------------|-------------------|-----------------------|
+| checklist.pdf | `"pdf-file-1.pdf` | `"checklist.pdf"` |
+| guide.pdf | `"pdf-file-2.pdf` | `"guide.pdf"` |
+| other\_specs.pdf | `"pdf-file-3.pdf` | `"Specification #1"` |
+| photo\_specs.pdf | `"pdf-file-4.pdf` | `"Specification #2"` |
diff --git a/docs/content/en/content-management/related.md b/docs/content/en/content-management/related.md
new file mode 100644
index 000000000..a42cec32e
--- /dev/null
+++ b/docs/content/en/content-management/related.md
@@ -0,0 +1,137 @@
+---
+title: Related Content
+description: List related content in "See Also" sections.
+date: 2017-09-05
+categories: [content management]
+keywords: [content]
+menu:
+ docs:
+ parent: "content-management"
+ weight: 40
+weight: 30
+draft: false
+aliases: [/content/related/,/related/]
+toc: true
+---
+
+
+Hugo uses a set of factors to identify a page's related content based on Front Matter parameters. This can be tuned to the desired set of indices and parameters or left to Hugo's default [Related Content configuration](#configure-related-content).
+
+## List Related Content
+
+
+To list up to 5 related pages (which share the same _date_ or _keyword_ parameters) is as simple as including something similar to this partial in your single page template:
+
+{{< code file="layouts/partials/related.html" >}}
+{{ $related := .Site.RegularPages.Related . | first 5 }}
+{{ with $related }}
+<h3>See Also</h3>
+<ul>
+ {{ range . }}
+ <li><a href="{{ .RelPermalink }}">{{ .Title }}</a></li>
+ {{ end }}
+</ul>
+{{ end }}
+{{< /code >}}
+
+### Methods
+
+Here is the list of "Related" methods available on a page collection such `.RegularPages`.
+
+#### .Related PAGE
+Returns a collection of pages related the given one.
+
+```
+{{ $related := .Site.RegularPages.Related . }}
+```
+
+#### .RelatedIndices PAGE INDICE1 [INDICE2 ...]
+Returns a collection of pages related to a given one restricted to a list of indices.
+
+```
+{{ $related := .Site.RegularPages.RelatedIndices . "tags" "date" }}
+```
+
+#### .RelatedTo KEYVALS [KEYVALS2 ...]
+Returns a collection of pages related together by a set of indices and their match.
+
+In order to build those set and pass them as argument, one must use the `keyVals` function where the first argument would be the `indice` and the consecutive ones its potential `matches`.
+
+```
+{{ $related := .Site.RegularPages.RelatedTo ( keyVals "tags" "hugo" "rocks") ( keyVals "date" .Date ) }}
+```
+
+{{% note %}}
+Read [this blog article](https://regisphilibert.com/blog/2018/04/hugo-optmized-relashionships-with-related-content/) for a great explanation of more advanced usage of this feature.
+{{% /note %}}
+
+## Configure Related Content
+Hugo provides a sensible default configuration of Related Content, but you can fine-tune this in your configuration, on the global or language level if needed.
+
+### Default configuration
+
+Without any `related` configuration set on the project, Hugo's Related Content methods will use the following.
+
+{{< code-toggle file="config" >}}
+related:
+ threshold: 80
+ includeNewer: false
+ toLower: false
+ indices:
+ - name: keywords
+ weight: 100
+ - name: date
+ weight: 10
+{{< /code-toggle >}}
+
+Note that if you have configured `tags` as a taxonomy, `tags` will also be added to the default configuration above with the weight of `80`.
+
+Custom configuration should be set using the same syntax.
+
+{{% note %}}
+If you add a `related` config section, you need to add a complete configuration. It is not possible to just set, say, `includeNewer` and use the rest from the Hugo defaults.
+{{% /note %}}
+
+### Top Level Config Options
+
+threshold
+: A value between 0-100. Lower value will give more, but maybe not so relevant, matches.
+
+includeNewer
+: Set to true to include **pages newer than the current page** in the related content listing. This will mean that the output for older posts may change as new related content gets added.
+
+toLower
+: Set to true to lower case keywords in both the indexes and the queries. This may give more accurate results at a slight performance penalty. Note that this can also be set per index.
+
+### Config Options per Index
+
+name
+: The index name. This value maps directly to a page param. Hugo supports string values (`author` in the example) and lists (`tags`, `keywords` etc.) and time and date objects.
+
+weight
+: An integer weight that indicates _how important_ this parameter is relative to the other parameters. It can be 0, which has the effect of turning this index off, or even negative. Test with different values to see what fits your content best.
+
+pattern
+: This is currently only relevant for dates. When listing related content, we may want to list content that is also close in time. Setting "2006" (default value for date indexes) as the pattern for a date index will add weight to pages published in the same year. For busier blogs, "200601" (year and month) may be a better default.
+
+toLower
+: See above.
+
+## Performance Considerations
+
+**Fast is Hugo's middle name** and we would not have released this feature had it not been blistering fast.
+
+This feature has been in the back log and requested by many for a long time. The development got this recent kick start from this Twitter thread:
+
+{{< tweet user="scott_lowe" id="898398437527363585" >}}
+
+Scott S. Lowe removed the "Related Content" section built using the `intersect` template function on tags, and the build time dropped from 30 seconds to less than 2 seconds on his 1700 content page sized blog.
+
+He should now be able to add an improved version of that "Related Content" section without giving up the fast live-reloads. But it's worth noting that:
+
+* If you don't use any of the `Related` methods, you will not use the Relate Content feature, and performance will be the same as before.
+* Calling `.RegularPages.Related` etc. will create one inverted index, also sometimes named posting list, that will be reused for any lookups in that same page collection. Doing that in addition to, as an example, calling `.Pages.Related` will work as expected, but will create one additional inverted index. This should still be very fast, but worth having in mind, especially for bigger sites.
+
+{{% note %}}
+We currently do not index **Page content**. We thought we would release something that will make most people happy before we start solving [Sherlock's last case](https://github.com/joearms/sherlock).
+{{% /note %}}
diff --git a/docs/content/en/content-management/sections.md b/docs/content/en/content-management/sections.md
new file mode 100644
index 000000000..6806e342c
--- /dev/null
+++ b/docs/content/en/content-management/sections.md
@@ -0,0 +1,101 @@
+---
+title: Content Sections
+linktitle: Sections
+description: "Hugo generates a **section tree** that matches your content."
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [content management]
+keywords: [lists,sections,content types,organization]
+menu:
+ docs:
+ parent: "content-management"
+ weight: 50
+weight: 50 #rem
+draft: false
+aliases: [/content/sections/]
+toc: true
+---
+
+A **Section** is a collection of pages that gets defined based on the
+organization structure under the `content/` directory.
+
+By default, all the **first-level** directories under `content/` form their own
+sections (**root sections**) provided they constitute [Branch Bundles][branch bundles].
+Directories which are just [Leaf Bundles][leaf bundles] do *not* form
+their own sections, despite being first-level directories.
+
+If a user needs to define a section `foo` at a deeper level, they need to create
+a directory named `foo` with an `_index.md` file (see [Branch Bundles][branch bundles]
+for more information).
+
+
+{{% note %}}
+A **section** cannot be defined or overridden by a front matter parameter -- it
+is strictly derived from the content organization structure.
+{{% /note %}}
+
+## Nested Sections
+
+The sections can be nested as deeply as you need.
+
+```bash
+content
+└── blog <-- Section, because first-level dir under content/
+ ├── funny-cats
+ │   ├── mypost.md
+ │   └── kittens <-- Section, because contains _index.md
+ │   └── _index.md
+ └── tech <-- Section, because contains _index.md
+ └── _index.md
+```
+
+**The important part to understand is, that to make the section tree fully navigational, at least the lower-most section needs a content file. (e.g. `_index.md`).**
+
+{{% note %}}
+When we talk about a **section** in correlation with template selection, it is
+currently always the *root section* only (`/blog/funny-cats/mypost/ => blog`).
+
+If you need a specific template for a sub-section, you need to adjust either the `type` or `layout` in front matter.
+{{% /note %}}
+
+## Example: Breadcrumb Navigation
+
+With the available [section variables and methods](#section-page-variables-and-methods) you can build powerful navigation. One common example would be a partial to show Breadcrumb navigation:
+
+{{< code file="layouts/partials/breadcrumb.html" download="breadcrumb.html" >}}
+<ol class="nav navbar-nav">
+ {{ template "breadcrumbnav" (dict "p1" . "p2" .) }}
+</ol>
+{{ define "breadcrumbnav" }}
+{{ if .p1.Parent }}
+{{ template "breadcrumbnav" (dict "p1" .p1.Parent "p2" .p2 ) }}
+{{ else if not .p1.IsHome }}
+{{ template "breadcrumbnav" (dict "p1" .p1.Site.Home "p2" .p2 ) }}
+{{ end }}
+<li{{ if eq .p1 .p2 }} class="active"{{ end }}>
+ <a href="{{ .p1.Permalink }}">{{ .p1.Title }}</a>
+</li>
+{{ end }}
+{{< /code >}}
+
+## Section Page Variables and Methods
+
+Also see [Page Variables](/variables/page/).
+
+{{< readfile file="/content/en/readfiles/sectionvars.md" markdown="true" >}}
+
+## Content Section Lists
+
+Hugo will automatically create pages for each *root section* that list all of the content in that section. See the documentation on [section templates][] for details on customizing the way these pages are rendered.
+
+## Content *Section* vs Content *Type*
+
+By default, everything created within a section will use the [content `type`][content type] that matches the *root section* name. For example, Hugo will assume that `posts/post-1.md` has a `posts` content `type`. If you are using an [archetype][] for your `posts` section, Hugo will generate front matter according to what it finds in `archetypes/posts.md`.
+
+[archetype]: /content-management/archetypes/
+[content type]: /content-management/types/
+[directory structure]: /getting-started/directory-structure/
+[section templates]: /templates/section-templates/
+[leaf bundles]: /content-management/page-bundles/#leaf-bundles
+[branch bundles]: /content-management/page-bundles/#branch-bundles
diff --git a/docs/content/en/content-management/shortcodes.md b/docs/content/en/content-management/shortcodes.md
new file mode 100644
index 000000000..013532ce4
--- /dev/null
+++ b/docs/content/en/content-management/shortcodes.md
@@ -0,0 +1,444 @@
+---
+title: Shortcodes
+linktitle:
+description: Shortcodes are simple snippets inside your content files calling built-in or custom templates.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2019-11-07
+menu:
+ docs:
+ parent: "content-management"
+ weight: 35
+weight: 35 #rem
+categories: [content management]
+keywords: [markdown,content,shortcodes]
+draft: false
+aliases: [/extras/shortcodes/]
+testparam: "Hugo Rocks!"
+toc: true
+---
+
+## What a Shortcode is
+
+Hugo loves Markdown because of its simple content format, but there are times when Markdown falls short. Often, content authors are forced to add raw HTML (e.g., video `<iframe>`'s) to Markdown content. We think this contradicts the beautiful simplicity of Markdown's syntax.
+
+Hugo created **shortcodes** to circumvent these limitations.
+
+A shortcode is a simple snippet inside a content file that Hugo will render using a predefined template. Note that shortcodes will not work in template files. If you need the type of drop-in functionality that shortcodes provide but in a template, you most likely want a [partial template][partials] instead.
+
+In addition to cleaner Markdown, shortcodes can be updated any time to reflect new classes, techniques, or standards. At the point of site generation, Hugo shortcodes will easily merge in your changes. You avoid a possibly complicated search and replace operation.
+
+## Use Shortcodes
+
+{{< youtube 2xkNJL4gJ9E >}}
+
+In your content files, a shortcode can be called by calling `{{%/* shortcodename parameters */%}}`. Shortcode parameters are space delimited, and parameters with internal spaces can be quoted.
+
+The first word in the shortcode declaration is always the name of the shortcode. Parameters follow the name. Depending upon how the shortcode is defined, the parameters may be named, positional, or both, although you can't mix parameter types in a single call. The format for named parameters models that of HTML with the format `name="value"`.
+
+Some shortcodes use or require closing shortcodes. Again like HTML, the opening and closing shortcodes match (name only) with the closing declaration, which is prepended with a slash.
+
+Here are two examples of paired shortcodes:
+
+```
+{{%/* mdshortcode */%}}Stuff to `process` in the *center*.{{%/* /mdshortcode */%}}
+```
+
+```
+{{</* highlight go */>}} A bunch of code here {{</* /highlight */>}}
+```
+
+The examples above use two different delimiters, the difference being the `%` character in the first and the `<>` characters in the second.
+
+### Shortcodes with raw string parameters
+
+{{< new-in "0.64.1" >}}
+
+You can pass multiple lines as parameters to a shortcode by using raw string literals:
+
+```
+{{</* myshortcode `This is some <b>HTML</b>,
+and a new line with a "quoted string".` */>}}
+```
+
+### Shortcodes with Markdown
+
+In Hugo `0.55` we changed how the `%` delimiter works. Shortcodes using the `%` as the outer-most delimiter will now be fully rendered when sent to the content renderer. They can be part of the generated table of contents, footnotes, etc.
+
+If you want the old behavior, you can put the following line in the start of your shortcode template:
+
+```
+{{ $_hugo_config := `{ "version": 1 }` }}
+```
+
+
+### Shortcodes Without Markdown
+
+The `<` character indicates that the shortcode's inner content does *not* need further rendering. Often shortcodes without markdown include internal HTML:
+
+```
+{{</* myshortcode */>}}<p>Hello <strong>World!</strong></p>{{</* /myshortcode */>}}
+```
+
+### Nested Shortcodes
+
+You can call shortcodes within other shortcodes by creating your own templates that leverage the `.Parent` variable. `.Parent` allows you to check the context in which the shortcode is being called. See [Shortcode templates][sctemps].
+
+## Use Hugo's Built-in Shortcodes
+
+Hugo ships with a set of predefined shortcodes that represent very common usage. These shortcodes are provided for author convenience and to keep your markdown content clean.
+
+### `figure`
+
+`figure` is an extension of the image syntax in markdown, which does not provide a shorthand for the more semantic [HTML5 `<figure>` element][figureelement].
+
+The `figure` shortcode can use the following named parameters:
+
+src
+: URL of the image to be displayed.
+
+link
+: If the image needs to be hyperlinked, URL of the destination.
+
+target
+: Optional `target` attribute for the URL if `link` parameter is set.
+
+rel
+: Optional `rel` attribute for the URL if `link` parameter is set.
+
+alt
+: Alternate text for the image if the image cannot be displayed.
+
+title
+: Image title.
+
+caption
+: Image caption. Markdown within the value of `caption` will be rendered.
+
+class
+: `class` attribute of the HTML `figure` tag.
+
+height
+: `height` attribute of the image.
+
+width
+: `width` attribute of the image.
+
+attr
+: Image attribution text. Markdown within the value of `attr` will be rendered.
+
+attrlink
+: If the attribution text needs to be hyperlinked, URL of the destination.
+
+#### Example `figure` Input
+
+{{< code file="figure-input-example.md" >}}
+{{</* figure src="/media/spf13.jpg" title="Steve Francia" */>}}
+{{< /code >}}
+
+#### Example `figure` Output
+
+{{< output file="figure-output-example.html" >}}
+<figure>
+ <img src="/media/spf13.jpg" />
+ <figcaption>
+ <h4>Steve Francia</h4>
+ </figcaption>
+</figure>
+{{< /output >}}
+
+### `gist`
+
+Bloggers often want to include GitHub gists when writing posts. Let's suppose we want to use the [gist at the following url][examplegist]:
+
+```
+https://gist.github.com/spf13/7896402
+```
+
+We can embed the gist in our content via username and gist ID pulled from the URL:
+
+```
+{{</* gist spf13 7896402 */>}}
+```
+
+#### Example `gist` Input
+
+If the gist contains several files and you want to quote just one of them, you can pass the filename (quoted) as an optional third argument:
+
+{{< code file="gist-input.md" >}}
+{{</* gist spf13 7896402 "img.html" */>}}
+{{< /code >}}
+
+#### Example `gist` Output
+
+{{< output file="gist-output.html" >}}
+{{< gist spf13 7896402 >}}
+{{< /output >}}
+
+#### Example `gist` Display
+
+To demonstrate the remarkably efficiency of Hugo's shortcode feature, we have embedded the `spf13` `gist` example in this page. The following simulates the experience for visitors to your website. Naturally, the final display will be contingent on your stylesheets and surrounding markup.
+
+{{< gist spf13 7896402 >}}
+
+### `highlight`
+
+This shortcode will convert the source code provided into syntax-highlighted HTML. Read more on [highlighting](/tools/syntax-highlighting/). `highlight` takes exactly one required `language` parameter and requires a closing shortcode.
+
+#### Example `highlight` Input
+
+{{< code file="content/tutorials/learn-html.md" >}}
+{{</* highlight html */>}}
+<section id="main">
+ <div>
+ <h1 id="title">{{ .Title }}</h1>
+ {{ range .Pages }}
+ {{ .Render "summary"}}
+ {{ end }}
+ </div>
+</section>
+{{</* /highlight */>}}
+{{< /code >}}
+
+#### Example `highlight` Output
+
+The `highlight` shortcode example above would produce the following HTML when the site is rendered:
+
+{{< output file="tutorials/learn-html/index.html" >}}
+<span style="color: #f92672">&lt;section</span> <span style="color: #a6e22e">id=</span><span style="color: #e6db74">&quot;main&quot;</span><span style="color: #f92672">&gt;</span>
+ <span style="color: #f92672">&lt;div&gt;</span>
+ <span style="color: #f92672">&lt;h1</span> <span style="color: #a6e22e">id=</span><span style="color: #e6db74">&quot;title&quot;</span><span style="color: #f92672">&gt;</span>{{ .Title }}<span style="color: #f92672">&lt;/h1&gt;</span>
+ {{ range .Pages }}
+ {{ .Render &quot;summary&quot;}}
+ {{ end }}
+ <span style="color: #f92672">&lt;/div&gt;</span>
+<span style="color: #f92672">&lt;/section&gt;</span>
+{{< /output >}}
+
+{{% note "More on Syntax Highlighting" %}}
+To see even more options for adding syntax-highlighted code blocks to your website, see [Syntax Highlighting in Developer Tools](/tools/syntax-highlighting/).
+{{% /note %}}
+
+### `instagram`
+
+If you'd like to embed a photo from [Instagram][], you only need the photo's ID. You can discern an Instagram photo ID from the URL:
+
+```
+https://www.instagram.com/p/BWNjjyYFxVx/
+```
+
+#### Example `instagram` Input
+
+{{< code file="instagram-input.md" >}}
+{{</* instagram BWNjjyYFxVx */>}}
+{{< /code >}}
+
+You also have the option to hide the caption:
+
+{{< code file="instagram-input-hide-caption.md" >}}
+{{</* instagram BWNjjyYFxVx hidecaption */>}}
+{{< /code >}}
+
+#### Example `instagram` Output
+
+By adding the preceding `hidecaption` example, the following HTML will be added to your rendered website's markup:
+
+{{< output file="instagram-hide-caption-output.html" >}}
+{{< instagram BWNjjyYFxVx hidecaption >}}
+{{< /output >}}
+
+#### Example `instagram` Display
+
+Using the preceding `instagram` with `hidecaption` example above, the following simulates the displayed experience for visitors to your website. Naturally, the final display will be contingent on your stylesheets and surrounding markup.
+
+{{< instagram BWNjjyYFxVx hidecaption >}}
+
+
+
+{{% note %}}
+The `instagram`-shortcode refers an endpoint of Instagram's API, that's deprecated since October 24th, 2020. Thus, no images can be fetched from this API endpoint, resulting in an error when the `instagram`-shortcode is used. For more information please have a look at GitHub issue [#7879](https://github.com/gohugoio/hugo/issues/7879).
+{{% /note %}}
+
+### `param`
+
+Gets a value from the current `Page's` params set in front matter, with a fall back to the site param value. It will log an `ERROR` if the param with the given key could not be found in either.
+
+```bash
+{{</* param testparam */>}}
+```
+
+Since `testparam` is a param defined in front matter of this page with the value `Hugo Rocks!`, the above will print:
+
+{{< param testparam >}}
+
+To access deeply nested params, use "dot syntax", e.g:
+
+```bash
+{{</* param "my.nested.param" */>}}
+```
+
+### `ref` and `relref`
+
+These shortcodes will look up the pages by their relative path (e.g., `blog/post.md`) or their logical name (`post.md`) and return the permalink (`ref`) or relative permalink (`relref`) for the found page.
+
+`ref` and `relref` also make it possible to make fragmentary links that work for the header links generated by Hugo.
+
+{{% note "More on Cross References" %}}
+Read a more extensive description of `ref` and `relref` in the [cross references](/content-management/cross-references/) documentation.
+{{% /note %}}
+
+`ref` and `relref` take exactly one required parameter of _reference_, quoted and in position `0`.
+
+#### Example `ref` and `relref` Input
+
+```
+[Neat]({{</* ref "blog/neat.md" */>}})
+[Who]({{</* relref "about.md#who" */>}})
+```
+
+#### Example `ref` and `relref` Output
+
+Assuming that standard Hugo pretty URLs are turned on.
+
+```
+<a href="https://example.com/blog/neat">Neat</a>
+<a href="/about/#who">Who</a>
+```
+
+### `tweet`
+
+You want to include a single tweet into your blog post? Everything you need is the URL of the tweet:
+
+```
+https://twitter.com/SanDiegoZoo/status/1453110110599868418
+```
+
+#### Example `tweet` Input
+
+Pass the tweet's user (case-insensitive) and id from the URL as parameters to the `tweet` shortcode.
+
+{{< code file="example-tweet-input.md" >}}
+{{</* tweet user="SanDiegoZoo" id="1453110110599868418" */>}}
+{{< /code >}}
+
+#### Example `tweet` Output
+
+Using the preceding `tweet` example, the following HTML will be added to your rendered website's markup:
+
+{{< output file="example-tweet-output.html" >}}
+{{< tweet user="SanDiegoZoo" id="1453110110599868418" >}}
+{{< /output >}}
+
+#### Example `tweet` Display
+
+Using the preceding `tweet` example, the following simulates the displayed experience for visitors to your website. Naturally, the final display will be contingent on your stylesheets and surrounding markup.
+
+{{< tweet user="SanDiegoZoo" id="1453110110599868418" >}}
+
+### `vimeo`
+
+Adding a video from [Vimeo][] is equivalent to the [YouTube Input shortcode][].
+
+```
+https://vimeo.com/channels/staffpicks/146022717
+```
+
+#### Example `vimeo` Input
+
+Extract the ID from the video's URL and pass it to the `vimeo` shortcode:
+
+{{< code file="example-vimeo-input.md" >}}
+{{</* vimeo 146022717 */>}}
+{{< /code >}}
+
+#### Example `vimeo` Output
+
+Using the preceding `vimeo` example, the following HTML will be added to your rendered website's markup:
+
+{{< output file="example-vimeo-output.html" >}}
+{{< vimeo 146022717 >}}
+{{< /output >}}
+
+{{% tip %}}
+If you want to further customize the visual styling of the YouTube or Vimeo output, add a `class` named parameter when calling the shortcode. The new `class` will be added to the `<div>` that wraps the `<iframe>` *and* will remove the inline styles. Note that you will need to call the `id` as a named parameter as well. You can also give the vimeo video a descriptive title with `title`.
+
+```
+{{</* vimeo id="146022717" class="my-vimeo-wrapper-class" title="My vimeo video" */>}}
+```
+{{% /tip %}}
+
+#### Example `vimeo` Display
+
+Using the preceding `vimeo` example, the following simulates the displayed experience for visitors to your website. Naturally, the final display will be contingent on your stylesheets and surrounding markup.
+
+{{< vimeo 146022717 >}}
+
+### `youtube`
+
+The `youtube` shortcode embeds a responsive video player for [YouTube videos][]. Only the ID of the video is required, e.g.:
+
+```
+https://www.youtube.com/watch?v=w7Ft2ymGmfc
+```
+
+
+#### Example `youtube` Input
+
+Copy the YouTube video ID that follows `v=` in the video's URL and pass it to the `youtube` shortcode:
+
+{{< code file="example-youtube-input.md" >}}
+{{</* youtube w7Ft2ymGmfc */>}}
+{{< /code >}}
+
+Furthermore, you can automatically start playback of the embedded video by setting the `autoplay` parameter to `true`. Remember that you can't mix named and unnamed parameters, so you'll need to assign the yet unnamed video id to the parameter `id`:
+
+
+{{< code file="example-youtube-input-with-autoplay.md" >}}
+{{</* youtube id="w7Ft2ymGmfc" autoplay="true" */>}}
+{{< /code >}}
+
+For [accessibility reasons](https://dequeuniversity.com/tips/provide-iframe-titles), it's best to provide a title for your YouTube video. You can do this using the shortcode by providing a `title` parameter. If no title is provided, a default of "YouTube Video" will be used.
+
+{{< code file="example-youtube-input-with-title.md" >}}
+{{</* youtube id="w7Ft2ymGmfc" title="A New Hugo Site in Under Two Minutes" */>}}
+{{< /code >}}
+
+
+#### Example `youtube` Output
+
+Using the preceding `youtube` example, the following HTML will be added to your rendered website's markup:
+
+{{< code file="example-youtube-output.html" >}}
+{{< youtube id="w7Ft2ymGmfc" autoplay="true" >}}
+{{< /code >}}
+
+#### Example `youtube` Display
+
+Using the preceding `youtube` example (without `autoplay="true"`), the following simulates the displayed experience for visitors to your website. Naturally, the final display will be contingent on your stylesheets and surrounding markup. The video is also include in the [Quick Start of the Hugo documentation][quickstart].
+
+{{< youtube w7Ft2ymGmfc >}}
+
+## Privacy Config
+
+To learn how to configure your Hugo site to meet the new EU privacy regulation, see [Hugo and the GDPR][].
+
+## Create Custom Shortcodes
+
+To learn more about creating custom shortcodes, see the [shortcode template documentation][].
+
+[`figure` shortcode]: #figure
+[contentmanagementsection]: /content-management/formats/
+[examplegist]: https://gist.github.com/spf13/7896402
+[figureelement]: https://html5doctor.com/the-figure-figcaption-elements/ "An article from HTML5 doctor discussing the fig and figcaption elements."
+[Hugo and the GDPR]: /about/hugo-and-gdpr/
+[Instagram]: https://www.instagram.com/
+[pagevariables]: /variables/page/
+[partials]: /templates/partials/
+[quickstart]: /getting-started/quick-start/
+[sctemps]: /templates/shortcode-templates/
+[scvars]: /variables/shortcodes/
+[shortcode template documentation]: /templates/shortcode-templates/
+[templatessection]: /templates/
+[Vimeo]: https://vimeo.com/
+[YouTube Videos]: https://www.youtube.com/
+[YouTube Input shortcode]: #youtube
diff --git a/docs/content/en/content-management/static-files.md b/docs/content/en/content-management/static-files.md
new file mode 100644
index 000000000..e42ee9088
--- /dev/null
+++ b/docs/content/en/content-management/static-files.md
@@ -0,0 +1,70 @@
+---
+title: Static Files
+description: "Files that get served **statically** (as-is, no modification) on the site root."
+date: 2017-11-18
+categories: [content management]
+keywords: [source, directories]
+menu:
+ docs:
+ parent: "content-management"
+ weight: 130
+weight: 130 #rem
+aliases: [/static-files]
+toc: true
+---
+
+By default, the `static/` directory in the site project is used for
+all **static files** (e.g. stylesheets, JavaScript, images). The static files are served on the site root path (eg. if you have the file `static/image.png` you can access it using `http://{server-url}/image.png`, to include it in a document you can use `![Example image](/image.png) )`.
+
+Hugo can be configured to look into a different directory, or even
+**multiple directories** for such static files by configuring the
+`staticDir` parameter in the [site config][]. All the files in all the
+static directories will form a union filesystem.
+
+This union filesystem will be served from your site root. So a file
+`<SITE PROJECT>/static/me.png` will be accessible as
+`<MY_BASEURL>/me.png`.
+
+Here's an example of setting `staticDir` and `staticDir2` for a
+multi-language site:
+
+{{< code-toggle copy="false" file="config" >}}
+staticDir = ["static1", "static2"]
+
+[languages]
+[languages.en]
+staticDir2 = "static_en"
+baseURL = "https://example.com"
+languageName = "English"
+weight = 2
+title = "In English"
+[languages.no]
+staticDir = ["staticDir_override", "static_no"]
+baseURL = "https://example.no"
+languageName = "Norsk"
+weight = 1
+title = "På norsk"
+{{</ code-toggle >}}
+
+In the above, with no theme used:
+
+- The English site will get its static files as a union of "static1",
+ "static2" and "static_en". On file duplicates, the right-most
+ version will win.
+- The Norwegian site will get its static files as a union of
+ "staticDir_override" and "static_no".
+
+Note 1
+: The **2** (can be a number between 0 and 10) in `staticDir2` is
+ added to tell Hugo that you want to **add** this directory to the
+ global set of static directories defined using `staticDir`. Using
+ `staticDir` on the language level would replace the global value (as
+ can be seen in the Norwegian site case).
+
+Note 2
+: The example above is a [multihost setup][]. In a regular setup, all
+ the static directories will be available to all sites.
+
+
+[site config]: /getting-started/configuration/#all-configuration-settings
+[multihost setup]: /content-management/multilingual/#configure-multilingual-multihost
diff --git a/docs/content/en/content-management/summaries.md b/docs/content/en/content-management/summaries.md
new file mode 100644
index 000000000..3c67a67dc
--- /dev/null
+++ b/docs/content/en/content-management/summaries.md
@@ -0,0 +1,112 @@
+---
+title: Content Summaries
+linktitle: Summaries
+description: Hugo generates summaries of your content.
+date: 2017-01-10
+publishdate: 2017-01-10
+lastmod: 2017-01-10
+categories: [content management]
+keywords: [summaries,abstracts,read more]
+menu:
+ docs:
+ parent: "content-management"
+ weight: 90
+weight: 90 #rem
+draft: false
+aliases: [/content/summaries/,/content-management/content-summaries/]
+toc: true
+---
+
+With the use of the `.Summary` [page variable][pagevariables], Hugo generates summaries of content to use as a short version in summary views.
+
+## Summary Splitting Options
+
+* Automatic Summary Split
+* Manual Summary Split
+* Front Matter Summary
+
+It is natural to accompany the summary with links to the original content, and a common design pattern is to see this link in the form of a "Read More ..." button. See the `.RelPermalink`, `.Permalink`, and `.Truncated` [page variables][pagevariables].
+
+### Automatic Summary Splitting
+
+By default, Hugo automatically takes the first 70 words of your content as its summary and stores it into the `.Summary` page variable for use in your templates. You may customize the summary length by setting `summaryLength` in your [site configuration](/getting-started/configuration/).
+
+{{% note %}}
+You can customize how HTML tags in the summary are loaded using functions such as `plainify` and `safeHTML`.
+{{% /note %}}
+
+{{% note %}}
+The Hugo-defined summaries are set to use word count calculated by splitting the text by one or more consecutive whitespace characters. If you are creating content in a `CJK` language and want to use Hugo's automatic summary splitting, set `hasCJKLanguage` to `true` in your [site configuration](/getting-started/configuration/).
+{{% /note %}}
+
+### Manual Summary Splitting
+
+Alternatively, you may add the <code>&#60;&#33;&#45;&#45;more&#45;&#45;&#62;</code> summary divider where you want to split the article.
+
+For [Org mode content][org], use `# more` where you want to split the article.
+
+Content that comes before the summary divider will be used as that content's summary and stored in the `.Summary` page variable with all HTML formatting intact.
+
+{{% note "Summary Divider"%}}
+The concept of a *summary divider* is not unique to Hugo. It is also called the "more tag" or "excerpt separator" in other literature.
+{{% /note %}}
+
+Pros
+: Freedom, precision, and improved rendering. All HTML tags and formatting are preserved.
+
+Cons
+: Extra work for content authors, since they need to remember to type <code>&#60;&#33;&#45;&#45;more&#45;&#45;&#62;</code> (or `# more` for [org content][org]) in each content file. This can be automated by adding the summary divider below the front matter of an [archetype](/content-management/archetypes/).
+
+{{% warning "Be Precise with the Summary Divider" %}}
+Be careful to enter <code>&#60;&#33;&#45;&#45;more&#45;&#45;&#62;</code> exactly; i.e., all lowercase and with no whitespace.
+{{% /warning %}}
+
+### Front Matter Summary
+
+You might want your summary to be something other than the text that starts the article. In this case you can provide a separate summary in the `summary` variable of the article front matter.
+
+Pros
+: Complete freedom of text independent of the content of the article. Markup can be used within the summary.
+
+Cons
+: Extra work for content authors as they need to write an entirely separate piece of text as the summary of the article.
+
+## Summary Selection Order
+
+Because there are multiple ways in which a summary can be specified it is useful to understand the order of selection Hugo follows when deciding on the text to be returned by `.Summary`. It is as follows:
+
+1. If there is a <code>&#60;&#33;&#45;&#45;more&#45;&#45;&#62;</code> summary divider present in the article the text up to the divider will be provided as per the manual summary split method
+2. If there is a `summary` variable in the article front matter the value of the variable will be provided as per the front matter summary method
+3. The text at the start of the article will be provided as per the automatic summary split method
+
+{{% warning "Competing selections" %}}
+Hugo uses the _first_ of the above steps that returns text. So if, for example, your article has both `summary` variable in its front matter and a <code>&#60;&#33;&#45;&#45;more&#45;&#45;&#62;</code> summary divider Hugo will use the manual summary split method.
+{{% /warning %}}
+
+## Example: First 10 Articles with Summaries
+
+You can show content summaries with the following code. You could use the following snippet, for example, in a [section template][].
+
+{{< code file="page-list-with-summaries.html" >}}
+{{ range first 10 .Pages }}
+ <article>
+ <!-- this <div> includes the title summary -->
+ <div>
+ <h2><a href="{{ .RelPermalink }}">{{ .Title }}</a></h2>
+ {{ .Summary }}
+ </div>
+ {{ if .Truncated }}
+ <!-- This <div> includes a read more link, but only if the summary is truncated... -->
+ <div>
+ <a href="{{ .RelPermalink }}">Read More…</a>
+ </div>
+ {{ end }}
+ </article>
+{{ end }}
+{{< /code >}}
+
+Note how the `.Truncated` boolean variable value may be used to hide the "Read More..." link when the content is not truncated; i.e., when the summary contains the entire article.
+
+[org]: /content-management/formats/
+[pagevariables]: /variables/page/
+[section template]: /templates/section-templates/
diff --git a/docs/content/en/content-management/syntax-highlighting.md b/docs/content/en/content-management/syntax-highlighting.md
new file mode 100644
index 000000000..31f12f7d3
--- /dev/null
+++ b/docs/content/en/content-management/syntax-highlighting.md
@@ -0,0 +1,138 @@
+---
+title: Syntax Highlighting
+description: Hugo comes with really fast syntax highlighting from Chroma.
+date: 2017-02-01
+publishdate: 2017-02-01
+keywords: [highlighting,chroma,code blocks,syntax]
+categories: [content management]
+menu:
+ docs:
+ parent: "content-management"
+ weight: 300
+weight: 20
+sections_weight: 20
+draft: false
+aliases: [/extras/highlighting/,/extras/highlight/,/tools/syntax-highlighting/]
+toc: true
+---
+
+Hugo uses [Chroma](https://github.com/alecthomas/chroma) as its code highlighter; it is built in Go and is really, really fast -- and for the most important parts compatible with Pygments we used before.
+
+## Configure Syntax Highlighter
+
+See [Configure Highlight](/getting-started/configuration-markup#highlight).
+
+## Generate Syntax Highlighter CSS
+
+If you run with `markup.highlight.noClasses=false` in your site config, you need a style sheet.
+
+You can generate one with Hugo:
+
+```bash
+hugo gen chromastyles --style=monokai > syntax.css
+```
+
+Run `hugo gen chromastyles -h` for more options. See https://xyproto.github.io/splash/docs/ for a gallery of available styles.
+
+## Highlight Shortcode
+
+Highlighting is carried out via the built-in [`highlight` shortcode](https://gohugo.io/content-management/shortcodes/#highlight). It takes exactly one required parameter for the programming language to be highlighted and requires a closing shortcode. Note that `highlight` is *not* used for client-side javascript highlighting.
+
+Options:
+
+* `linenos`: configure line numbers. Valid values are `true`, `false`, `table`, or `inline`. `false` will turn off line numbers if it's configured to be on in site config. {{< new-in "0.60.0" >}} `table` will give copy-and-paste friendly code blocks.
+* `hl_lines`: lists a set of line numbers or line number ranges to be highlighted.
+* `linenostart=199`: starts the line number count from 199.
+* `anchorlinenos`: Configure anchors on line numbers. Valid values are `true` or `false`;
+* `lineanchors`: Configure a prefix for the anchors on line numbers. Will be suffixed with `-`, so linking to the line number 1 with the option `lineanchors=prefix` adds the anchor `prefix-1` to the page.
+
+### Example: Highlight Shortcode
+
+```
+{{</* highlight go "linenos=table,hl_lines=8 15-17,linenostart=199" */>}}
+// ... code
+{{</* / highlight */>}}
+```
+
+Gives this:
+
+{{< highlight go "linenos=table,hl_lines=8 15-17,linenostart=199" >}}
+// GetTitleFunc returns a func that can be used to transform a string to
+// title case.
+//
+// The supported styles are
+//
+// - "Go" (strings.Title)
+// - "AP" (see https://www.apstylebook.com/)
+// - "Chicago" (see https://www.chicagomanualofstyle.org/home.html)
+//
+// If an unknown or empty style is provided, AP style is what you get.
+func GetTitleFunc(style string) func(s string) string {
+ switch strings.ToLower(style) {
+ case "go":
+ return strings.Title
+ case "chicago":
+ return transform.NewTitleConverter(transform.ChicagoStyle)
+ default:
+ return transform.NewTitleConverter(transform.APStyle)
+ }
+}
+{{< / highlight >}}
+
+## Highlight Template Func
+
+See [Highlight](/functions/highlight/).
+
+## Highlighting in Code Fences
+
+Highlighting in code fences is enabled by default.{{< new-in "0.60.0" >}}
+
+````
+```go {linenos=table,hl_lines=[8,"15-17"],linenostart=199}
+// ... code
+```
+````
+
+
+Gives this:
+
+```go {linenos=table,hl_lines=[8,"15-17"],linenostart=199}
+// GetTitleFunc returns a func that can be used to transform a string to
+// title case.
+//
+// The supported styles are
+//
+// - "Go" (strings.Title)
+// - "AP" (see https://www.apstylebook.com/)
+// - "Chicago" (see https://www.chicagomanualofstyle.org/home.html)
+//
+// If an unknown or empty style is provided, AP style is what you get.
+func GetTitleFunc(style string) func(s string) string {
+ switch strings.ToLower(style) {
+ case "go":
+ return strings.Title
+ case "chicago":
+ return transform.NewTitleConverter(transform.ChicagoStyle)
+ default:
+ return transform.NewTitleConverter(transform.APStyle)
+ }
+}
+```
+
+{{< new-in "0.60.0" >}}Note that only Goldmark supports passing attributes such as `hl_lines`, and it's important that it does not contain any spaces. See [goldmark-highlighting](https://github.com/yuin/goldmark-highlighting) for more information.
+
+The options are the same as in the [highlighting shortcode](/content-management/syntax-highlighting/#highlight-shortcode),including `linenos=false`, but note the slightly different Markdown attribute syntax.
+
+## List of Chroma Highlighting Languages
+
+The full list of Chroma lexers and their aliases (which is the identifier used in the `highlight` template func or when doing highlighting in code fences):
+
+{{< chroma-lexers >}}
+
+[Prism]: https://prismjs.com
+[prismdownload]: https://prismjs.com/download.html
+[Highlight.js]: https://highlightjs.org/
+[Rainbow]: https://craig.is/making/rainbows
+[Syntax Highlighter]: https://alexgorbatchev.com/SyntaxHighlighter/
+[Google Prettify]: https://github.com/google/code-prettify
+[Yandex]: https://yandex.ru/
diff --git a/docs/content/en/content-management/taxonomies.md b/docs/content/en/content-management/taxonomies.md
new file mode 100644
index 000000000..da29fa7be
--- /dev/null
+++ b/docs/content/en/content-management/taxonomies.md
@@ -0,0 +1,215 @@
+---
+title: Taxonomies
+linktitle:
+description: Hugo includes support for user-defined taxonomies.
+date: 2017-02-01
+publishdate: 2017-02-01
+keywords: [taxonomies,metadata,front matter,terms]
+categories: [content management]
+menu:
+ docs:
+ parent: "content-management"
+ weight: 80
+weight: 80 #rem
+draft: false
+aliases: [/taxonomies/overview/,/taxonomies/usage/,/indexes/overview/,/doc/indexes/,/extras/indexes]
+toc: true
+---
+
+## What is a Taxonomy?
+
+Hugo includes support for user-defined groupings of content called **taxonomies**. Taxonomies are classifications of logical relationships between content.
+
+### Definitions
+
+Taxonomy
+: a categorization that can be used to classify content
+
+Term
+: a key within the taxonomy
+
+Value
+: a piece of content assigned to a term
+
+
+## Example Taxonomy: Movie Website
+
+Let's assume you are making a website about movies. You may want to include the following taxonomies:
+
+* Actors
+* Directors
+* Studios
+* Genre
+* Year
+* Awards
+
+Then, in each of the movies, you would specify terms for each of these taxonomies (i.e., in the [front matter][] of each of your movie content files). From these terms, Hugo would automatically create pages for each Actor, Director, Studio, Genre, Year, and Award, with each listing all of the Movies that matched that specific Actor, Director, Studio, Genre, Year, and Award.
+
+### Movie Taxonomy Organization
+
+To continue with the example of a movie site, the following demonstrates content relationships from the perspective of the taxonomy:
+
+```
+Actor <- Taxonomy
+ Bruce Willis <- Term
+ The Sixth Sense <- Value
+ Unbreakable <- Value
+ Moonrise Kingdom <- Value
+ Samuel L. Jackson <- Term
+ Unbreakable <- Value
+ The Avengers <- Value
+ xXx <- Value
+```
+
+From the perspective of the content, the relationships would appear differently, although the data and labels used are the same:
+
+```
+Unbreakable <- Value
+ Actors <- Taxonomy
+ Bruce Willis <- Term
+ Samuel L. Jackson <- Term
+ Director <- Taxonomy
+ M. Night Shyamalan <- Term
+ ...
+Moonrise Kingdom <- Value
+ Actors <- Taxonomy
+ Bruce Willis <- Term
+ Bill Murray <- Term
+ Director <- Taxonomy
+ Wes Anderson <- Term
+ ...
+```
+
+## Hugo Taxonomy Defaults {#default-taxonomies}
+
+Hugo natively supports taxonomies.
+
+Without adding a single line to your [site config][config] file, Hugo will automatically create taxonomies for `tags` and `categories`. That would be the same as manually [configuring your taxonomies](#configuring-taxonomies) as below:
+
+{{< code-toggle copy="false" >}}
+[taxonomies]
+ tag = "tags"
+ category = "categories"
+{{</ code-toggle >}}
+
+If you do not want Hugo to create any taxonomies, set `disableKinds` in your [site config][config] to the following:
+
+{{< code-toggle copy="false" >}}
+disableKinds = ["taxonomy","term"]
+{{</ code-toggle >}}
+
+{{< new-in "0.73.0" >}} We have fixed the before confusing page kinds used for taxonomies (see the listing below) to be in line with the terms used when we talk about taxonomies. We have been careful to avoid site breakage, and you should get an ERROR in the console if you need to adjust your `disableKinds` section.
+
+{{% page-kinds %}}
+
+### Default Destinations
+
+When taxonomies are used---and [taxonomy templates][] are provided---Hugo will automatically create both a page listing all the taxonomy's terms and individual pages with lists of content associated with each term. For example, a `categories` taxonomy declared in your configuration and used in your content front matter will create the following pages:
+
+* A single page at `example.com/categories/` that lists all the [terms within the taxonomy][]
+* [Individual taxonomy list pages][taxonomy templates] (e.g., `/categories/development/`) for each of the terms that shows a listing of all pages marked as part of that taxonomy within any content file's [front matter][]
+
+## Configure Taxonomies
+
+Custom taxonomies other than the [defaults](#default-taxonomies) must be defined in your [site config][config] before they can be used throughout the site. You need to provide both the plural and singular labels for each taxonomy. For example, `singular key = "plural value"` for TOML and `singular key: "plural value"` for YAML.
+
+### Example: Adding a custom taxonomy named "series"
+
+{{% note %}}
+While adding custom taxonomies, you need to put in the default taxonomies too, _if you want to keep them_.
+{{% /note %}}
+
+{{< code-toggle copy="false" >}}
+[taxonomies]
+ tag = "tags"
+ category = "categories"
+ series = "series"
+{{</ code-toggle >}}
+
+### Example: Removing default taxonomies
+
+If you want to have just the default `tags` taxonomy, and remove the `categories` taxonomy for your site, you can do so by modifying the `taxonomies` value in your [site config][config].
+
+{{< code-toggle copy="false" >}}
+[taxonomies]
+ tag = "tags"
+{{</ code-toggle >}}
+
+If you want to disable all taxonomies altogether, see the use of `disableKinds` in [Hugo Taxonomy Defaults](#default-taxonomies).
+
+{{% note %}}
+You can add content and front matter to your taxonomy list and taxonomy terms pages. See [Content Organization](/content-management/organization/) for more information on how to add an `_index.md` for this purpose.
+
+Much like regular pages, taxonomy list [permalinks](/content-management/urls/) are configurable, but taxonomy term page permalinks are not.
+{{% /note %}}
+
+{{% warning %}}
+The configuration option `preserveTaxonomyNames` was removed in Hugo 0.55.
+
+You can now use `.Page.Title` on the relevant taxonomy node to get the original value.
+{{% /warning %}}
+
+## Add Taxonomies to Content
+
+Once a taxonomy is defined at the site level, any piece of content can be assigned to it, regardless of [content type][] or [content section][].
+
+Assigning content to a taxonomy is done in the [front matter][]. Simply create a variable with the *plural* name of the taxonomy and assign all terms you want to apply to the instance of the content type.
+
+{{% note %}}
+If you would like the ability to quickly generate content files with preconfigured taxonomies or terms, read the docs on [Hugo archetypes](/content-management/archetypes/).
+{{% /note %}}
+
+### Example: Front Matter with Taxonomies
+
+{{< code-toggle copy="false">}}
+title = "Hugo: A fast and flexible static site generator"
+tags = [ "Development", "Go", "fast", "Blogging" ]
+categories = [ "Development" ]
+series = [ "Go Web Dev" ]
+slug = "hugo"
+project_url = "https://github.com/gohugoio/hugo"
+{{</ code-toggle >}}
+
+## Order Taxonomies
+
+A content file can assign weight for each of its associate taxonomies. Taxonomic weight can be used for sorting or ordering content in [taxonomy list templates][] and is declared in a content file's [front matter][]. The convention for declaring taxonomic weight is `taxonomyname_weight`.
+
+The following TOML and YAML examples show a piece of content that has a weight of 22, which can be used for ordering purposes when rendering the pages assigned to the "a", "b" and "c" values of the `tags` taxonomy. It has also been assigned the weight of 44 when rendering the "d" category page.
+
+### Example: Taxonomic `weight`
+
+{{< code-toggle copy="false" >}}
+title = "foo"
+tags = [ "a", "b", "c" ]
+tags_weight = 22
+categories = ["d"]
+categories_weight = 44
+{{</ code-toggle >}}
+
+By using taxonomic weight, the same piece of content can appear in different positions in different taxonomies.
+
+{{% note "Limits to Ordering Taxonomies" %}}
+Currently taxonomies only support the [default `weight => date` ordering of list content](/templates/lists/#default-weight-date). For more information, see the documentation on [taxonomy templates](/templates/taxonomy-templates/).
+{{% /note %}}
+
+## Add custom metadata to a Taxonomy or Term
+
+If you need to add custom metadata to your taxonomy terms, you will need to create a page for that term at `/content/<TAXONOMY>/<TERM>/_index.md` and add your metadata in it's front matter. Continuing with our 'Actors' example, let's say you want to add a Wikipedia page link to each actor. Your terms pages would be something like this:
+
+{{< code file="/content/actors/bruce-willis/_index.md" >}}
+---
+title: "Bruce Willis"
+wikipedia: "https://en.wikipedia.org/wiki/Bruce_Willis"
+---
+{{< /code >}}
+
+
+[`urlize` template function]: /functions/urlize/
+[content section]: /content-management/sections/
+[content type]: /content-management/types/
+[documentation on archetypes]: /content-management/archetypes/
+[front matter]: /content-management/front-matter/
+[taxonomy list templates]: /templates/taxonomy-templates/#taxonomy-page-templates
+[taxonomy templates]: /templates/taxonomy-templates/
+[terms within the taxonomy]: /templates/taxonomy-templates/#taxonomy-terms-templates "See how to order terms associated with a taxonomy"
+[config]: /getting-started/configuration/
diff --git a/docs/content/en/content-management/toc.md b/docs/content/en/content-management/toc.md
new file mode 100644
index 000000000..6a0b73fe5
--- /dev/null
+++ b/docs/content/en/content-management/toc.md
@@ -0,0 +1,125 @@
+---
+title: Table of Contents
+linktitle:
+description: Hugo can automatically parse Markdown content and create a Table of Contents you can use in your templates.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [content management]
+keywords: [table of contents, toc]
+menu:
+ docs:
+ parent: "content-management"
+ weight: 130
+weight: 130 #rem
+draft: false
+aliases: [/extras/toc/]
+toc: true
+---
+
+{{% note "TOC Heading Levels are Fixed" %}}
+
+Previously, there was no out-of-the-box way to specify which heading levels you want the TOC to render. [See the related GitHub discussion (#1778)](https://github.com/gohugoio/hugo/issues/1778). As such, the resulting `<nav id="TableOfContents"><ul></ul></nav>` was going to start at `<h1>` when pulling from `{{.Content}}`.
+
+Hugo [v0.60.0](https://github.com/gohugoio/hugo/releases/tag/v0.60.0) made a switch to [Goldmark](https://github.com/yuin/goldmark/) as the default library for Markdown which has improved and configurable implementation of TOC. Take a look at [how to configure TOC](/getting-started/configuration-markup/#table-of-contents) for Goldmark renderer.
+
+{{% /note %}}
+
+## Usage
+
+Create your markdown the way you normally would with the appropriate headings. Here is some example content:
+
+```
+<!-- Your front matter up here -->
+
+## Introduction
+
+One morning, when Gregor Samsa woke from troubled dreams, he found himself transformed in his bed into a horrible vermin.
+
+## My Heading
+
+He lay on his armour-like back, and if he lifted his head a little he could see his brown belly, slightly domed and divided by arches into stiff sections. The bedding was hardly able to cover it and seemed ready to slide off any moment.
+
+### My Subheading
+
+A collection of textile samples lay spread out on the table - Samsa was a travelling salesman - and above it there hung a picture that he had recently cut out of an illustrated magazine and housed in a nice, gilded frame. It showed a lady fitted out with a fur hat and fur boa who sat upright, raising a heavy fur muff that covered the whole of her lower arm towards the viewer. Gregor then turned to look out the window at the dull weather. Drops
+```
+
+Hugo will take this Markdown and create a table of contents from `## Introduction`, `## My Heading`, and `### My Subheading` and then store it in the [page variable][pagevars]`.TableOfContents`.
+
+The built-in `.TableOfContents` variables outputs a `<nav id="TableOfContents">` element with a child `<ul>`, whose child `<li>` elements begin with appropriate HTML headings. See [the available settings](/getting-started/configuration-markup/#table-of-contents) to configure what heading levels you want to include in TOC.
+
+{{% note "Table of contents not available for MMark" %}}
+Hugo documents created in the [MMark](/content-management/formats/#mmark) Markdown dialect do not currently display TOCs. TOCs are, however, compatible with all other supported Markdown formats.
+{{% /note %}}
+
+## Template Example: Basic TOC
+
+The following is an example of a very basic [single page template][]:
+
+{{< code file="layout/_default/single.html" download="single.html" >}}
+{{ define "main" }}
+<main>
+ <article>
+ <header>
+ <h1>{{ .Title }}</h1>
+ </header>
+ {{ .Content }}
+ </article>
+ <aside>
+ {{ .TableOfContents }}
+ </aside>
+</main>
+{{ end }}
+{{< /code >}}
+
+## Template Example: TOC Partial
+
+The following is a [partial template][partials] that adds slightly more logic for page-level control over your table of contents. It assumes you are using a `toc` field in your content's [front matter][] that, unless specifically set to `false`, will add a TOC to any page with a `.WordCount` (see [Page Variables][pagevars]) greater than 400. This example also demonstrates how to use [conditionals][] in your templating:
+
+{{< code file="layouts/partials/toc.html" download="toc.html" >}}
+{{ if and (gt .WordCount 400 ) (.Params.toc) }}
+<aside>
+ <header>
+ <h2>{{.Title}}</h2>
+ </header>
+ {{.TableOfContents}}
+</aside>
+{{ end }}
+{{< /code >}}
+
+{{% note %}}
+With the preceding example, even pages with > 400 words *and* `toc` not set to `false` will not render a table of contents if there are no headings in the page for the `{{.TableOfContents}}` variable to pull from.
+{{% /note %}}
+
+## Usage with AsciiDoc
+
+Hugo supports table of contents with AsciiDoc content format.
+
+In the header of your content file, specify the AsciiDoc TOC directives necessary to ensure that the table of contents is generated. Hugo will use the generated TOC to populate the page variable `.TableOfContents` in the same way as described for Markdown. See example below:
+
+```asciidoc
+// <!-- Your front matter up here -->
+:toc:
+// Set toclevels to be at least your hugo [markup.tableOfContents.endLevel] config key
+:toclevels: 4
+
+== Introduction
+
+One morning, when Gregor Samsa woke from troubled dreams, he found himself transformed in his bed into a horrible vermin.
+
+== My Heading
+
+He lay on his armour-like back, and if he lifted his head a little he could see his brown belly, slightly domed and divided by arches into stiff sections. The bedding was hardly able to cover it and seemed ready to slide off any moment.
+
+=== My Subheading
+
+A collection of textile samples lay spread out on the table - Samsa was a travelling salesman - and above it there hung a picture that he had recently cut out of an illustrated magazine and housed in a nice, gilded frame. It showed a lady fitted out with a fur hat and fur boa who sat upright, raising a heavy fur muff that covered the whole of her lower arm towards the viewer. Gregor then turned to look out the window at the dull weather. Drops
+```
+Hugo will take this AsciiDoc and create a table of contents store it in the page variable `.TableOfContents`, in the same as described for Markdown.
+
+[conditionals]: /templates/introduction/#conditionals
+[front matter]: /content-management/front-matter/
+[pagevars]: /variables/page/
+[partials]: /templates/partials/
+[single page template]: /templates/single-page-templates/
diff --git a/docs/content/en/content-management/types.md b/docs/content/en/content-management/types.md
new file mode 100644
index 000000000..6be16b408
--- /dev/null
+++ b/docs/content/en/content-management/types.md
@@ -0,0 +1,24 @@
+---
+title: Content Types
+description: Hugo is built around content organized in sections.
+date: 2017-02-01
+categories: [content management]
+keywords: [lists,sections,content types,types,organization]
+menu:
+ docs:
+ parent: "content-management"
+ weight: 60
+weight: 60 #rem
+draft: false
+aliases: [/content/types]
+toc: true
+---
+
+A **content type** is a way to organize your content. Hugo resolves the content type from either the `type` in front matter or, if not set, the first directory in the file path. E.g. `content/blog/my-first-event.md` will be of type `blog` if no `type` set.
+
+A content type is used to
+
+* Determine how the content is rendered. See [Template Lookup Order](/templates/lookup-order/) and [Content Views](https://gohugo.io/templates/views) for more.
+* Determine which [archetype](/content-management/archetypes/) template to use for new content.
+
+
diff --git a/docs/content/en/content-management/urls.md b/docs/content/en/content-management/urls.md
new file mode 100644
index 000000000..c0eb59d6d
--- /dev/null
+++ b/docs/content/en/content-management/urls.md
@@ -0,0 +1,313 @@
+---
+title: URL Management
+linktitle: URL Management
+description: Hugo supports permalinks, aliases, link canonicalization, and multiple options for handling relative vs absolute URLs.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-03-09
+keywords: [aliases,redirects,permalinks,urls]
+categories: [content management]
+menu:
+ docs:
+ parent: "content-management"
+ weight: 110
+weight: 110 #rem
+draft: false
+aliases: [/extras/permalinks/,/extras/aliases/,/extras/urls/,/doc/redirects/,/doc/alias/,/doc/aliases/]
+toc: true
+---
+
+## Permalinks
+
+The default Hugo target directory for your built website is `public/`. However, you can change this value by specifying a different `publishDir` in your [site configuration][config]. The directories created at build time for a section reflect the position of the content's directory within the `content` folder and namespace matching its layout within the `contentdir` hierarchy.
+
+The `permalinks` option in your [site configuration][config] allows you to adjust the directory paths (i.e., the URLs) on a per-section basis. This will change where the files are written to and will change the page's internal "canonical" location, such that template references to `.RelPermalink` will honor the adjustments made as a result of the mappings in this option.
+
+{{% note "Default Publish and Content Folders" %}}
+These examples use the default values for `publishDir` and `contentDir`; i.e., `public` and `content`, respectively. You can override the default values in your [site's `config` file](/getting-started/configuration/).
+{{% /note %}}
+
+For example, if one of your [sections][] is called `posts` and you want to adjust the canonical path to be hierarchical based on the year, month, and post title, you could set up the following configurations in YAML and TOML, respectively.
+
+### Permalinks Configuration Example
+
+{{< code-toggle file="config" copy="false" >}}
+permalinks:
+ posts: /:year/:month/:title/
+{{< /code-toggle >}}
+
+Only the content under `posts/` will have the new URL structure. For example, the file `content/posts/sample-entry.md` with `date: 2017-02-27T19:20:00-05:00` in its front matter will render to `public/2017/02/sample-entry/index.html` at build time and therefore be reachable at `https://example.com/2017/02/sample-entry/`.
+
+To configure the `permalinks` option for pages in the "root" section, use **/** as the key:
+
+{{< code-toggle file="config" copy="false" >}}
+permalinks:
+ /: /:year/:month/:filename/
+{{< /code-toggle >}}
+
+If the standard date-based permalink configuration does not meet your needs, you can also format URL segments using [Go time formatting directives](https://golang.org/pkg/time/#Time.Format). For example, a URL structure with two digit years and month and day digits without zero padding can be accomplished with:
+
+{{< code-toggle file="config" copy="false" >}}
+permalinks:
+ posts: /:06/:1/:2/:title/
+{{< /code-toggle >}}
+
+You can also configure permalinks of taxonomies with the same syntax, by using the plural form of the taxonomy instead of the section. You will probably only want to use the configuration values `:slug` or `:title`.
+
+### Permalink Configuration Values
+
+The following is a list of values that can be used in a `permalink` definition in your site `config` file. All references to time are dependent on the content's date.
+
+`:year`
+: the 4-digit year
+
+`:month`
+: the 2-digit month
+
+`:monthname`
+: the name of the month
+
+`:day`
+: the 2-digit day
+
+`:weekday`
+: the 1-digit day of the week (Sunday = 0)
+
+`:weekdayname`
+: the name of the day of the week
+
+`:yearday`
+: the 1- to 3-digit day of the year
+
+`:section`
+: the content's section
+
+`:sections`
+: the content's sections hierarchy. {{< new-in "0.83.0" >}} Since Hugo 0.83 you can use a selection of the sections using _slice syntax_: `:sections[1:]` includes all but the first, `:sections[:last]` includes all but the last, `:sections[last]` includes only the last, `:sections[1:2]` includes section 2 and 3. Note that this slice access will not throw any out-of-bounds errors, so you don't have to be exact.
+
+`:title`
+: the content's title
+
+`:slug`
+: the content's slug (or title if no slug is provided in the front matter)
+
+`:filename`
+: the content's filename (without extension)
+
+Additionally, a Go time format string prefixed with `:` may be used.
+
+## Aliases
+
+Aliases can be used to create redirects to your page from other URLs.
+
+Aliases comes in two forms:
+
+1. Starting with a `/` meaning they are relative to the `BaseURL`, e.g. `/posts/my-blogpost/`
+2. They are relative to the `Page` they're defined in, e.g. `my-blogpost` or even something like `../blog/my-blogpost` (new in Hugo 0.55).
+
+### Example: Aliases
+
+Let's assume you create a new piece of content at `content/posts/my-awesome-blog-post.md`. The content is a revision of your previous post at `content/posts/my-original-url.md`. You can create an `aliases` field in the front matter of your new `my-awesome-blog-post.md` where you can add previous paths. The following examples show how to create this field in TOML and YAML front matter, respectively.
+
+#### TOML Front Matter
+
+{{< code file="content/posts/my-awesome-post.md" copy="false" >}}
++++
+aliases = [
+ "/posts/my-original-url/",
+ "/2010/01/01/even-earlier-url.html"
+]
++++
+{{< /code >}}
+
+#### YAML Front Matter
+
+{{< code file="content/posts/my-awesome-post.md" copy="false" >}}
+---
+aliases:
+ - /posts/my-original-url/
+ - /2010/01/01/even-earlier-url.html
+---
+{{< /code >}}
+
+Now when you visit any of the locations specified in aliases---i.e., *assuming the same site domain*---you'll be redirected to the page they are specified on. For example, a visitor to `example.com/posts/my-original-url/` will be immediately redirected to `example.com/posts/my-awesome-post/`.
+
+### Example: Aliases in Multilingual
+
+On [multilingual sites][multilingual], each translation of a post can have unique aliases. To use the same alias across multiple languages, prefix it with the language code.
+
+In `/posts/my-new-post.es.md`:
+
+```
+---
+aliases:
+ - /es/posts/my-original-post/
+---
+```
+
+From Hugo 0.55 you can also have page-relative aliases, so ` /es/posts/my-original-post/` can be simplified to the more portable `my-original-post/`
+
+### How Hugo Aliases Work
+
+When aliases are specified, Hugo creates a directory to match the alias entry. Inside the directory, Hugo creates an `.html` file specifying the canonical URL for the page and the new redirect target.
+
+For example, a content file at `posts/my-intended-url.md` with the following in the front matter:
+
+```
+---
+title: My New post
+aliases: [/posts/my-old-url/]
+---
+```
+
+Assuming a `baseURL` of `example.com`, the contents of the auto-generated alias `.html` found at `https://example.com/posts/my-old-url/` will contain the following:
+
+```
+<!DOCTYPE html>
+<html>
+ <head>
+ <title>https://example.com/posts/my-intended-url</title>
+ <link rel="canonical" href="https://example.com/posts/my-intended-url"/>
+ <meta name="robots" content="noindex">
+ <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
+ <meta http-equiv="refresh" content="0; url=https://example.com/posts/my-intended-url"/>
+ </head>
+</html>
+```
+
+The `http-equiv="refresh"` line is what performs the redirect, in 0 seconds in this case. If an end user of your website goes to `https://example.com/posts/my-old-url`, they will now be automatically redirected to the newer, correct URL. The addition of `<meta name="robots" content="noindex">` lets search engine bots know that they should not crawl and index your new alias page.
+
+### Customize
+You may customize this alias page by creating an `alias.html` template in the
+layouts folder of your site (i.e., `layouts/alias.html`). In this case, the data passed to the template is
+
+`Permalink`
+: the link to the page being aliased
+
+`Page`
+: the Page data for the page being aliased
+
+### Important Behaviors of Aliases
+
+1. Hugo makes no assumptions about aliases. They also do not change based
+on your UglyURLs setting. You need to provide absolute paths to your web root
+and the complete filename or directory.
+2. Aliases are rendered *before* any content are rendered and therefore will be overwritten by any content with the same location.
+
+## Pretty URLs
+
+Hugo's default behavior is to render your content with "pretty" URLs. No non-standard server-side configuration is required for these pretty URLs to work.
+
+The following demonstrates the concept:
+
+```
+content/posts/_index.md
+=> example.com/posts/
+content/posts/post-1.md
+=> example.com/posts/post-1/
+```
+
+## Ugly URLs
+
+If you would like to have what are often referred to as "ugly URLs" (e.g., example.com/urls.html), set `uglyurls = true` or `uglyurls: true` in your site's `config.toml` or `config.yaml`, respectively. You can also set the `HUGO_UGLYURLS` environment variable to `true` when running `hugo` or `hugo server`.
+
+If you want a specific piece of content to have an exact URL, you can specify this in the [front matter][] under the `url` key. The following are examples of the same content directory and what the eventual URL structure will be when Hugo runs with its default behavior.
+
+See [Content Organization][contentorg] for more details on paths.
+
+```
+.
+└── content
+ └── about
+ | └── _index.md // <- https://example.com/about/
+ ├── posts
+ | ├── firstpost.md // <- https://example.com/posts/firstpost/
+ | ├── happy
+ | | └── ness.md // <- https://example.com/posts/happy/ness/
+ | └── secondpost.md // <- https://example.com/posts/secondpost/
+ └── quote
+ ├── first.md // <- https://example.com/quote/first/
+ └── second.md // <- https://example.com/quote/second/
+```
+
+Here's the same organization run with `hugo --uglyURLs`:
+
+```
+.
+└── content
+ └── about
+ | └── _index.md // <- https://example.com/about.html
+ ├── posts
+ | ├── firstpost.md // <- https://example.com/posts/firstpost.html
+ | ├── happy
+ | | └── ness.md // <- https://example.com/posts/happy/ness.html
+ | └── secondpost.md // <- https://example.com/posts/secondpost.html
+ └── quote
+ ├── first.md // <- https://example.com/quote/first.html
+ └── second.md // <- https://example.com/quote/second.html
+```
+
+
+## Canonicalization
+
+By default, all relative URLs encountered in the input are left unmodified, e.g. `/css/foo.css` would stay as `/css/foo.css`. The `canonifyURLs` field in your site `config` has a default value of `false`.
+
+By setting `canonifyURLs` to `true`, all relative URLs would instead be *canonicalized* using `baseURL`. For example, assuming you have `baseURL = https://example.com/`, the relative URL `/css/foo.css` would be turned into the absolute URL `https://example.com/css/foo.css`.
+
+Benefits of canonicalization include fixing all URLs to be absolute, which may aid with some parsing tasks. Note, however, that all modern browsers handle this on the client without issue.
+
+Benefits of non-canonicalization include being able to have scheme-relative resource inclusion; e.g., so that `http` vs `https` can be decided according to how the page was retrieved.
+
+{{% note "`canonifyURLs` default change" %}}
+In the May 2014 release of Hugo v0.11, the default value of `canonifyURLs` was switched from `true` to `false`, which we think is the better default and should continue to be the case going forward. Please verify and adjust your website accordingly if you are upgrading from v0.10 or older versions.
+{{% /note %}}
+
+To find out the current value of `canonifyURLs` for your website, you may use the handy `hugo config` command added in v0.13.
+
+```
+hugo config | grep -i canon
+```
+
+Or, if you are on Windows and do not have `grep` installed:
+
+```
+hugo config | FINDSTR /I canon
+```
+
+## Set URL in Front Matter
+
+In addition to specifying permalink values in your site configuration for different content sections, Hugo provides even more granular control for individual pieces of content.
+
+Both `slug` and `url` can be defined in individual front matter. For more information on content destinations at build time, see [Content Organization][contentorg].
+
+From Hugo 0.55, you can use URLs relative to the current site context (the language), which makes it simpler to maintain. For a Japanese translation, both of the following examples would get the same URL:
+
+```markdown
+---
+title: "Custom URL!"
+url: "/jp/custom/foo"
+---
+```
+
+```markdown
+---
+title: "Custom URL!"
+url: "custom/foo"
+---
+```
+
+
+## Relative URLs
+
+By default, all relative URLs are left unchanged by Hugo, which can be problematic when you want to make your site browsable from a local file system.
+
+Setting `relativeURLs` to `true` in your [site configuration][config] will cause Hugo to rewrite all relative URLs to be relative to the current content.
+
+For example, if your `/posts/first/` page contains a link to `/about/`, Hugo will rewrite the URL to `../../about/`.
+
+[config]: /getting-started/configuration/
+[contentorg]: /content-management/organization/
+[front matter]: /content-management/front-matter/
+[multilingual]: /content-management/multilingual/
+[sections]: /content-management/sections/
+[usage]: /getting-started/usage/
diff --git a/docs/content/en/contribute/_index.md b/docs/content/en/contribute/_index.md
new file mode 100644
index 000000000..5e46ae287
--- /dev/null
+++ b/docs/content/en/contribute/_index.md
@@ -0,0 +1,23 @@
+---
+title: Contribute to the Hugo Project
+linktitle: Contribute to Hugo
+description: Contribute to Hugo development and documentation.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [contribute]
+keywords: []
+menu:
+ docs:
+ parent: "contribute"
+ weight: 01
+weight: 01 #rem
+draft: false
+slug:
+aliases: [/tutorials/how-to-contribute-to-hugo/,/community/contributing/]
+toc: false
+---
+
+Hugo relies heavily on the enthusiasm and participation of the open-source community. We need your support in both its development and documentation.
+
+Hugo's contribution guidelines are [detailed in a `CONTRIBUTING.md`](https://github.com/gohugoio/hugo/blob/master/CONTRIBUTING.md) in the Hugo source repository on GitHub.
diff --git a/docs/content/en/contribute/development.md b/docs/content/en/contribute/development.md
new file mode 100644
index 000000000..6ba6ccd08
--- /dev/null
+++ b/docs/content/en/contribute/development.md
@@ -0,0 +1,442 @@
+---
+title: Contribute to Hugo Development
+linktitle: Development
+description: Hugo relies heavily on contributions from the open source community.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [contribute]
+keywords: [dev,open source]
+authors: [digitalcraftsman]
+menu:
+ docs:
+ parent: "contribute"
+ weight: 10
+weight: 10
+sections_weight: 10
+draft: false
+toc: true
+---
+
+## Introduction
+
+Hugo is an open-source project and lives by the work of its [contributors][]. There are plenty of [open issues][issues], and we need your help to make Hugo even more awesome. You don't need to be a Go guru to contribute to the project's development.
+
+## Assumptions
+
+This contribution guide takes a step-by-step approach in hopes of helping newcomers. Therefore, we only assume the following:
+
+* You are new to Git or open-source projects in general
+* You are a fan of Hugo and enthusiastic about contributing to the project
+
+{{% note "Additional Questions?" %}}
+If you're struggling at any point in this contribution guide, reach out to the Hugo community in [Hugo's Discussion forum](https://discourse.gohugo.io).
+{{% /note %}}
+
+## Install Go
+
+The installation of Go should take only a few minutes. You have more than one option to get Go up and running on your machine.
+
+If you are having trouble following the installation guides for Go, check out [Go Bootcamp, which contains setups for every platform][gobootcamp] or reach out to the Hugo community in the [Hugo Discussion Forums][forums].
+
+### Install Go From Source
+
+[Download the latest stable version of Go][godl] and follow the official [Go installation guide][goinstall].
+
+Once you're finished installing Go, let's confirm everything is working correctly. Open a terminal---or command line under Windows--and type the following:
+
+```
+go version
+```
+
+You should see something similar to the following written to the console. Note that the version here reflects the most recent version of Go as of the last update for this page:
+
+```
+go version go1.12 darwin/amd64
+```
+
+Next, make sure that you set up your `GOPATH` [as described in the installation guide][setupgopath].
+
+You can print the `GOPATH` with `echo $GOPATH`. You should see a non-empty string containing a valid path to your Go workspace; for example:
+
+```
+/Users/<yourusername>/Code/go
+```
+
+### Install Go with Homebrew
+
+If you are a MacOS user and have [Homebrew](https://brew.sh/) installed on your machine, installing Go is as simple as the following command:
+
+{{< code file="install-go.sh" >}}
+brew install go
+{{< /code >}}
+
+### Install Go via GVM
+
+More experienced users can use the [Go Version Manager][gvm] (GVM). GVM allows you to switch between different Go versions *on the same machine*. If you're a beginner, you probably don't need this feature. However, GVM makes it easy to upgrade to a new released Go version with just a few commands.
+
+GVM comes in especially handy if you follow the development of Hugo over a longer period of time. Future versions of Hugo will usually be compiled with the latest version of Go. Sooner or later, you will have to upgrade if you want to keep up.
+
+## Create a GitHub Account
+
+If you're going to contribute code, you'll need to have an account on GitHub. Go to [www.github.com/join](https://github.com/join) and set up a personal account.
+
+## Install Git on Your System
+
+You will need to have Git installed on your computer to contribute to Hugo development. Teaching Git is outside the scope of the Hugo docs, but if you're looking for an excellent reference to learn the basics of Git, we recommend the [Git book][gitbook] if you are not sure where to begin. We will include short explanations of the Git commands in this document.
+
+Git is a [version control system](https://en.wikipedia.org/wiki/Version_control) to track the changes of source code. Hugo depends on smaller third-party packages that are used to extend the functionality. We use them because we don't want to reinvent the wheel.
+
+Go ships with a sub-command called `get` that will download these packages for us when we setup our working environment. The source code of the packages is tracked with Git. `get` will interact with the Git servers of the package hosters in order to fetch all dependencies.
+
+Move back to the terminal and check if Git is already installed. Type in `git version` and press enter. You can skip the rest of this section if the command returned a version number. Otherwise [download](https://git-scm.com/downloads) the latest version of Git and follow this [installation guide](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git).
+
+Finally, check again with `git version` if Git was installed successfully.
+
+### Git Graphical Front Ends
+
+There are several [GUI clients](https://git-scm.com/downloads/guis) that help you to operate Git. Not all are available for all operating systems and maybe differ in their usage. Because of this we will document how to use the command line, since the commands are the same everywhere.
+
+### Install Hub on Your System (Optional)
+
+Hub is a great tool for working with GitHub. The main site for it is [hub.github.com](https://hub.github.com/). Feel free to install this little Git wrapper.
+
+On a Mac, you can install [Hub](https://github.com/github/hub) using [Homebrew](https://brew.sh):
+
+```
+brew install hub
+```
+
+Now we'll create an [alias in Bash](https://tldp.org/LDP/abs/html/aliases.html) so that typing `git` actually runs `Hub`:
+
+```
+echo "alias git='hub'" >> ~/.bash_profile
+```
+
+Confirm the installation:
+
+```
+git version 2.21.0
+hub version 2.10.0
+```
+
+## Set up your working copy
+
+You set up the working copy of the repository locally on your computer. Your local copy of the files is what you'll edit, compile, and end up pushing back to GitHub. The main steps are cloning the repository and creating your fork as a remote.
+
+### Clone the repository
+
+We assume that you've set up your `GOPATH` (see the section above if you're unsure about this). You should now copy the Hugo repository down to your computer. You'll hear this called "clone the repo". GitHub's [help pages](https://help.github.com/articles/cloning-a-repository/) give us a short explanation:
+
+> When you create a repository on GitHub, it exists as a remote repository. You can create a local clone of your repository on your computer and sync between the two locations.
+
+We're going to clone the [master Hugo repository](https://github.com/gohugoio/hugo). That seems counter-intuitive, since you won't have commit rights on it. But it's required for the Go workflow. You'll work on a copy of the master and push your changes to your own repository on GitHub.
+
+So, let's make a new directory and clone that master repository:
+
+```
+mkdir $HOME/src
+cd $HOME/src
+git clone https://github.com/gohugoio/hugo.git
+```
+
+> Since Hugo 0.48, Hugo uses the Go Modules support built into Go 1.11 to build.
+> The easiest is to clone Hugo in a directory outside of GOPATH
+
+And then, install dependencies of Hugo by running the following in the cloned directory:
+
+```
+cd $HOME/src/hugo
+go install
+```
+
+
+Hugo relies on [mage](https://github.com/magefile/mage) for some convenient build and test targets. If you don't already have it, get it:
+
+```
+go install github.com/magefile/mage@latest
+```
+
+### Fork the repository
+
+If you're not familiar with this term, GitHub's [help pages](https://help.github.com/articles/fork-a-repo/) provide again a simple explanation:
+
+> A fork is a copy of a repository. Forking a repository allows you to freely experiment with changes without affecting the original project.
+
+#### Fork by hand
+
+Open the [Hugo repository](https://github.com/gohugoio/hugo) on GitHub and click on the "Fork" button in the top right.
+
+![Fork button](/images/contribute/development/forking-a-repository.png)
+
+Now open your fork repository on GitHub and copy the remote url of your fork. You can choose between HTTPS and SSH as protocol that Git should use for the following operations. HTTPS works always [if you're not sure](https://help.github.com/articles/which-remote-url-should-i-use/).
+
+![Copy remote url](/images/contribute/development/copy-remote-url.png)
+
+Switch back to the terminal and move into the directory of the cloned master repository from the last step.
+
+```
+cd $HOME/src/hugo
+```
+
+Now Git needs to know that our fork exists by adding the copied remote url:
+
+```
+git remote add <YOUR-GITHUB-USERNAME> <COPIED REMOTE-URL>
+```
+
+#### Fork with Hub
+
+Alternatively, you can use the Git wrapper Hub. Hub makes forking a repository easy:
+
+```
+git fork
+```
+
+That command will log in to GitHub using your account, create a fork of the repository that you're currently working in, and add it as a remote to your working copy.
+
+#### Trust, but verify
+
+Let's check if everything went right by listing all known remotes:
+
+```
+git remote -v
+```
+
+The output should look similar:
+
+```
+digitalcraftsman git@github.com:digitalcraftsman/hugo.git (fetch)
+digitalcraftsman git@github.com:digitalcraftsman/hugo.git (push)
+origin https://github.com/gohugoio/hugo (fetch)
+origin https://github.com/gohugoio/hugo (push)
+```
+
+## The Hugo Git Contribution Workflow
+
+### Create a new branch
+
+You should never develop against the "master" branch. The development team will not accept a pull request against that branch. Instead, create a descriptive named branch and work on it.
+
+First, you should always pull the latest changes from the master repository:
+
+```
+git checkout master
+git pull
+```
+
+Now we can create a new branch for your additions:
+
+```
+git checkout -b <BRANCH-NAME>
+```
+
+You can check on which branch you are with `git branch`. You should see a list of all local branches. The current branch is indicated with a little asterisk.
+
+### Contribute to Documentation
+
+Perhaps you want to start contributing to the Hugo docs. If so, you can ignore most of the following steps and focus on the `/docs` directory within your newly cloned repository. You can change directories into the Hugo docs using `cd docs`.
+
+You can start Hugo's built-in server via `hugo server`. Browse the documentation by entering [http://localhost:1313](http://localhost:1313) in the address bar of your browser. The server automatically updates the page whenever you change content.
+
+We have developed a [separate Hugo documentation contribution guide][docscontrib] for more information on how the Hugo docs are built, organized, and improved by the generosity of people like you.
+
+### Build Hugo
+
+While making changes in the codebase it's a good idea to build the binary to test them:
+
+```
+mage hugo
+```
+
+This command generates the binary file at the root of the repository.
+
+If you want to install the binary in `$GOPATH/bin`, run
+
+```
+mage install
+```
+
+### Test
+Sometimes changes on the codebase can cause unintended side effects. Or they don't work as expected. Most functions have their own test cases. You can find them in files ending with `_test.go`.
+
+Make sure the commands
+
+```
+mage -v check
+```
+
+passes.
+
+### Formatting
+The Go code styleguide maybe is opinionated but it ensures that the codebase looks the same, regardless who wrote the code. Go comes with its own formatting tool. Let's apply the styleguide to our additions:
+
+```
+mage fmt
+```
+
+Once you made your additions commit your changes. Make sure that you follow our [code contribution guidelines](https://github.com/gohugoio/hugo/blob/master/CONTRIBUTING.md):
+
+```
+# Add all changed files
+git add --all
+git commit --message "YOUR COMMIT MESSAGE"
+```
+
+The commit message should describe what the commit does (e.g. add feature XYZ), not how it is done.
+
+### Modify commits
+
+You noticed some commit messages don't fulfill the code contribution guidelines or you just forget something to add some files? No problem. Git provides the necessary tools to fix such problems. The next two methods cover all common cases.
+
+If you are unsure what a command does leave the commit as it is. We can fix your commits later in the pull request.
+
+#### Modify the last commit
+
+Let's say you want to modify the last commit message. Run the following command and replace the current message:
+
+```
+git commit --amend -m"YOUR NEW COMMIT MESSAGE"
+```
+
+Take a look at the commit log to see the change:
+
+```
+git log
+# Exit with q
+```
+
+After making the last commit you may have forgot something. There is no need to create a new commit. Just add the latest changes and merge them into the intended commit:
+
+```
+git add --all
+git commit --amend
+```
+
+#### Modify multiple commits
+
+{{% warning "Be Careful Modifying Multiple Commits"%}}
+Modifications such as those described in this section can have serious unintended consequences. Skip this section if you're not sure!
+{{% /warning %}}
+
+This is a bit more advanced. Git allows you to [rebase](https://git-scm.com/docs/git-rebase) commits interactively. In other words: it allows you to rewrite the commit history.
+
+```
+git rebase --interactive @~6
+```
+
+The `6` at the end of the command represents the number of commits that should be modified. An editor should open and present a list of last six commit messages:
+
+```
+pick 80d02a1 tpl: Add hasPrefix to the template funcs' "smoke test"
+pick aaee038 tpl: Sort the smoke tests
+pick f0dbf2c tpl: Add the other test case for hasPrefix
+pick 911c35b Add "How to contribute to Hugo" tutorial
+pick 33c8973 Begin workflow
+pick 3502f2e Refactoring and typo fixes
+```
+
+In the case above we should merge the last two commits in the commit of this tutorial (`Add "How to contribute to Hugo" tutorial`). You can "squash" commits, i.e. merge two or more commits into a single one.
+
+All operations are written before the commit message. Replace "pick" with an operation. In this case `squash` or `s` for short:
+
+```
+pick 80d02a1 tpl: Add hasPrefix to the template funcs' "smoke test"
+pick aaee038 tpl: Sort the smoke tests
+pick f0dbf2c tpl: Add the other test case for hasPrefix
+pick 911c35b Add "How to contribute to Hugo" tutorial
+squash 33c8973 Begin workflow
+squash 3502f2e Refactoring and typo fixes
+```
+
+We also want to rewrite the commits message of the third last commit. We forgot "docs:" as prefix according to the code contribution guidelines. The operation to rewrite a commit is called `reword` (or `r` as shortcut).
+
+You should end up with a similar setup:
+
+```
+pick 80d02a1 tpl: Add hasPrefix to the template funcs' "smoke test"
+pick aaee038 tpl: Sort the smoke tests
+pick f0dbf2c tpl: Add the other test case for hasPrefix
+reword 911c35b Add "How to contribute to Hugo" tutorial
+squash 33c8973 Begin workflow
+squash 3502f2e Refactoring and typo fixes
+```
+
+Close the editor. It should open again with a new tab. A text is instructing you to define a new commit message for the last two commits that should be merged (aka "squashed"). Save the file with <kbd>CTRL</kbd>+<kbd>S</kbd> and close the editor again.
+
+A last time a new tab opens. Enter a new commit message and save again. Your terminal should contain a status message. Hopefully this one:
+
+```
+Successfully rebased and updated refs/heads/<BRANCHNAME>.
+```
+
+Check the commit log if everything looks as expected. Should an error occur you can abort this rebase with `git rebase --abort`.
+
+### Push commits
+
+To push our commits to the fork on GitHub we need to specify a destination. A destination is defined by the remote and a branch name. Earlier, the defined that the remote url of our fork is the same as our GitHub handle, in my case `digitalcraftsman`. The branch should have the same as our local one. This makes it easy to identify corresponding branches.
+
+```
+git push --set-upstream <YOUR-GITHUB-USERNAME> <BRANCHNAME>
+```
+
+Now Git knows the destination. Next time when you to push commits you just need to enter `git push`.
+
+If you modified your commit history in the last step GitHub will reject your try to push. This is a safety-feature because the commit history isn't the same and new commits can't be appended as usual. You can enforce this push explicitly with `git push --force`.
+
+## Open a pull request
+
+We made a lot of progress. Good work. In this step we finally open a pull request to submit our additions. Open the [Hugo master repository](https://github.com/gohugoio/hugo/) on GitHub in your browser.
+
+You should find a green button labeled with "New pull request". But GitHub is clever and probably suggests you a pull request like in the beige box below:
+
+![Open a pull request](/images/contribute/development/open-pull-request.png)
+
+The new page summaries the most important information of your pull request. Scroll down and you find the additions of all your commits. Make sure everything looks as expected and click on "Create pull request".
+
+### Accept the contributor license agreement
+
+Last but not least you should accept the contributor license agreement (CLA). A new comment should be added automatically to your pull request. Click on the yellow badge, accept the agreement and authenticate yourself with your GitHub account. It just takes a few clicks and only needs to be done once.
+
+![Accept the CLA](/images/contribute/development/accept-cla.png)
+
+### Automatic builds
+
+We use the [Travis CI loop](https://travis-ci.org/gohugoio/hugo) (Linux and OS&nbsp;X) and [AppVeyor](https://ci.appveyor.com/project/gohugoio/hugo/branch/master) (Windows) to compile Hugo with your additions. This should ensure that everything works as expected before merging your pull request. This in most cases only relevant if you made changes to the codebase of Hugo.
+
+![Automatic builds and their status](/images/contribute/development/ci-errors.png)
+
+Above you can see that Travis wasn't able to compile the changes in this pull request. Click on "Details" and try to investigate why the build failed. But it doesn't have to be your fault. Mostly, the `master` branch that we used as foundation for your pull request should build without problems.
+
+If you have questions, leave a comment in the pull request. We are willing to assist you.
+
+## Where to start?
+
+Thank you for reading through this contribution guide. Hopefully, we will see you again soon on GitHub. There are plenty of [open issues][issues] for you to help with.
+
+Feel free to [open an issue][newissue] if you think you found a bug or you have a new idea to improve Hugo. We are happy to hear from you.
+
+## Additional References for Learning Git and Go
+
+* [Codecademy's Free "Learn Git" Course][codecademy] (Free)
+* [Code School and GitHub's "Try Git" Tutorial][trygit] (Free)
+* [The Git Book][gitbook] (Free)
+* [Go Bootcamp][gobootcamp]
+* [GitHub Pull Request Tutorial, Thinkful][thinkful]
+
+
+[codecademy]: https://www.codecademy.com/learn/learn-git
+[contributors]: https://github.com/gohugoio/hugo/graphs/contributors
+[docscontrib]: /contribute/documentation/
+[forums]: https://discourse.gohugo.io
+[gitbook]: https://git-scm.com/
+[gobootcamp]: http://www.golangbootcamp.com/book/get_setup
+[godl]: https://golang.org/dl/
+[goinstall]: https://golang.org/doc/install
+[gvm]: https://github.com/moovweb/gvm
+[issues]: https://github.com/gohugoio/hugo/issues
+[newissue]: https://github.com/gohugoio/hugo/issues/new
+[releases]: /getting-started/
+[setupgopath]: https://golang.org/doc/code.html#Workspaces
+[thinkful]: https://www.thinkful.com/learn/github-pull-request-tutorial/
+[trygit]: https://try.github.io/levels/1/challenges/1
diff --git a/docs/content/en/contribute/documentation.md b/docs/content/en/contribute/documentation.md
new file mode 100644
index 000000000..014f6761e
--- /dev/null
+++ b/docs/content/en/contribute/documentation.md
@@ -0,0 +1,334 @@
+---
+title: Contribute to the Hugo Docs
+linktitle: Documentation
+description: Documentation is an integral part of any open source project. The Hugo docs are as much a work in progress as the source it attempts to cover.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [contribute]
+keywords: [docs,documentation,community, contribute]
+menu:
+ docs:
+ parent: "contribute"
+ weight: 20
+weight: 20
+sections_weight: 20
+draft: false
+aliases: [/contribute/docs/]
+toc: true
+---
+
+## Create Your Fork
+
+It's best to make changes to the Hugo docs on your local machine to check for consistent visual styling. Make sure you've created a fork of [hugoDocs](https://github.com/gohugoio/hugoDocs) on GitHub and cloned the repository locally on your machine. For more information, you can see [GitHub's documentation on "forking"][ghforking] or follow along with [Hugo's development contribution guide][hugodev].
+
+You can then create a separate branch for your additions. Be sure to choose a descriptive branch name that best fits the type of content. The following is an example of a branch name you might use for adding a new website to the showcase:
+
+```
+git checkout -b jon-doe-showcase-addition
+```
+
+## Add New Content
+
+The Hugo docs make heavy use of Hugo's [archetypes][] feature. All content sections in Hugo documentation have an assigned archetype.
+
+Adding new content to the Hugo docs follows the same pattern, regardless of the content section:
+
+```
+hugo new <DOCS-SECTION>/<new-content-lowercase>.md
+```
+
+### Add a New Function
+
+Once you have cloned the Hugo repository, you can create a new function via the following command. Keep the file name lowercase.
+
+```
+hugo new functions/newfunction.md
+```
+
+The archetype for `functions` according to the Hugo docs is as follows:
+
+{{< code file="archetypes/functions.md" >}}
+{{< readfile file="/archetypes/functions.md">}}
+{{< /code >}}
+
+#### New Function Required Fields
+
+Here is a review of the front matter fields automatically generated for you using `hugo new functions/*`:
+
+***`title`***
+: this will be auto-populated in all lowercase when you use `hugo new` generator.
+
+***`linktitle`***
+: the function's actual casing (e.g., `replaceRE` rather than `replacere`).
+
+***`description`***
+: a brief description used to populate the [Functions Quick Reference](/functions/).
+
+`categories`
+: currently auto-populated with 'functions` for future-proofing and portability reasons only; ignore this field.
+
+`tags`
+: only if you think it will help end users find other related functions
+
+`signature`
+: this is a signature/syntax definition for calling the function (e.g., `apply SEQUENCE FUNCTION [PARAM...]`).
+
+`workson`
+: acceptable values include `lists`,`taxonomies`, `terms`, `groups`, and `files`.
+
+`hugoversion`
+: the version of Hugo that will ship with this new function.
+
+`relatedfuncs`
+: other [templating functions][] you feel are related to your new function to help fellow Hugo users.
+
+`{{.Content}}`
+: an extended description of the new function; examples are not only welcomed but encouraged.
+
+In the body of your function, expand the short description used in the front matter. Include as many examples as possible, and leverage the Hugo docs [`code` shortcode](#adding-code-blocks). If you are unable to add examples but would like to solicit help from the Hugo community, add `needsexample: true` to your front matter.
+
+## Add Code Blocks
+
+Code blocks are crucial for providing examples of Hugo's new features to end users of the Hugo docs. Whenever possible, create examples that you think Hugo users will be able to implement in their own projects.
+
+### Standard Syntax
+
+Across many pages on the Hugo docs, the typical triple-back-tick markdown syntax (```` ``` ````) is used. If you do not want to take the extra time to implement the following code block shortcodes, please use standard GitHub-flavored markdown. The Hugo docs use a version of [highlight.js](https://highlightjs.org/) with a specific set of languages.
+
+Your options for languages are `xml`/`html`, `go`/`golang`, `md`/`markdown`/`mkd`, `handlebars`, `apache`, `toml`, `yaml`, `json`, `css`, `asciidoc`, `ruby`, `powershell`/`ps`, `scss`, `sh`/`zsh`/`bash`/`git`, `http`/`https`, and `javascript`/`js`.
+
+````
+```
+<h1>Hello world!</h1>
+```
+````
+
+
+### Code Block Shortcode
+
+The Hugo documentation comes with a very robust shortcode for adding interactive code blocks.
+
+{{% note %}}
+With the `code` shortcodes, *you must include triple back ticks and a language declaration*. This was done by design so that the shortcode wrappers were easily added to legacy documentation and will be that much easier to remove if needed in future versions of the Hugo docs.
+{{% /note %}}
+
+### `code`
+
+`code` is the Hugo docs shortcode you'll use most often. `code` requires has only one named parameter: `file`. Here is the pattern:
+
+```
+{{%/* code file="smart/file/name/with/path.html" download="download.html" copy="true" */%}}
+A whole bunch of coding going on up in here!
+{{%/* /code */%}}
+```
+
+The following are the arguments passed into `code`:
+
+
+***`file`***
+: the only *required* argument. `file` is needed for styling but also plays an important role in helping users create a mental model around Hugo's directory structure. Visually, this will be displayed as text in the top left of the code block.
+
+`download`
+: if omitted, this will have no effect on the rendered shortcode. When a value is added to `download`, it's used as the filename for a downloadable version of the code block.
+
+`copy`
+: a copy button is added automatically to all `code` shortcodes. If you want to keep the filename and styling of `code` but don't want to encourage readers to copy the code (e.g., a "Do not do" snippet in a tutorial), use `copy="false"`.
+
+#### Example `code` Input
+
+This example HTML code block tells Hugo users the following:
+
+1. This file *could* live in `layouts/_default`, as demonstrated by `layouts/_default/single.html` as the value for `file`.
+2. This snippet is complete enough to be downloaded and implemented in a Hugo project, as demonstrated by `download="single.html"`.
+
+```
+{{</* code file="layouts/_default/single.html" download="single.html" */>}}
+{{ define "main" }}
+<main>
+ <article>
+ <header>
+ <h1>{{.Title}}</h1>
+ {{with .Params.subtitle}}
+ <span>{{.}}</span>
+ </header>
+ <div>
+ {{.Content}}
+ </div>
+ <aside>
+ {{.TableOfContents}}
+ </aside>
+ </article>
+</main>
+{{ end }}
+{{</* /code */>}}
+```
+
+##### Example 'code' Display
+
+The output of this example will render to the Hugo docs as follows:
+
+{{< code file="layouts/_default/single.html" download="single.html" >}}
+{{ define "main" }}
+<main>
+ <article>
+ <header>
+ <h1>{{.Title}}</h1>
+ {{with .Params.subtitle}}
+ <span>{{.}}</span>
+ </header>
+ <div>
+ {{.Content}}
+ </div>
+ <aside>
+ {{.TableOfContents}}
+ </aside>
+ </article>
+</main>
+{{ end }}
+{{< /code >}}
+
+<!-- #### Output Code Block
+
+The `output` shortcode is almost identical to the `code` shortcode but only takes and requires `file`. The purpose of `output` is to show *rendered* HTML and therefore almost always follows another basic code block *or* and instance of the `code` shortcode:
+
+```
+{{%/* output file="posts/my-first-post/index.html" */%}}
+<h1>This is my First Hugo Blog Post</h1>
+<p>I am excited to be using Hugo.</p>
+{{%/* /output */%}}
+```
+
+The preceding `output` example will render as follows to the Hugo docs:
+
+{{< output file="posts/my-first-post/index.html" >}}
+<h1>This is my First Hugo Blog Post</h1>
+<p>I am excited to be using Hugo.</p>
+{{< /output >}} -->
+
+## Blockquotes
+
+Blockquotes can be added to the Hugo documentation using [typical Markdown blockquote syntax][bqsyntax]:
+
+```
+> Without the threat of punishment, there is no joy in flight.
+```
+
+The preceding blockquote will render as follows in the Hugo docs:
+
+> Without the threat of punishment, there is no joy in flight.
+
+However, you can add a quick and easy `<cite>` element (added on the client via JavaScript) by separating your main blockquote and the citation with a hyphen with a single space on each side:
+
+```
+> Without the threat of punishment, there is no joy in flight. - [Kobo Abe](https://en.wikipedia.org/wiki/Kobo_Abe)
+```
+
+Which will render as follows in the Hugo docs:
+
+> Without the threat of punishment, there is no joy in flight. - [Kobo Abe][abe]
+
+{{% note "Blockquotes `!=` Admonitions" %}}
+Previous versions of Hugo documentation used blockquotes to draw attention to text. This is *not* the [intended semantic use of `<blockquote>`](https://html5doctor.com/cite-and-blockquote-reloaded/). Use blockquotes when quoting. To note or warn your user of specific information, use the admonition shortcodes that follow.
+{{% /note %}}
+
+## Admonitions
+
+**Admonitions** are common in technical documentation. The most popular is that seen in [reStructuredText Directives][sourceforge]. From the SourceForge documentation:
+
+> Admonitions are specially marked "topics" that can appear anywhere an ordinary body element can. They contain arbitrary body elements. Typically, an admonition is rendered as an offset block in a document, sometimes outlined or shaded, with a title matching the admonition type. - [SourceForge][sourceforge]
+
+The Hugo docs contain three admonitions: `note`, `tip`, and `warning`.
+
+### `note` Admonition
+
+Use the `note` shortcode when you want to draw attention to information subtly. `note` is intended to be less of an interruption in content than is `warning`.
+
+#### Example `note` Input
+
+{{< code file="note-with-heading.md" >}}
+{{%/* note */%}}
+Here is a piece of information I would like to draw your **attention** to.
+{{%/* /note */%}}
+{{< /code >}}
+
+#### Example `note` Output
+
+{{< output file="note-with-heading.html" >}}
+{{% note %}}
+Here is a piece of information I would like to draw your **attention** to.
+{{% /note %}}
+{{< /output >}}
+
+#### Example `note` Display
+
+{{% note %}}
+Here is a piece of information I would like to draw your **attention** to.
+{{% /note %}}
+
+### `tip` Admonition
+
+Use the `tip` shortcode when you want to give the reader advice. `tip`, like `note`, is intended to be less of an interruption in content than is `warning`.
+
+#### Example `tip` Input
+
+{{< code file="using-tip.md" >}}
+{{%/* tip */%}}
+Here's a bit of advice to improve your productivity with Hugo.
+{{%/* /tip */%}}
+{{< /code >}}
+
+#### Example `tip` Output
+
+{{< output file="tip-output.html" >}}
+{{% tip %}}
+Here's a bit of advice to improve your productivity with Hugo.
+{{% /tip %}}
+{{< /output >}}
+
+#### Example `tip` Display
+
+{{% tip %}}
+Here's a bit of advice to improve your productivity with Hugo.
+{{% /tip %}}
+
+### `warning` Admonition
+
+Use the `warning` shortcode when you want to draw the user's attention to something important. A good usage example is for articulating breaking changes in Hugo versions, known bugs, or templating "gotchas."
+
+#### Example `warning` Input
+
+{{< code file="warning-admonition-input.md" >}}
+{{%/* warning */%}}
+This is a warning, which should be reserved for *important* information like breaking changes.
+{{%/* /warning */%}}
+{{< /code >}}
+
+#### Example `warning` Output
+
+{{< output file="warning-admonition-output.html" >}}
+{{% warning %}}
+This is a warning, which should be reserved for *important* information like breaking changes.
+{{% /warning %}}
+{{< /output >}}
+
+#### Example `warning` Display
+
+{{% warning %}}
+This is a warning, which should be reserved for *important* information like breaking changes.
+{{% /warning %}}
+
+{{% note "Pull Requests and Branches" %}}
+Similar to [contributing to Hugo development](/contribute/development/), the Hugo team expects you to create a separate branch/fork when you make your contributions to the Hugo docs.
+{{% /note %}}
+
+[abe]: https://en.wikipedia.org/wiki/Kobo_Abe
+[archetypes]: /content-management/archetypes/
+[bqsyntax]: https://github.com/adam-p/markdown-here/wiki/Markdown-Cheatsheet#blockquotes
+[charcount]: https://www.lettercount.com/
+[`docs/static/images/showcase/`]: https://github.com/gohugoio/hugo/tree/master/docs/static/images/showcase/
+[ghforking]: https://help.github.com/articles/fork-a-repo/
+[hugodev]: /contribute/development/
+[shortcodeparams]: content-management/shortcodes/#shortcodes-without-markdown
+[sourceforge]: https://docutils.sourceforge.io/docs/ref/rst/directives.html#admonitions
+[templating function]: /functions/
diff --git a/docs/content/en/contribute/themes.md b/docs/content/en/contribute/themes.md
new file mode 100644
index 000000000..403bac825
--- /dev/null
+++ b/docs/content/en/contribute/themes.md
@@ -0,0 +1,31 @@
+---
+title: Add Your Hugo Theme to the Showcase
+linktitle: Themes
+description: If you've built a Hugo theme and want to contribute back to the Hugo Community, share it with us.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-27
+categories: [contribute]
+keywords: [contribute,themes,design]
+authors: [digitalcraftsman]
+menu:
+ docs:
+ parent: "contribute"
+ weight: 30
+weight: 30
+sections_weight: 30
+draft: false
+aliases: [/contribute/theme/]
+wip: true
+toc: true
+---
+
+A collection of all themes created by the Hugo community, including screenshots and demos, can be found at [themes.gohugo.io]. Every theme in this list will automatically be added to the theme site.
+
+Another great site for Hugo themes is [jamstackthemes.dev/](https://jamstackthemes.dev/ssg/hugo/).
+
+### Add Your Theme to the Repo
+
+In order to add your Hugo theme to [themes.gohugo.io] please [open a pull request in the theme repository](https://github.com/gohugoio/hugoThemesSiteBuilder). **Please make sure that you've read the theme submission guidelines in the [README](https://github.com/gohugoio/hugoThemesSiteBuilder/blob/main/README.md#hugo-themes) of the hugoThemesSiteBuilder repository.**
+
+[themes.gohugo.io]: https://themes.gohugo.io/
diff --git a/docs/content/en/documentation.md b/docs/content/en/documentation.md
new file mode 100644
index 000000000..77cf283fa
--- /dev/null
+++ b/docs/content/en/documentation.md
@@ -0,0 +1,21 @@
+---
+title: Hugo Documentation
+linktitle: Hugo
+description: Hugo is the world's fastest static website engine. It's written in Go (aka Golang) and developed by bep, spf13 and friends.
+date: 2017-02-01
+publishdate: 2017-02-01
+menu:
+ main:
+ parent: "section name"
+ weight: 01
+weight: 01 #rem
+draft: false
+slug:
+aliases: []
+toc: false
+layout: documentation-home
+---
+
+Hugo is the **world's fastest static website engine.** It's written in Go (aka Golang) and developed by [bep](https://github.com/bep), [spf13](https://github.com/spf13) and [friends](https://github.com/gohugoio/hugo/graphs/contributors).
+
+Below you will find some of the most common and helpful pages from our documentation.
diff --git a/docs/content/en/functions/GetPage.md b/docs/content/en/functions/GetPage.md
new file mode 100644
index 000000000..aa5e9323f
--- /dev/null
+++ b/docs/content/en/functions/GetPage.md
@@ -0,0 +1,88 @@
+---
+title: .GetPage
+description: "Gets a `Page` of a given `path`."
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [sections,lists,indexes]
+signature: [".GetPage PATH"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+`.GetPage` returns a page of a given `path`. Both `Site` and `Page` implements this method. The `Page` variant will, if given a relative path -- i.e. a path without a leading `/` -- try look for the page relative to the current page.
+
+{{% note %}}
+**Note:** We overhauled and simplified the `.GetPage` API in Hugo 0.45. Before that you needed to provide a `Kind` attribute in addition to the path, e.g. `{{ .Site.GetPage "section" "blog" }}`. This will still work, but is now superfluous.
+{{% /note %}}
+
+
+```go-html-template
+{{ with .Site.GetPage "/blog" }}{{ .Title }}{{ end }}
+```
+
+This method will return `nil` when no page could be found, so the above will not print anything if the blog section is not found.
+
+To find a regular page in the blog section::
+
+```go-html-template
+{{ with .Site.GetPage "/blog/my-post.md" }}{{ .Title }}{{ end }}
+```
+
+And since `Page` also provides a `.GetPage` method, the above is the same as:
+
+```go-html-template
+{{ with .Site.GetPage "/blog" }}
+{{ with .GetPage "my-post.md" }}{{ .Title }}{{ end }}
+{{ end }}
+```
+
+## .GetPage and Multilingual Sites
+
+The previous examples have used the full content filename to lookup the post. Depending on how you have organized your content (whether you have the language code in the file name or not, e.g. `my-post.en.md`), you may want to do the lookup without extension. This will get you the current language's version of the page:
+
+```go-html-template
+{{ with .Site.GetPage "/blog/my-post" }}{{ .Title }}{{ end }}
+```
+
+## .GetPage Example
+
+This code snippet---in the form of a [partial template][partials]---allows you to do the following:
+
+1. Grab the index object of your `tags` [taxonomy][].
+2. Assign this object to a variable, `$t`
+3. Sort the terms associated with the taxonomy by popularity.
+4. Grab the top two most popular terms in the taxonomy (i.e., the two most popular tags assigned to content.
+
+{{< code file="grab-top-two-tags.html" >}}
+<ul class="most-popular-tags">
+{{ $t := .Site.GetPage "/tags" }}
+{{ range first 2 $t.Data.Terms.ByCount }}
+ <li>{{ . }}</li>
+{{ end }}
+</ul>
+{{< /code >}}
+
+## `.GetPage` on Page Bundles
+
+If the page retrieved by `.GetPage` is a [Leaf Bundle][leaf_bundle], and you
+need to get the nested _**page** resources_ in that, you will need to use the
+methods in `.Resources` as explained in the [Page Resources][page_resources]
+section.
+
+See the [Headless Bundle][headless_bundle] documentation for an example.
+
+
+[partials]: /templates/partials/
+[taxonomy]: /content-management/taxonomies/
+[page_kinds]: /templates/section-templates/#page-kinds
+[leaf_bundle]: /content-management/page-bundles/#leaf-bundles
+[headless_bundle]: /content-management/page-bundles/#headless-bundle
+[page_resources]: /content-management/page-resources/
diff --git a/docs/content/en/functions/RenderString.md b/docs/content/en/functions/RenderString.md
new file mode 100644
index 000000000..1b77f6a38
--- /dev/null
+++ b/docs/content/en/functions/RenderString.md
@@ -0,0 +1,38 @@
+---
+title: .RenderString
+description: "Renders markup to HTML."
+date: 2019-12-18
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [markdown,goldmark,render]
+signature: [".RenderString MARKUP"]
+---
+
+{{< new-in "0.62.0" >}}
+
+`.RenderString` is a method on `Page` that renders some markup to HTML using the content renderer defined for that page (if not set in the options).
+
+*Note* that this method does not parse and render shortcodes.
+
+The method takes an optional map argument with these options:
+
+display ("inline")
+: `inline` or `block`. If `inline` (default), surrounding `<p></p>` on short snippets will be trimmed.
+
+markup (defaults to the Page's markup)
+: See identifiers in [List of content formats](/content-management/formats/#list-of-content-formats).
+
+Some examples:
+
+```go-html-template
+{{ $optBlock := dict "display" "block" }}
+{{ $optOrg := dict "markup" "org" }}
+{{ "**Bold Markdown**" | $p.RenderString }}
+{{ "**Bold Block Markdown**" | $p.RenderString $optBlock }}
+{{ "/italic org mode/" | $p.RenderString $optOrg }}
+```
+
+
+**Note** that this method is more powerful than the similar [markdownify](/functions/markdownify/) function as it also supports [Render Hooks](/getting-started/configuration-markup/#markdown-render-hooks) and it has options to render other markup formats.
diff --git a/docs/content/en/functions/_index.md b/docs/content/en/functions/_index.md
new file mode 100644
index 000000000..fa7974685
--- /dev/null
+++ b/docs/content/en/functions/_index.md
@@ -0,0 +1,19 @@
+---
+title: Functions Quick Reference
+linktitle: Functions Quick Reference
+description: Comprehensive list of Hugo templating functions, including basic and advanced usage examples.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+keywords: []
+menu:
+ docs:
+ parent: "functions"
+weight: 01 #rem
+draft: false
+aliases: [/layout/functions/,/templates/functions]
+---
+
+Go templates are lightweight but extensible. Go itself supplies built-in functions, including comparison operators and other basic tools. These are listed in the [Go template documentation][gofuncs]. Hugo has added additional functions to the basic template logic.
+
+[gofuncs]: https://golang.org/pkg/text/template/#hdr-Functions
diff --git a/docs/content/en/functions/abslangurl.md b/docs/content/en/functions/abslangurl.md
new file mode 100644
index 000000000..d9818fcaf
--- /dev/null
+++ b/docs/content/en/functions/abslangurl.md
@@ -0,0 +1,27 @@
+---
+title: absLangURL
+description: Adds the absolute URL with correct language prefix according to site configuration for multilingual.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [multilingual,i18n,urls]
+signature: ["absLangURL INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: [relLangURL]
+deprecated: false
+aliases: []
+---
+
+Both `absLangURL` and [`relLangURL`](/functions/rellangurl/) are similar to their [`absURL`](/functions/absurl/) and [`relURL`](/functions/relurl) relatives but will add the correct language prefix when the site is configured with more than one language.
+
+So for a site `baseURL` set to `https://example.com/hugo/` and the current language is `en`:
+
+```
+{{ "blog/" | absLangURL }} → "https://example.com/hugo/en/blog/"
+{{ "blog/" | relLangURL }} → "/hugo/en/blog/"
+```
diff --git a/docs/content/en/functions/absurl.md b/docs/content/en/functions/absurl.md
new file mode 100644
index 000000000..13524d2d6
--- /dev/null
+++ b/docs/content/en/functions/absurl.md
@@ -0,0 +1,50 @@
+---
+title: absURL
+description: Creates an absolute URL based on the configured baseURL.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [urls]
+signature: ["absURL INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: [relURL]
+deprecated: false
+aliases: []
+---
+
+Both `absURL` and `relURL` consider the configured value of `baseURL` in your site's [`config` file][configuration]. Given a `baseURL` set to `https://example.com/hugo/`:
+
+```
+{{ "mystyle.css" | absURL }} → "https://example.com/hugo/mystyle.css"
+{{ "mystyle.css" | relURL }} → "/hugo/mystyle.css"
+{{ "http://gohugo.io/" | relURL }} → "http://gohugo.io/"
+{{ "http://gohugo.io/" | absURL }} → "http://gohugo.io/"
+```
+
+The last two examples may look strange but can be very useful. For example, the following shows how to use `absURL` in [JSON-LD structured data (SEO)][jsonld], where some of your images for a piece of content may or may not be hosted locally:
+
+{{< code file="layouts/partials/schemaorg-metadata.html" download="schemaorg-metadata.html" >}}
+<script type="application/ld+json">
+{
+ "@context" : "http://schema.org",
+ "@type" : "BlogPosting",
+ "image" : {{ apply .Params.images "absURL" "." }}
+}
+</script>
+{{< /code >}}
+
+The above uses the [apply function][] and also exposes how the Go template parser JSON-encodes objects inside `<script>` tags. See [the safeJS template function][safejs] for examples of how to tell Hugo not to escape strings inside of such tags.
+
+{{% note "Ending Slash" %}}
+`absURL` and `relURL` are smart about missing slashes, but they will *not* add a closing slash to a URL if it is not present.
+{{% /note %}}
+
+[apply function]: /functions/apply/
+[configuration]: /getting-started/configuration/
+[jsonld]: https://developers.google.com/search/docs/guides/intro-structured-data
+[safejs]: /functions/safejs
diff --git a/docs/content/en/functions/adddate.md b/docs/content/en/functions/adddate.md
new file mode 100644
index 000000000..56008c956
--- /dev/null
+++ b/docs/content/en/functions/adddate.md
@@ -0,0 +1,51 @@
+---
+title: .AddDate
+description: Returns the time corresponding to adding the given number of years, months, and days passed to the function.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [dates,time]
+signature: [".AddDate YEARS MONTHS DAYS"]
+workson: [times]
+hugoversion:
+relatedfuncs: [now]
+deprecated: false
+aliases: []
+---
+
+
+The `AddDate` function takes three arguments in logical order of `years`, `months`, and `days`.
+
+## Example: Randomized Tweets from the Last 2 Years
+
+Let's assume you have a file at `data/tweets.toml` that contains a list of Tweets to display on your site's homepage. The file is filled with `[[tweet]]` blocks; e.g.---
+
+{{< code-toggle file="data/tweets" >}}
+[[tweet]]
+name = "Steve Francia"
+twitter_handle = "@spf13"
+quote = "I'm creator of Hugo. #metadocreference"
+link = "https://twitter.com/spf13"
+date = "2017-01-07T00:00:00Z"
+{{< /code-toggle >}}
+
+Let's assume you want to grab Tweets from the last two years and present them in a random order. In conjunction with the [`where`](/functions/where/) and [`now`](/functions/now/) functions, you can limit our range to the last two years via `now.AddDate -2 0 0`, which represents a point in time 2 years, 0 months, and 0 days before the time of your last site build.
+
+{{< code file="partials/templates/random-tweets.html" download="tweets.html" >}}
+{{ range where $.Site.Data.tweets.tweet "date" "ge" (now.AddDate -2 0 0) | shuffle }}
+ <div class="item">
+ <blockquote>
+ <p>
+ {{ .quote | safeHTML }}
+ </p>
+ &mdash; {{ .name }} ({{ .twitter_handle }}) <a href="{{ .link }}">
+ {{ dateFormat "January 2, 2006" .date }}
+ </a>
+ </blockquote>
+ </div>
+{{ end }}
+{{< /code >}}
diff --git a/docs/content/en/functions/after.md b/docs/content/en/functions/after.md
new file mode 100644
index 000000000..da93b3e44
--- /dev/null
+++ b/docs/content/en/functions/after.md
@@ -0,0 +1,65 @@
+---
+title: after
+description: "`after` slices an array to only the items after the <em>N</em>th item."
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [iteration]
+signature: ["after INDEX COLLECTION"]
+workson: []
+hugoversion:
+relatedfuncs: [last,first,seq]
+deprecated: false
+aliases: []
+---
+
+The following shows `after` being used in conjunction with the [`slice` function][slice]:
+
+```
+{{ $data := slice "one" "two" "three" "four" }}
+{{ range after 2 $data }}
+ {{ . }}
+{{ end }}
+→ ["three", "four"]
+```
+
+## Example of `after` with `first`: 2nd&ndash;4th Most Recent Articles
+
+You can use `after` in combination with the [`first` function][] and Hugo's [powerful sorting methods][lists]. Let's assume you have a list page at `example.com/articles`. You have 10 articles, but you want your templating for the [list/section page][] to show only two rows:
+
+1. The top row is titled "Featured" and shows only the most recently published article (i.e. by `publishdate` in the content files' front matter).
+2. The second row is titled "Recent Articles" and shows only the 2nd- to 4th-most recently published articles.
+
+{{< code file="layouts/section/articles.html" download="articles.html" >}}
+{{ define "main" }}
+<section class="row featured-article">
+ <h2>Featured Article</h2>
+ {{ range first 1 .Pages.ByPublishDate.Reverse }}
+ <header>
+ <h3><a href="{{.Permalink}}">{{.Title}}</a></h3>
+ </header>
+ <p>{{.Description}}</p>
+ {{ end }}
+</section>
+<div class="row recent-articles">
+ <h2>Recent Articles</h2>
+ {{ range first 3 (after 1 .Pages.ByPublishDate.Reverse) }}
+ <section class="recent-article">
+ <header>
+ <h3><a href="{{.Permalink}}">{{.Title}}</a></h3>
+ </header>
+ <p>{{.Description}}</p>
+ </section>
+ {{ end }}
+</div>
+{{ end }}
+{{< /code >}}
+
+[`first` function]: /functions/first/
+[list/section page]: /templates/section-templates/
+[lists]: /templates/lists/#order-content
+[slice]: /functions/slice/
diff --git a/docs/content/en/functions/anchorize.md b/docs/content/en/functions/anchorize.md
new file mode 100644
index 000000000..87aea2354
--- /dev/null
+++ b/docs/content/en/functions/anchorize.md
@@ -0,0 +1,27 @@
+---
+title: anchorize
+description: Takes a string and sanitizes it the same way as the [`defaultMarkdownHandler`](https://gohugo.io/getting-started/configuration-markup#configure-markup) does for markdown headers.
+date: 2018-10-13
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [markdown,strings]
+signature: ["anchorize INPUT"]
+hugoversion: "0.39"
+workson: []
+relatedfuncs: [humanize]
+---
+
+If [Goldmark](https://gohugo.io/getting-started/configuration-markup#goldmark) is set as `defaultMarkdownHandler`, the sanitizing logic adheres to the setting [`markup.goldmark.parser.autoHeadingIDType`](https://gohugo.io/getting-started/configuration-markup#goldmark). If [Blackfriday](https://gohugo.io/getting-started/configuration-markup#blackfriday) is set as `defaultMarkdownHandler`, this template function uses the [`SanitizedAnchorName` logic from Blackfriday](https://github.com/russross/blackfriday#sanitized-anchor-names) (the same applies when `markup.goldmark.parser.autoHeadingIDType` is set to `blackfriday`).
+
+Since the `defaultMarkdownHandler` and this template function use the same sanitizing logic, you can use the latter to determine the ID of a header for linking with anchor tags.
+
+```
+{{anchorize "This is a header"}} → "this-is-a-header"
+{{anchorize "This is also a header"}} → "this-is-also-a-header"
+{{anchorize "main.go"}} → "main-go"
+{{anchorize "Article 123"}} → "article-123"
+{{anchorize "<- Let's try this, shall we?"}} → "let-s-try-this-shall-we"
+{{anchorize "Hello, 世界"}} → "hello-世界"
+```
diff --git a/docs/content/en/functions/append.md b/docs/content/en/functions/append.md
new file mode 100644
index 000000000..732ffeadd
--- /dev/null
+++ b/docs/content/en/functions/append.md
@@ -0,0 +1,38 @@
+---
+title: append
+description: "`append` appends one or more values to a slice and returns the resulting slice."
+date: 2018-09-14
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [collections]
+signature: ["COLLECTION | append VALUE [VALUE]...", "COLLECTION | append COLLECTION"]
+workson: []
+hugoversion: "0.49"
+relatedfuncs: [last,first,where,slice]
+aliases: []
+---
+
+An example appending single values:
+
+```go-html-template
+{{ $s := slice "a" "b" "c" }}
+{{ $s = $s | append "d" "e" }}
+{{/* $s now contains a []string with elements "a", "b", "c", "d", and "e" */}}
+
+```
+
+The same example appending a slice to a slice:
+
+
+```go-html-template
+{{ $s := slice "a" "b" "c" }}
+{{ $s = $s | append (slice "d" "e") }}
+```
+
+The `append` function works for all types, including `Pages`.
+
+
+
+
diff --git a/docs/content/en/functions/apply.md b/docs/content/en/functions/apply.md
new file mode 100644
index 000000000..3a507c7f9
--- /dev/null
+++ b/docs/content/en/functions/apply.md
@@ -0,0 +1,118 @@
+---
+title: apply
+description: Given a map, array, or slice, `apply` returns a new slice with a function applied over it.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [advanced]
+signature: ["apply COLLECTION FUNCTION [PARAM...]"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+draft: false
+aliases: []
+---
+
+{{< todo >}}
+POTENTIAL NEW CONTENT: see apply/sequence discussion: https://discourse.gohugo.io/t/apply-printf-on-a-sequence/5722;
+{{< /todo >}}
+
+`apply` expects at least three parameters, depending on the function being applied.
+
+1. The first parameter is the sequence to operate on.
+2. The second parameter is the name of the function as a string, which must be the name of a valid [Hugo function][functions].
+3. After that, the parameters to the applied function are provided, with the string `"."` standing in for each element of the sequence the function is to be applied against.
+
+Here is an example of a content file with `names:` as a front matter field:
+
+```
++++
+names: [ "Derek Perkins", "Joe Bergevin", "Tanner Linsley" ]
++++
+```
+
+You can then use `apply` as follows:
+
+```
+{{ apply .Params.names "urlize" "." }}
+```
+
+Which will result in the following:
+
+```
+"derek-perkins", "joe-bergevin", "tanner-linsley"
+```
+
+This is *roughly* equivalent to using the following with [range][]:
+
+```
+{{ range .Params.names }}{{ . | urlize }}{{ end }}
+```
+
+However, it is not possible to provide the output of a range to the [`delimit` function][delimit], so you need to `apply` it.
+
+If you have `post-tag-list.html` and `post-tag-link.html` as [partials][], you *could* use the following snippets, respectively:
+
+{{< code file="layouts/partials/post-tag-list.html" copy="false" >}}
+{{ with .Params.tags }}
+<div class="tags-list">
+ Tags:
+ {{ $len := len . }}
+ {{ if eq $len 1 }}
+ {{ partial "post-tag-link" (index . 0) }}
+ {{ else }}
+ {{ $last := sub $len 1 }}
+ {{ range first $last . }}
+ {{ partial "post-tag-link" . }},
+ {{ end }}
+ {{ partial "post-tag-link" (index . $last) }}
+ {{ end }}
+</div>
+{{ end }}
+{{< /code >}}
+
+{{< code file="layouts/partials/post-tag-link.html" copy="false" >}}
+<a class="post-tag post-tag-{{ . | urlize }}" href="/tags/{{ . | urlize }}">{{ . }}</a>
+{{< /code >}}
+
+This works, but the complexity of `post-tag-list.html` is fairly high. The Hugo template needs to perform special behavior for the case where there’s only one tag, and it has to treat the last tag as special. Additionally, the tag list will be rendered something like `Tags: tag1 , tag2 , tag3` because of the way that the HTML is generated and then interpreted by a browser.
+
+This first version of `layouts/partials/post-tag-list.html` separates all of the operations for ease of reading. The combined and DRYer version is shown next:
+
+```
+{{ with .Params.tags }}
+ <div class="tags-list">
+ Tags:
+ {{ $sort := sort . }}
+ {{ $links := apply $sort "partial" "post-tag-link" "." }}
+ {{ $clean := apply $links "chomp" "." }}
+ {{ delimit $clean ", " }}
+ </div>
+{{ end }}
+```
+
+Now in the completed version, you can sort the tags, convert the tags to links with `layouts/partials/post-tag-link.html`, [chomp][] off stray newlines, and join the tags together in a delimited list for presentation. Here is an even DRYer version of the preceding example:
+
+{{< code file="layouts/partials/post-tag-list.html" download="post-tag-list.html" >}}
+ {{ with .Params.tags }}
+ <div class="tags-list">
+ Tags:
+ {{ delimit (apply (apply (sort .) "partial" "post-tag-link" ".") "chomp" ".") ", " }}
+ </div>
+ {{ end }}
+{{< /code >}}
+
+{{% note %}}
+`apply` does not work when receiving the sequence as an argument through a pipeline.
+{{% /note %}}
+
+[chomp]: /functions/chomp/ "See documentation for the chomp function"
+[delimit]: /functions/delimit/ "See documentation for the delimit function"
+[functions]: /functions/ "See the full list of Hugo functions to see what can be passed as an argument to the apply function."
+[partials]: /templates/partials/
+[range]: /functions/range/ "Learn the importance of the range function, a fundamental keyword in both Hugo templates and the Go programming language."
diff --git a/docs/content/en/functions/base64.md b/docs/content/en/functions/base64.md
new file mode 100644
index 000000000..54ca0440c
--- /dev/null
+++ b/docs/content/en/functions/base64.md
@@ -0,0 +1,50 @@
+---
+title: base64
+description: "`base64Encode` and `base64Decode` let you easily decode content with a base64 encoding and vice versa through pipes."
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: []
+relatedfuncs: []
+signature: ["base64Decode INPUT", "base64Encode INPUT"]
+workson: []
+hugoversion:
+deprecated: false
+draft: false
+aliases: []
+---
+
+An example:
+
+{{< code file="base64-input.html" >}}
+<p>Hello world = {{ "Hello world" | base64Encode }}</p>
+<p>SGVsbG8gd29ybGQ = {{ "SGVsbG8gd29ybGQ=" | base64Decode }}</p>
+{{< /code >}}
+
+{{< output file="base-64-output.html" >}}
+<p>Hello world = SGVsbG8gd29ybGQ=</p>
+<p>SGVsbG8gd29ybGQ = Hello world</p>
+{{< /output >}}
+
+You can also pass other data types as arguments to the template function which tries to convert them. The following will convert *42* from an integer to a string because both `base64Encode` and `base64Decode` always return a string.
+
+```
+{{ 42 | base64Encode | base64Decode }}
+=> "42" rather than 42
+```
+
+## `base64` with APIs
+
+Using base64 to decode and encode becomes really powerful if we have to handle
+responses from APIs.
+
+```
+{{ $resp := getJSON "https://api.github.com/repos/gohugoio/hugo/readme" }}
+{{ $resp.content | base64Decode | markdownify }}
+```
+
+The response of the GitHub API contains the base64-encoded version of the [README.md](https://github.com/gohugoio/hugo/blob/master/README.md) in the Hugo repository. Now we can decode it and parse the Markdown. The final output will look similar to the rendered version on GitHub.
diff --git a/docs/content/en/functions/chomp.md b/docs/content/en/functions/chomp.md
new file mode 100644
index 000000000..c56505c2c
--- /dev/null
+++ b/docs/content/en/functions/chomp.md
@@ -0,0 +1,24 @@
+---
+title: chomp
+toc: true
+description: Removes any trailing newline characters.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [trim]
+signature: ["chomp INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: [truncate]
+deprecated: false
+---
+
+Useful in a pipeline to remove newlines added by other processing (e.g., [`markdownify`](/functions/markdownify/)).
+
+```
+{{chomp "<p>Blockhead</p>\n"}} → "<p>Blockhead</p>"
+```
diff --git a/docs/content/en/functions/complement.md b/docs/content/en/functions/complement.md
new file mode 100644
index 000000000..461227789
--- /dev/null
+++ b/docs/content/en/functions/complement.md
@@ -0,0 +1,29 @@
+---
+title: "complement"
+description: "`collections.Complement` (alias `complement`) gives the elements of a collection that are not in any of the others."
+date: 2018-11-07
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [collections,intersect,union]
+signature: ["COLLECTION | complement COLLECTION [COLLECTION]..." ]
+hugoversion: "0.51"
+aliases: []
+---
+
+Example:
+
+```go-html-template
+{{ $pages := .Site.RegularPages | first 50 }}
+{{ $news := where $pages "Type" "news" | first 5 }}
+{{ $blog := where $pages "Type" "blog" | first 5 }}
+{{ $other := $pages | complement $news $blog | first 10 }}
+```
+
+The above is an imaginary use case for the home page where you want to display different page listings in sections/boxes on different places on the page: 5 from `news`, 5 from the `blog` and then 10 of the pages not shown in the other listings, to _complement_ them.
+
+
+
+
+
diff --git a/docs/content/en/functions/cond.md b/docs/content/en/functions/cond.md
new file mode 100644
index 000000000..a5e534426
--- /dev/null
+++ b/docs/content/en/functions/cond.md
@@ -0,0 +1,31 @@
+---
+title: "cond"
+date: 2017-09-08
+description: "Return one of two arguments, depending on the value of a third argument."
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+signature: ["cond CONTROL VAR1 VAR2"]
+hugoversion: 0.27
+relatedfuncs: [default]
+toc: false
+draft: false
+needsexamples: false
+---
+
+`cond` returns *VAR1* if *CONTROL* is true, or *VAR2* if it is not.
+
+Example:
+
+```
+{{ cond (eq (len $geese) 1) "goose" "geese" }}
+```
+
+Would emit "goose" if the `$geese` array has exactly 1 item, or "geese" otherwise.
+
+{{% warning %}}
+Whenever you use a `cond` function, *both* variable expressions are *always* evaluated. This means that a usage like `cond false (div 1 0) 27` will throw an error because `div 1 0` will be evaluated *even though the condition is false*.
+
+In other words, the `cond` function does *not* provide [short-circuit evaluation](https://en.wikipedia.org/wiki/Short-circuit_evaluation) and does *not* work like a normal [ternary operator](https://en.wikipedia.org/wiki/%3F:) that will pass over the first expression if the condition returns `false`.
+{{% /warning %}}
diff --git a/docs/content/en/functions/countrunes.md b/docs/content/en/functions/countrunes.md
new file mode 100644
index 000000000..0acef095b
--- /dev/null
+++ b/docs/content/en/functions/countrunes.md
@@ -0,0 +1,26 @@
+---
+title: countrunes
+description: Determines the number of runes in a string excluding any whitespace.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [counting, word count]
+signature: ["countrunes INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+---
+
+In contrast with `countwords` function, which counts every word in a string, the `countrunes` function determines the number of runes in the content and excludes any whitespace. This has specific utility if you are dealing with CJK-like languages.
+
+```
+{{ "Hello, 世界" | countrunes }}
+<!-- outputs a content length of 8 runes. -->
+```
+
+[pagevars]: /variables/page/
diff --git a/docs/content/en/functions/countwords.md b/docs/content/en/functions/countwords.md
new file mode 100644
index 000000000..17f0fa5c2
--- /dev/null
+++ b/docs/content/en/functions/countwords.md
@@ -0,0 +1,27 @@
+---
+title: countwords
+description: Counts the number of words in a string.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [counting, word count]
+signature: ["countwords INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: [countrunes]
+deprecated: false
+---
+
+The template function works similar to the [.WordCount page variable][pagevars].
+
+```
+{{ "Hugo is a static site generator." | countwords }}
+<!-- outputs a content length of 6 words. -->
+```
+
+
+[pagevars]: /variables/page/
diff --git a/docs/content/en/functions/dateformat.md b/docs/content/en/functions/dateformat.md
new file mode 100644
index 000000000..362efabd3
--- /dev/null
+++ b/docs/content/en/functions/dateformat.md
@@ -0,0 +1,55 @@
+---
+title: time.Format
+description: Converts a date/time to a localized string.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [dates,time,strings]
+signature: ["time.Format LAYOUT INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: [Format,now,Unix,time]
+deprecated: false
+---
+
+`time.Format` (alias `dateFormat`) converts either a `time.Time` object (e.g. `.Date`) or a timestamp string `INPUT` into the format specified by the `LAYOUT` string.
+
+```go-html-template
+{{ time.Format "Monday, Jan 2, 2006" "2015-01-21" }} → "Wednesday, Jan 21, 2015"
+```
+
+Note that since Hugo 0.87.0, `time.Format` will return a localized string for the current language. {{< new-in "0.87.0" >}}
+
+The `LAYOUT` string can be either:
+
+* [Go’s Layout String](/functions/format/#gos-layout-string) to learn about how the `LAYOUT` string has to be formatted. There are also some useful examples.
+* A custom Hugo layout identifier (see full list below)
+
+See the [`time` function](/functions/time/) to convert a timestamp string to a Go `time.Time` type value.
+
+
+## Date/time formatting layouts
+
+{{< new-in "0.87.0" >}}
+
+Go's date layout strings can be hard to reason about, especially with multiple languages. Since Hugo 0.87.0 you can alternatively use some predefined layout identifiers that will output localized dates or times:
+
+```go-html-template
+{{ .Date | time.Format ":date_long" }}
+```
+
+The full list of custom layouts with examples for English:
+
+* `:date_full` => `Wednesday, June 6, 2018`
+* `:date_long` => `June 6, 2018`
+* `:date_medium` => `Jun 6, 2018`
+* `:date_short` => `6/6/18`
+
+* `:time_full` => `2:09:37 am UTC`
+* `:time_long` => `2:09:37 am UTC`
+* `:time_medium` => `2:09:37 am`
+* `:time_short` => `2:09 am`
diff --git a/docs/content/en/functions/default.md b/docs/content/en/functions/default.md
new file mode 100644
index 000000000..eee00b200
--- /dev/null
+++ b/docs/content/en/functions/default.md
@@ -0,0 +1,92 @@
+---
+title: default
+description: Allows setting a default value that can be returned if a first value is not set.
+qref: "Returns a default value if a value is not set when checked."
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+keywords: [defaults]
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+toc:
+signature: ["default DEFAULT INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+draft: false
+aliases: []
+needsexamples: false
+---
+
+`default` checks whether a given value is set and returns a default value if it is not. *Set* in this context means different things depending on the data type:
+
+* non-zero for numeric types and times
+* non-zero length for strings, arrays, slices, and maps
+* any boolean or struct value
+* non-nil for any other types
+
+`default` function examples reference the following content page:
+
+{{< code file="content/posts/default-function-example.md" >}}
+---
+title: Sane Defaults
+seo_title:
+date: 2017-02-18
+font:
+oldparam: The default function helps make your templating DRYer.
+newparam:
+---
+{{< /code >}}
+
+`default` can be written in more than one way:
+
+```
+{{ index .Params "font" | default "Roboto" }}
+{{ default "Roboto" (index .Params "font") }}
+```
+
+Both of the above `default` function calls return `Roboto`.
+
+A `default` value, however, does not need to be hard coded like the previous example. The `default` value can be a variable or pulled directly from the front matter using dot notation:
+
+{{< code file="variable-as-default-value.html" nocopy="true" >}}
+{{$old := .Params.oldparam }}
+<p>{{ .Params.newparam | default $old }}</p>
+{{< /code >}}
+
+Which would return:
+
+```
+<p>The default function helps make your templating DRYer.</p>
+```
+
+And then using dot notation
+
+{{< code file="dot-notation-default-value.html" >}}
+<title>{{ .Params.seo_title | default .Title }}</title>
+{{< /code >}}
+
+Which would return
+
+{{< output file="dot-notation-default-return-value.html" >}}
+<title>Sane Defaults</title>
+{{< /output >}}
+
+The following have equivalent return values but are far less terse. This demonstrates the utility of `default`:
+
+Using `if`:
+
+{{< code file="if-instead-of-default.html" nocopy="true" >}}
+<title>{{if .Params.seo_title}}{{.Params.seo_title}}{{else}}{{.Title}}{{end}}</title>
+=> Sane Defaults
+{{< /code >}}
+
+Using `with`:
+
+{{< code file="with-instead-of-default.html" nocopy="true" >}}
+<title>{{with .Params.seo_title}}{{.}}{{else}}{{.Title}}{{end}}</title>
+=> Sane Defaults
+{{< /code >}}
diff --git a/docs/content/en/functions/delimit.md b/docs/content/en/functions/delimit.md
new file mode 100644
index 000000000..533af0523
--- /dev/null
+++ b/docs/content/en/functions/delimit.md
@@ -0,0 +1,62 @@
+---
+title: delimit
+description: Loops through any array, slice, or map and returns a string of all the values separated by a delimiter.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [iteration]
+toc: false
+signature: ["delimit COLLECTION DELIMIT LAST"]
+workson: [lists,taxonomies,terms]
+hugoversion:
+relatedfuncs: []
+deprecated: false
+draft: false
+aliases: []
+---
+
+`delimit` called in your template takes the form of
+
+```
+{{ delimit array/slice/map delimiter optionallastdelimiter}}
+```
+
+`delimit` loops through any array, slice, or map and returns a string of all the values separated by a delimiter, the second argument in the function call. There is an optional third parameter that lets you choose a different delimiter to go between the last two values in the loop.
+
+To maintain a consistent output order, maps will be sorted by keys and only a slice of the values will be returned.
+
+The examples of `delimit` that follow all use the same front matter:
+
+{{< code file="delimit-example-front-matter.toml" nocopy="true" >}}
++++
+title: I love Delimit
+tags: [ "tag1", "tag2", "tag3" ]
++++
+{{< /code >}}
+
+{{< code file="delimit-page-tags-input.html" >}}
+<p>Tags: {{ delimit .Params.tags ", " }}</p>
+{{< /code >}}
+
+{{< output file="delimit-page-tags-output.html" >}}
+<p>Tags: tag1, tag2, tag3</p>
+{{< /output >}}
+
+Here is the same example but with the optional "last" delimiter:
+
+{{< code file="delimit-page-tags-final-and-input.html" >}}
+Tags: {{ delimit .Params.tags ", " ", and " }}
+{{< /code >}}
+
+{{< output file="delimit-page-tags-final-and-output.html" >}}
+<p>Tags: tag1, tag2, and tag3</p>
+{{< /output >}}
+
+
+[lists]: /templates/lists/
+[taxonomies]: /templates/taxonomy-templates/#taxonomy-list-templates
+[terms]: /templates/taxonomy-templates/#terms-list-templates
diff --git a/docs/content/en/functions/dict.md b/docs/content/en/functions/dict.md
new file mode 100644
index 000000000..966b6af3e
--- /dev/null
+++ b/docs/content/en/functions/dict.md
@@ -0,0 +1,52 @@
+---
+title: dict
+description: Creates a dictionary from a list of key and value pairs.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-26
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [dictionary]
+signature: ["dict KEY VALUE [KEY VALUE]..."]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+`dict` is especially useful for passing more than one value to a partial template.
+
+Note that the `key` can be either a `string` or a `string slice`. The latter is useful to create a deeply nested structure, e.g.:
+
+```go-text-template
+{{ $m := dict (slice "a" "b" "c") "value" }}
+```
+
+
+## Example: Using `dict` to pass multiple values to a `partial`
+
+The partial below creates a SVG and expects `fill`, `height` and `width` from the caller:
+
+**Partial definition**
+
+{{< code file="layouts/partials/svgs/external-links.svg" download="external-links.svg" >}}
+<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink"
+fill="{{ .fill }}" width="{{ .width }}" height="{{ .height }}" viewBox="0 0 32 32" aria-label="External Link">
+<path d="M25.152 16.576v5.696q0 2.144-1.504 3.648t-3.648 1.504h-14.848q-2.144 0-3.648-1.504t-1.504-3.648v-14.848q0-2.112 1.504-3.616t3.648-1.536h12.576q0.224 0 0.384 0.16t0.16 0.416v1.152q0 0.256-0.16 0.416t-0.384 0.16h-12.576q-1.184 0-2.016 0.832t-0.864 2.016v14.848q0 1.184 0.864 2.016t2.016 0.864h14.848q1.184 0 2.016-0.864t0.832-2.016v-5.696q0-0.256 0.16-0.416t0.416-0.16h1.152q0.256 0 0.416 0.16t0.16 0.416zM32 1.152v9.12q0 0.48-0.352 0.8t-0.8 0.352-0.8-0.352l-3.136-3.136-11.648 11.648q-0.16 0.192-0.416 0.192t-0.384-0.192l-2.048-2.048q-0.192-0.16-0.192-0.384t0.192-0.416l11.648-11.648-3.136-3.136q-0.352-0.352-0.352-0.8t0.352-0.8 0.8-0.352h9.12q0.48 0 0.8 0.352t0.352 0.8z"></path>
+</svg>
+{{< /code >}}
+
+**Partial call**
+
+The `fill`, `height` and `width` values can be stored in one object with `dict` and passed to the partial:
+
+{{< code file="layouts/_default/list.html" >}}
+{{ partial "svgs/external-links.svg" (dict "fill" "#01589B" "width" 10 "height" 20 ) }}
+{{< /code >}}
+
+
+
+[partials]: /templates/partials/
diff --git a/docs/content/en/functions/echoparam.md b/docs/content/en/functions/echoparam.md
new file mode 100644
index 000000000..515b5c449
--- /dev/null
+++ b/docs/content/en/functions/echoparam.md
@@ -0,0 +1,24 @@
+---
+title: echoParam
+description: Prints a parameter if it is set.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: []
+signature: ["echoParam DICTIONARY KEY"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+draft: false
+aliases: []
+---
+
+
+```
+{{ echoParam .Params "project_url" }}
+```
diff --git a/docs/content/en/functions/emojify.md b/docs/content/en/functions/emojify.md
new file mode 100644
index 000000000..20e30fafa
--- /dev/null
+++ b/docs/content/en/functions/emojify.md
@@ -0,0 +1,31 @@
+---
+title: emojify
+description: Runs a string through the Emoji emoticons processor.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings,emojis]
+signature: ["emojify INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+---
+
+`emoji` runs a passed string through the Emoji emoticons processor.
+
+See the [Emoji cheat sheet][emojis] for available emoticons.
+
+The `emojify` function can be called in your templates but not directly in your content files by default. For emojis in content files, set `enableEmoji` to `true` in your site's [configuration][config]. Then you can write emoji shorthand directly into your content files; e.g. <code>I :</code><code>heart</code><code>: Hugo!</code>:
+
+I :heart: Hugo!
+
+
+[config]: /getting-started/configuration/
+[emojis]: https://www.webfx.com/tools/emoji-cheat-sheet/
+[sc]: /templates/shortcode-templates/
+[scsource]: https://github.com/gohugoio/hugo/tree/master/docs/layouts/shortcodes
diff --git a/docs/content/en/functions/eq.md b/docs/content/en/functions/eq.md
new file mode 100644
index 000000000..d342a628a
--- /dev/null
+++ b/docs/content/en/functions/eq.md
@@ -0,0 +1,24 @@
+---
+title: eq
+linktitle: eq
+description: Returns the boolean truth of arg1 == arg2.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [operators,logic]
+signature: ["eq ARG1 ARG2"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+
+```
+{{ if eq .Section "blog" }}current{{ end }}
+```
diff --git a/docs/content/en/functions/errorf.md b/docs/content/en/functions/errorf.md
new file mode 100644
index 000000000..41ea2f192
--- /dev/null
+++ b/docs/content/en/functions/errorf.md
@@ -0,0 +1,51 @@
+---
+title: errorf and warnf
+description: Log ERROR or WARNING from the templates.
+date: 2017-09-30
+publishdate: 2017-09-30
+lastmod: 2017-09-30
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings, log, error]
+signature: ["errorf FORMAT INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: [printf]
+deprecated: false
+---
+
+`errorf` or `warnf` will evaluate a format string, then output the result to the ERROR or WARNING log (and only once per error message to avoid flooding the log).
+
+Any ERROR will also cause the build to fail (the `hugo` command will `exit -1`).
+
+Both functions return an empty string, so the messages are only printed to the console.
+
+```
+{{ errorf "Failed to handle page %q" .Path }}
+```
+
+```
+{{ warnf "You should update the shortcodes in %q" .Path }}
+```
+
+Note that `errorf`, `erroridf`, and `warnf` support all the formatting verbs of the [fmt](https://golang.org/pkg/fmt/) package.
+
+## Suppress errors
+
+Sometimes it may make sense to let the user suppress an ERROR and make the build succeed.
+
+You can do this by using the `erroridf` function. This functions takes an error ID as the first argument.
+
+```
+{{ erroridf "my-custom-error" "You should consider fixing this." }}
+```
+
+This will produce:
+
+```
+ERROR 2021/06/07 17:47:38 You should consider fixing this.
+If you feel that this should not be logged as an ERROR, you can ignore it by adding this to your site config:
+ignoreErrors = ["my-custom-error"]
+```
diff --git a/docs/content/en/functions/fileExists.md b/docs/content/en/functions/fileExists.md
new file mode 100644
index 000000000..2175453de
--- /dev/null
+++ b/docs/content/en/functions/fileExists.md
@@ -0,0 +1,42 @@
+---
+title: "fileExists"
+linktitle: "fileExists"
+date: 2017-08-31T22:38:22+02:00
+description: Checks for file or directory existence.
+publishdate: 2017-08-31T22:38:22+02:00
+lastmod: 2021-11-26
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+signature: ["os.FileExists PATH","fileExists PATH"]
+workson: []
+hugoversion:
+relatedfuncs: ['os.ReadDir','os.ReadFile','os.Stat']
+deprecated: false
+aliases: []
+---
+The `os.FileExists` function attempts to resolve the path relative to the root of your project directory. If a matching file or directory is not found, it will attempt to resolve the path relative to the [`contentDir`]({{< relref "getting-started/configuration#contentdir">}}). A leading path separator (`/`) is optional.
+
+With this directory structure:
+
+```text
+content/
+├── about.md
+├── contact.md
+└── news/
+ ├── article-1.md
+ └── article-2.md
+```
+
+The function returns these values:
+
+```go-html-template
+{{ os.FileExists "content" }} --> true
+{{ os.FileExists "content/news" }} --> true
+{{ os.FileExists "content/news/article-1" }} --> false
+{{ os.FileExists "content/news/article-1.md" }} --> true
+{{ os.FileExists "news" }} --> true
+{{ os.FileExists "news/article-1" }} --> false
+{{ os.FileExists "news/article-1.md" }} --> true
+```
diff --git a/docs/content/en/functions/findRe.md b/docs/content/en/functions/findRe.md
new file mode 100644
index 000000000..b6375be9c
--- /dev/null
+++ b/docs/content/en/functions/findRe.md
@@ -0,0 +1,44 @@
+---
+title: findRE
+description: Returns a list of strings that match the regular expression.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [regex]
+signature: ["findRE PATTERN INPUT [LIMIT]"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+By default all matches will be included. The number of matches can be limited with an optional third parameter.
+
+The example below returns a list of all second level headers (`<h2>`) in the content:
+
+```
+{{ findRE "<h2.*?>(.|\n)*?</h2>" .Content }}
+```
+
+You can limit the number of matches in the list with a third parameter. The following example shows how to limit the returned value to just one match (or none, if there are no matched substrings):
+
+```
+{{ findRE "<h2.*?>(.|\n)*?</h2>" .Content 1 }}
+ <!-- returns ["<h2 id="#foo">Foo</h2>"] -->
+```
+
+{{% note %}}
+Hugo uses Go's [Regular Expression package](https://golang.org/pkg/regexp/), which is the same general syntax used by Perl, Python, and other languages but with a few minor differences for those coming from a background in PCRE. For a full syntax listing, see the [GitHub wiki for re2](https://github.com/google/re2/wiki/Syntax).
+
+If you are just learning RegEx, or at least Go's flavor, you can practice pattern matching in the browser at <https://regex101.com/>.
+{{% /note %}}
+
+[partials]: /templates/partials/
+[`plainify`]: /functions/plainify/
+[toc]: /content-management/toc/
+[`urlize`]: /functions/urlize
diff --git a/docs/content/en/functions/first.md b/docs/content/en/functions/first.md
new file mode 100644
index 000000000..98d162617
--- /dev/null
+++ b/docs/content/en/functions/first.md
@@ -0,0 +1,53 @@
+---
+title: first
+linktitle: first
+description: "Slices an array to only the first _N_ elements."
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [iteration]
+signature: ["first LIMIT COLLECTION"]
+workson: [lists,taxonomies,terms,groups]
+hugoversion:
+relatedfuncs: [after,last]
+deprecated: false
+aliases: []
+---
+
+`first` works in a similar manner to the [`limit` keyword in
+SQL][limitkeyword]. It reduces the array to only the `first N`
+elements. It takes the array and number of elements as input.
+
+`first` takes two arguments:
+1. `number of elements`
+2. `array` *or* `slice of maps or structs`
+
+{{< code file="layout/_default/section.html" >}}
+{{ range first 10 .Pages }}
+ {{ .Render "summary" }}
+{{ end }}
+{{< /code >}}
+
+*Note: Exclusive to `first`, LIMIT can be '0' to return an empty array.*
+
+## `first` and `where` Together
+
+Using `first` and [`where`][wherefunction] together can be very
+powerful. Below snippet gets a list of posts only from [**main
+sections**][mainsections], sorts it by the `title` parameter, and then
+ranges through only the first 5 posts in that list:
+
+{{< code file="first-and-where-together.html" >}}
+{{ range first 5 (where site.RegularPages "Type" "in" site.Params.mainSections).ByTitle }}
+ {{ .Content }}
+{{ end }}
+{{< /code >}}
+
+
+[limitkeyword]: https://www.techonthenet.com/sql/select_limit.php
+[wherefunction]: /functions/where/
+[mainsections]: /functions/where/#mainsections
diff --git a/docs/content/en/functions/float.md b/docs/content/en/functions/float.md
new file mode 100644
index 000000000..1c589e317
--- /dev/null
+++ b/docs/content/en/functions/float.md
@@ -0,0 +1,25 @@
+---
+title: float
+linktitle: float
+description: Creates a `float` from the argument passed into the function.
+date: 2017-09-28
+publishdate: 2017-09-28
+lastmod: 2017-09-28
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings,floats]
+signature: ["float INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+Useful for turning strings into floating point numbers.
+
+```
+{{ float "1.23" }} → 1.23
+```
diff --git a/docs/content/en/functions/format.md b/docs/content/en/functions/format.md
new file mode 100644
index 000000000..199030782
--- /dev/null
+++ b/docs/content/en/functions/format.md
@@ -0,0 +1,126 @@
+---
+title: .Format
+description: Formats built-in Hugo dates---`.Date`, `.PublishDate`, and `.Lastmod`---according to Go's layout string.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [dates,time]
+signature: [".Format FORMAT"]
+workson: [times]
+hugoversion:
+relatedfuncs: [dateFormat,now,Unix,time]
+deprecated: false
+aliases: []
+toc: true
+---
+
+`.Format` will format date values defined in your front matter and can be used as a property on the following [page variables][pagevars]:
+
+* `.PublishDate`
+* `.Date`
+* `.Lastmod`
+
+Assuming a key-value of `date: 2017-03-03` in a content file's front matter, your can run the date through `.Format` followed by a layout string for your desired output at build time:
+
+```
+{{ .PublishDate.Format "January 2, 2006" }} => March 3, 2017
+```
+
+For formatting *any* string representations of dates defined in your front matter, see the [`dateFormat` function][dateFormat], which will still leverage the Go layout string explained below but uses a slightly different syntax.
+
+## Go's Layout String
+
+Hugo templates [format your dates][time] via layout strings that point to a specific reference time:
+
+```
+Mon Jan 2 15:04:05 MST 2006
+```
+
+While this may seem arbitrary, the numerical value of `MST` is `07`, thus making the layout string a sequence of numbers.
+
+Here is a visual explanation [taken directly from the Go docs][gdex]:
+
+```
+ Jan 2 15:04:05 2006 MST
+=> 1 2 3 4 5 6 -7
+```
+
+### Hugo Date and Time Templating Reference
+
+The following examples show the layout string followed by the rendered output.
+
+The examples were rendered and tested in [CST][] and all point to the same field in a content file's front matter:
+
+```
+date: 2017-03-03T14:15:59-06:00
+```
+
+`.Date` (i.e. called via [page variable][pagevars])
+: **Returns**: `2017-03-03 14:15:59 -0600 CST`
+
+`"Monday, January 2, 2006"`
+: **Returns**: `Friday, March 3, 2017`
+
+`"Mon Jan 2 2006"`
+: **Returns**: `Fri Mar 3 2017`
+
+`"January 2006"`
+: **Returns**: `March 2017`
+
+`"2006-01-02"`
+: **Returns**: `2017-03-03`
+
+`"Monday"`
+: **Returns**: `Friday`
+
+`"02 Jan 06 15:04 MST"` (RFC822)
+: **Returns**: `03 Mar 17 14:15 CST`
+
+`"02 Jan 06 15:04 -0700"` (RFC822Z)
+: **Returns**: `03 Mar 17 14:15 -0600`
+
+`"Mon, 02 Jan 2006 15:04:05 MST"` (RFC1123)
+: **Returns**: `Fri, 03 Mar 2017 14:15:59 CST`
+
+`"Mon, 02 Jan 2006 15:04:05 -0700"` (RFC1123Z)
+: **Returns**: `Fri, 03 Mar 2017 14:15:59 -0600`
+
+More examples can be found in Go's [documentation for the time package][timeconst].
+
+### Cardinal Numbers and Ordinal Abbreviations
+
+Spelled-out cardinal numbers (e.g. "one", "two", and "three") are not currently supported.
+
+Ordinal abbreviations (i.e., with shorted suffixes like "1st", "2nd", and "3rd") are not currently directly supported. By using `{{.Date.Format "Jan 2nd 2006"}}`, Hugo assumes you want to append `nd` as a string to the day of the month. However, you can chain functions together to create something like this:
+
+```
+{{ .Date.Format "2" }}{{ if in (slice 1 21 31) .Date.Day}}st{{ else if in (slice 2 22) .Date.Day}}nd{{ else if in (slice 3 23) .Date.Day}}rd{{ else }}th{{ end }} of {{ .Date.Format "January 2006" }}
+```
+
+This will output:
+
+```
+5th of March 2017
+```
+
+
+### Use `.Local` and `.UTC`
+
+In conjunction with the [`dateFormat` function][dateFormat], you can also convert your dates to `UTC` or to local timezones:
+
+`{{ dateFormat "02 Jan 06 15:04 MST" .Date.UTC }}`
+: **Returns**: `03 Mar 17 20:15 UTC`
+
+`{{ dateFormat "02 Jan 06 15:04 MST" .Date.Local }}`
+: **Returns**: `03 Mar 17 14:15 CST`
+
+[CST]: https://en.wikipedia.org/wiki/Central_Time_Zone
+[dateFormat]: /functions/dateformat/
+[gdex]: https://golang.org/pkg/time/#example_Time_Format
+[pagevars]: /variables/page/
+[time]: https://golang.org/pkg/time/
+[timeconst]: https://golang.org/pkg/time/#ANSIC
diff --git a/docs/content/en/functions/ge.md b/docs/content/en/functions/ge.md
new file mode 100644
index 000000000..c7256c0e3
--- /dev/null
+++ b/docs/content/en/functions/ge.md
@@ -0,0 +1,24 @@
+---
+title: ge
+linktitle: ge
+description: Returns the boolean truth of arg1 >= arg2.
+date: 2017-07-26
+publishdate: 2017-07-26
+lastmod: 2017-07-26
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [operators,logic]
+signature: ["ge ARG1 ARG2"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+
+```
+{{ if ge 10 5 }}true{{ end }}
+```
diff --git a/docs/content/en/functions/get.md b/docs/content/en/functions/get.md
new file mode 100644
index 000000000..c5b75c7fd
--- /dev/null
+++ b/docs/content/en/functions/get.md
@@ -0,0 +1,30 @@
+---
+title: .Get
+description: Accesses positional and ordered parameters in shortcode declaration.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [shortcodes]
+signature: [".Get INDEX", ".Get KEY"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+needsexample: true
+---
+
+
+`.Get` is specifically used when creating your own [shortcode template][sc], to access the [positional and named](/templates/shortcode-templates/#positional-vs-named-parameters) parameters passed to it. When used with a numeric INDEX, it queries positional parameters (starting with 0). With a string KEY, it queries named parameters.
+
+When accessing a named parameter that does not exist, `.Get` returns an empty string instead of interrupting the build. The same goes with positional parameters in hugo version 0.40 and after. This allows you to chain `.Get` with `if`, `with`, `default` or `cond` to check for parameter existence. For example, you may now use:
+
+```
+{{ $quality := default "100" (.Get 1) }}
+```
+
+[sc]: /templates/shortcode-templates/
diff --git a/docs/content/en/functions/getenv.md b/docs/content/en/functions/getenv.md
new file mode 100644
index 000000000..f7f71d35c
--- /dev/null
+++ b/docs/content/en/functions/getenv.md
@@ -0,0 +1,43 @@
+---
+title: getenv
+description: Returns the value of an environment variable, or an empty string if the environment variable is not set.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2021-11-26
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: []
+signature: ["os.Getenv VARIABLE", "getenv VARIABLE"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+Examples:
+
+```go-html-template
+{{ os.Getenv "HOME" }} --> /home/victor
+{{ os.Getenv "USER" }} --> victor
+```
+
+You can pass values when building your site:
+
+```bash
+MY_VAR1=foo MY_VAR2=bar hugo
+
+OR
+
+export MY_VAR1=foo
+export MY_VAR2=bar
+hugo
+```
+
+And then retrieve the values within a template:
+
+```go-html-template
+{{ os.Getenv "MY_VAR1" }} --> foo
+{{ os.Getenv "MY_VAR2" }} --> bar
+```
diff --git a/docs/content/en/functions/group.md b/docs/content/en/functions/group.md
new file mode 100644
index 000000000..e1a22ef5d
--- /dev/null
+++ b/docs/content/en/functions/group.md
@@ -0,0 +1,37 @@
+---
+title: group
+description: "`group` groups a list of pages."
+date: 2018-09-14
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [collections]
+signature: ["PAGES | group KEY"]
+hugoversion: "0.49"
+---
+
+{{< code file="layouts/partials/groups.html" >}}
+{{ $new := .Site.RegularPages | first 10 | group "New" }}
+{{ $old := .Site.RegularPages | last 10 | group "Old" }}
+{{ $groups := slice $new $old }}
+{{ range $groups }}
+<h3>{{ .Key }}{{/* Prints "New", "Old" */}}</h3>
+<ul>
+ {{ range .Pages }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ <div class="meta">{{ .Date.Format "Mon, Jan 2, 2006" }}</div>
+ </li>
+ {{ end }}
+</ul>
+{{ end }}
+{{< /code >}}
+
+
+
+The page group you get from `group` is of the same type you get from the built-in [group methods](/templates/lists#group-content) in Hugo. The above example can even be [paginated](/templates/pagination/#list-paginator-pages).
+
+
+
+
diff --git a/docs/content/en/functions/gt.md b/docs/content/en/functions/gt.md
new file mode 100644
index 000000000..91203f890
--- /dev/null
+++ b/docs/content/en/functions/gt.md
@@ -0,0 +1,24 @@
+---
+title: gt
+linktitle: gt
+description: Returns the boolean truth of arg1 > arg2.
+date: 2017-07-26
+publishdate: 2017-07-26
+lastmod: 2017-07-26
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [operators,logic]
+signature: ["gt ARG1 ARG2"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+
+```
+{{ if gt 10 5 }}true{{ end }}
+```
diff --git a/docs/content/en/functions/hasPrefix.md b/docs/content/en/functions/hasPrefix.md
new file mode 100644
index 000000000..99d5ba819
--- /dev/null
+++ b/docs/content/en/functions/hasPrefix.md
@@ -0,0 +1,21 @@
+---
+title: hasprefix
+linktitle: hasPrefix
+description: Tests whether a string begins with prefix.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: []
+signature: ["hasPrefix STRING PREFIX"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+* `{{ hasPrefix "Hugo" "Hu" }}` → true
diff --git a/docs/content/en/functions/haschildren.md b/docs/content/en/functions/haschildren.md
new file mode 100644
index 000000000..1deeb7277
--- /dev/null
+++ b/docs/content/en/functions/haschildren.md
@@ -0,0 +1,22 @@
+---
+title: .HasChildren
+description:
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [menus]
+toc:
+signature: ["HasChildren"]
+workson: [menus]
+hugoversion:
+relatedfuncs: []
+deprecated: false
+draft: true
+aliases: []
+---
+
+Used in [menu templates](/templates/menu-templates/).
diff --git a/docs/content/en/functions/hasmenucurrent.md b/docs/content/en/functions/hasmenucurrent.md
new file mode 100644
index 000000000..dbd4aa418
--- /dev/null
+++ b/docs/content/en/functions/hasmenucurrent.md
@@ -0,0 +1,28 @@
+---
+title: .HasMenuCurrent
+description:
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [menus]
+signature: ["PAGE.HasMenuCurrent MENU MENUENTRY"]
+workson: [menus]
+hugoversion:
+relatedfuncs: ["IsMenuCurrent"]
+deprecated: false
+toc: false
+draft: false
+aliases: []
+---
+
+`.HasMenuCurrent` is a method in `Page` object returning a _boolean_ value. It
+returns `true` if the PAGE is the same object as the `.Page` in one of the
+**children menu entries** under MENUENTRY in a given MENU.
+
+{{< new-in "0.86.0" >}} If MENUENTRY's `.Page` is a [section](/content-management/sections/) then, from Hugo `0.86.0`, this method also returns true for any descendant of that section..
+
+You can find its example use in [menu templates](/templates/menu-templates/).
diff --git a/docs/content/en/functions/highlight.md b/docs/content/en/functions/highlight.md
new file mode 100644
index 000000000..1643fe075
--- /dev/null
+++ b/docs/content/en/functions/highlight.md
@@ -0,0 +1,104 @@
+---
+title: highlight
+linktitle: highlight
+description: Renders code with a syntax highlighter.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2021-12-06
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [highlighting,code blocks,syntax]
+signature: ["transform.Highlight INPUT LANG [OPTIONS]","highlight INPUT LANG [OPTIONS]"]
+relatedfuncs: []
+deprecated: false
+toc: true
+---
+The `highlight` function uses the [Chroma] syntax highlighter, supporting over 200 languages with more than 40 available styles.
+
+## Parameters
+
+INPUT
+: The code to highlight.
+
+LANG
+: The language of the code to highlight. Choose from one of the [supported languages]. Case-insensitive.
+
+OPTIONS
+: An optional, comma-separated list of zero or more [options]. Set default values in [site configuration].
+
+## Options
+
+lineNos
+: Boolean. Default is `false`.\
+Display a number at the beginning of each line.
+
+lineNumbersInTable
+: Boolean. Default is `true`.\
+Render the highlighted code in an HTML table with two cells. The left table cell contains the line numbers. The right table cell contains the code, allowing a user to select and copy the code without line numbers. Irrelevant if `lineNos` is false.
+
+anchorLineNos
+: Boolean. Default is `false`.\
+Render each line number as an HTML anchor element, and set the `id` attribute of the surrounding `<span>` to the line number. Irrelevant if `lineNos` is false.
+
+lineAnchors
+: String. Default is `""`.\
+When rendering a line number as an HTML anchor element, prepend this value to the `id` attribute of the surrounding `<span>`. This provides unique `id` attributes when a page contains two or more code blocks. Irrelevant if `lineNos` or `anchorLineNos` is false.
+
+lineNoStart
+: Integer. Default is `1`.\
+The number to display at the beginning of the first line. Irrelevant if `lineNos` is false.
+
+hl_Lines
+: String. Default is `""`.\
+A space-separated list of lines to emphasize within the highlighted code. To emphasize lines 2, 3, 4, and 7, set this value to `2-4 7`. This option is independent of the `lineNoStart` option.
+
+style
+: String. Default is `monokai`.\
+The CSS styles to apply to the highlighted code. See the [style gallery] for examples. Case-sensitive.
+
+noClasses
+: Boolean. Default is `true`.\
+Use inline CSS styles instead of an external CSS file. To use an external CSS file, set this value to `false` and [generate the file with the hugo client][hugo client].
+
+tabWidth
+: Integer. Default is `4`.\
+Substitute this number of spaces for each tab character in your highlighted code.
+
+guessSyntax
+: Boolean. Default is `false`.\
+If the `LANG` parameter is blank or an unrecognized language, auto-detect the language if possible, otherwise use a fallback language.
+
+{{% note %}}
+Instead of specifying both `lineNos` and `lineNumbersInTable`, you can use the following shorthand notation:
+
+`lineNos=inline`
+: equivalent to `lineNos=true` and `lineNumbersInTable=false`
+
+`lineNos=table`
+: equivalent to `lineNos=true` and `lineNumbersInTable=true`
+{{% /note %}}
+
+## Examples
+
+```go-html-template
+{{ $input := `fmt.Println("Hello World!")` }}
+{{ transform.Highlight $input "go" }}
+
+{{ $input := `console.log('Hello World!');` }}
+{{ $lang := "js" }}
+{{ transform.Highlight $input $lang "lineNos=table, style=api" }}
+
+{{ $input := `echo "Hello World!"` }}
+{{ $lang := "bash" }}
+{{ $options := slice "lineNos=table" "style=dracula" }}
+{{ transform.Highlight $input $lang (delimit $options ",") }}
+```
+
+[Chroma]: https://github.com/alecthomas/chroma
+[hugo client]: {{< relref "commands/hugo_gen_chromastyles" >}}
+[options]: {{< relref "#options" >}}
+[site configuration]: {{< relref "getting-started/configuration-markup#highlight">}}
+[style gallery]: https://xyproto.github.io/splash/docs/
+[supported languages]: {{< relref "content-management/syntax-highlighting#list-of-chroma-highlighting-languages" >}}
diff --git a/docs/content/en/functions/hmac.md b/docs/content/en/functions/hmac.md
new file mode 100644
index 000000000..9df36d300
--- /dev/null
+++ b/docs/content/en/functions/hmac.md
@@ -0,0 +1,33 @@
+---
+title: hmac
+linktitle: hmac
+description: Compute the cryptographic checksum of a message.
+date: 2020-05-29
+publishdate: 2020-05-29
+lastmod: 2020-05-29
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [hmac,checksum]
+signature: ["hmac HASH_TYPE KEY MESSAGE"]
+workson: []
+hugoversion:
+relatedfuncs: [hmac]
+deprecated: false
+aliases: [hmac]
+---
+
+`hmac` returns a cryptographic hash that uses a key to sign a message.
+
+```
+{{ hmac "sha256" "Secret key" "Hello world, gophers!"}},
+<!-- returns the string "b6d11b6c53830b9d87036272ca9fe9d19306b8f9d8aa07b15da27d89e6e34f40"
+```
+
+Supported hash functions:
+
+* md5
+* sha1
+* sha256
+* sha512
diff --git a/docs/content/en/functions/htmlEscape.md b/docs/content/en/functions/htmlEscape.md
new file mode 100644
index 000000000..652492c72
--- /dev/null
+++ b/docs/content/en/functions/htmlEscape.md
@@ -0,0 +1,25 @@
+---
+title: htmlEscape
+linktitle:
+description: Returns the given string with the reserved HTML codes escaped.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings, html]
+signature: ["htmlEscape INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: [htmlUnescape]
+deprecated: false
+aliases: []
+---
+
+In the result `&` becomes `&amp;` and so on. It escapes only: `<`, `>`, `&`, `'` and `"`.
+
+```
+{{ htmlEscape "Hugo & Caddy > WordPress & Apache" }} → "Hugo &amp; Caddy &gt; WordPress &amp; Apache"
+```
diff --git a/docs/content/en/functions/htmlUnescape.md b/docs/content/en/functions/htmlUnescape.md
new file mode 100644
index 000000000..9533fde90
--- /dev/null
+++ b/docs/content/en/functions/htmlUnescape.md
@@ -0,0 +1,27 @@
+---
+title: htmlUnescape
+linktitle: htmlUnescape
+description: Returns the given string with HTML escape codes un-escaped.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: []
+signature: ["htmlUnescape INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: [htmlEscape]
+deprecated: false
+aliases: []
+---
+
+`htmlUnescape` returns the given string with HTML escape codes un-escaped.
+
+Remember to pass the output of this to `safeHTML` if fully un-escaped characters are desired. Otherwise, the output will be escaped again as normal.
+
+```
+{{ htmlUnescape "Hugo &amp; Caddy &gt; WordPress &amp; Apache" }} → "Hugo & Caddy > WordPress & Apache"
+```
diff --git a/docs/content/en/functions/hugo.md b/docs/content/en/functions/hugo.md
new file mode 100644
index 000000000..6cbb36019
--- /dev/null
+++ b/docs/content/en/functions/hugo.md
@@ -0,0 +1,51 @@
+---
+title: hugo
+linktitle: hugo
+description: The `hugo` function provides easy access to Hugo-related data.
+date: 2019-01-31
+publishdate: 2019-01-31
+lastmod: 2019-01-31
+keywords: []
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+toc:
+signature: ["hugo"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+draft: false
+aliases: []
+---
+
+`hugo` returns an instance that contains the following functions:
+
+hugo.Generator
+: `<meta>` tag for the version of Hugo that generated the site. `hugo.Generator` outputs a *complete* HTML tag; e.g. `<meta name="generator" content="Hugo 0.63.2" />`
+
+hugo.Version
+: the current version of the Hugo binary you are using e.g. `0.63.2`
+
+
+`hugo` returns an instance that contains the following functions:
+
+hugo.Environment
+: the current running environment as defined through the `--environment` cli tag
+
+hugo.CommitHash
+: the git commit hash of the current Hugo binary e.g. `0e8bed9ccffba0df554728b46c5bbf6d78ae5247`
+
+hugo.BuildDate
+: the compile date of the current Hugo binary formatted with RFC 3339 e.g. `2002-10-02T10:00:00-05:00`
+
+hugo.IsExtended {{< new-in "0.83.0" >}}
+: whether this is the extended Hugo binary.
+
+hugo.IsProduction
+: returns true if `hugo.Environment` is set to the production environment
+
+{{% note "Use the Hugo Generator Tag" %}}
+We highly recommend using `hugo.Generator` in your website's `<head>`. `hugo.Generator` is included by default in all themes hosted on [themes.gohugo.io](https://themes.gohugo.io). The generator tag allows the Hugo team to track the usage and popularity of Hugo.
+{{% /note %}}
diff --git a/docs/content/en/functions/humanize.md b/docs/content/en/functions/humanize.md
new file mode 100644
index 000000000..18a087591
--- /dev/null
+++ b/docs/content/en/functions/humanize.md
@@ -0,0 +1,29 @@
+---
+title: humanize
+linktitle:
+description: Returns the humanized version of an argument with the first letter capitalized.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings,casing]
+signature: ["humanize INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: [anchorize]
+deprecated: false
+aliases: []
+---
+
+If the input is either an int64 value or the string representation of an integer, humanize returns the number with the proper ordinal appended.
+
+
+```
+{{humanize "my-first-post"}} → "My first post"
+{{humanize "myCamelPost"}} → "My camel post"
+{{humanize "52"}} → "52nd"
+{{humanize 103}} → "103rd"
+```
diff --git a/docs/content/en/functions/i18n.md b/docs/content/en/functions/i18n.md
new file mode 100644
index 000000000..7d88292b9
--- /dev/null
+++ b/docs/content/en/functions/i18n.md
@@ -0,0 +1,33 @@
+---
+title: i18n
+linktitle: i18n
+description: Translates a piece of content based on your i18n configuration files.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [internationalization,i18n,multilingual]
+signature: ["i18n KEY", "T KEY"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+This translates a piece of content based on your `i18n/en-US.yaml` (and similar) files. You can use the [go-i18n](https://github.com/nicksnyder/go-i18n) tools to manage your translations. The translations can exist in both the theme and at the root of your repository.
+
+```
+{{ i18n "translation_id" }}
+```
+
+{{% note "Alias `T`" %}}
+`T` is an alias to `i18n`. E.g. `{{ T "translation_id" }}`.
+{{% /note %}}
+
+For more information about string translations, see [Translation of Strings in Multilingual Mode][multistrings].
+
+[multistrings]: /content-management/multilingual/#translation-of-strings
diff --git a/docs/content/en/functions/images/index.md b/docs/content/en/functions/images/index.md
new file mode 100644
index 000000000..1cf69ee78
--- /dev/null
+++ b/docs/content/en/functions/images/index.md
@@ -0,0 +1,232 @@
+---
+title: Image Functions
+description: The images namespace provides a list of filters and other image related functions.
+date: 2017-02-01
+categories: [functions]
+aliases: [/functions/imageconfig/]
+menu:
+ docs:
+ parent: "functions"
+keywords: [images]
+toc: true
+---
+
+
+## Image Filters
+
+See [images.Filter](#filter) for how to apply these filters to an image.
+
+### Overlay
+
+{{< new-in "0.80.0" >}}
+
+{{% funcsig %}}
+images.Overlay SRC X Y
+{{% /funcsig %}}
+
+Overlay creates a filter that overlays the source image at position x y, e.g:
+
+
+```go-html-template
+{{ $logoFilter := (images.Overlay $logo 50 50 ) }}
+{{ $img := $img | images.Filter $logoFilter }}
+```
+
+A shorter version of the above, if you only need to apply the filter once:
+
+```go-html-template
+{{ $img := $img.Filter (images.Overlay $logo 50 50 )}}
+```
+
+The above will overlay `$logo` in the upper left corner of `$img` (at position `x=50, y=50`).
+
+### Text
+
+{{< new-in "0.90.0" >}}
+
+Using the `Text` filter, you can add text to an image.
+
+{{% funcsig %}}
+images.Text TEXT DICT)
+{{% /funcsig %}}
+
+The following example will add the text `Hugo rocks!` to the image with the specified color, size and position.
+
+```go-html-template
+{{ $img := resources.Get "/images/background.png"}}
+{{ $img = $img.Filter (images.Text "Hugo rocks!" (dict
+ "color" "#ffffff"
+ "size" 60
+ "linespacing" 2
+ "x" 10
+ "y" 20
+))}}
+```
+
+You can load a custom font if needed. Load the font as a Hugo `Resource` and set it as an option:
+
+```go-html-template
+
+{{ $font := resources.Get "https://github.com/google/fonts/raw/main/apache/roboto/static/Roboto-Black.ttf" }}
+{{ $img := resources.Get "/images/background.png"}}
+{{ $img = $img.Filter (images.Text "Hugo rocks!" (dict
+ "font" $font
+))}}
+```
+
+
+### Brightness
+
+{{% funcsig %}}
+images.Brightness PERCENTAGE
+{{% /funcsig %}}
+
+Brightness creates a filter that changes the brightness of an image.
+The percentage parameter must be in range (-100, 100).
+
+### ColorBalance
+
+{{% funcsig %}}
+images.ColorBalance PERCENTAGERED PERCENTAGEGREEN PERCENTAGEBLUE
+{{% /funcsig %}}
+
+ColorBalance creates a filter that changes the color balance of an image.
+The percentage parameters for each color channel (red, green, blue) must be in range (-100, 500).
+
+### Colorize
+
+{{% funcsig %}}
+images.Colorize HUE SATURATION PERCENTAGE
+{{% /funcsig %}}
+
+Colorize creates a filter that produces a colorized version of an image.
+The hue parameter is the angle on the color wheel, typically in range (0, 360).
+The saturation parameter must be in range (0, 100).
+The percentage parameter specifies the strength of the effect, it must be in range (0, 100).
+
+### Contrast
+
+{{% funcsig %}}
+images.Contrast PERCENTAGE
+{{% /funcsig %}}
+
+Contrast creates a filter that changes the contrast of an image.
+The percentage parameter must be in range (-100, 100).
+
+### Gamma
+
+{{% funcsig %}}
+images.Gamma GAMMA
+{{% /funcsig %}}
+
+Gamma creates a filter that performs a gamma correction on an image.
+The gamma parameter must be positive. Gamma = 1 gives the original image.
+Gamma less than 1 darkens the image and gamma greater than 1 lightens it.
+
+### GaussianBlur
+
+{{% funcsig %}}
+images.GaussianBlur SIGMA
+{{% /funcsig %}}
+
+GaussianBlur creates a filter that applies a gaussian blur to an image.
+
+### Grayscale
+
+{{% funcsig %}}
+images.Grayscale
+{{% /funcsig %}}
+
+Grayscale creates a filter that produces a grayscale version of an image.
+
+### Hue
+
+{{% funcsig %}}
+images.Hue SHIFT
+{{% /funcsig %}}
+
+Hue creates a filter that rotates the hue of an image.
+The hue angle shift is typically in range -180 to 180.
+
+### Invert
+
+{{% funcsig %}}
+images.Invert
+{{% /funcsig %}}
+
+Invert creates a filter that negates the colors of an image.
+
+### Pixelate
+
+{{% funcsig %}}
+images.Pixelate SIZE
+{{% /funcsig %}}
+
+Pixelate creates a filter that applies a pixelation effect to an image.
+
+### Saturation
+
+{{% funcsig %}}
+images.Saturation PERCENTAGE
+{{% /funcsig %}}
+
+Saturation creates a filter that changes the saturation of an image.
+
+### Sepia
+
+{{% funcsig %}}
+images.Sepia PERCENTAGE
+{{% /funcsig %}}
+
+Sepia creates a filter that produces a sepia-toned version of an image.
+
+### Sigmoid
+
+{{% funcsig %}}
+images.Sigmoid MIDPOINT FACTOR
+{{% /funcsig %}}
+
+Sigmoid creates a filter that changes the contrast of an image using a sigmoidal function and returns the adjusted image.
+It's a non-linear contrast change useful for photo adjustments as it preserves highlight and shadow detail.
+
+### UnsharpMask
+
+{{% funcsig %}}
+images.UnsharpMask SIGMA AMOUNT THRESHOLD
+{{% /funcsig %}}
+
+UnsharpMask creates a filter that sharpens an image.
+The sigma parameter is used in a gaussian function and affects the radius of effect.
+Sigma must be positive. Sharpen radius roughly equals 3 * sigma.
+The amount parameter controls how much darker and how much lighter the edge borders become. Typically between 0.5 and 1.5.
+The threshold parameter controls the minimum brightness change that will be sharpened. Typically between 0 and 0.05.
+
+## Other Functions
+
+### Filter
+
+{{% funcsig %}}
+IMAGE | images.Filter FILTERS...
+{{% /funcsig %}}
+
+Can be used to apply a set of filters to an image:
+
+```go-html-template
+{{ $img := $img | images.Filter (images.GaussianBlur 6) (images.Pixelate 8) }}
+```
+
+Also see the [Filter Method](/content-management/image-processing/#filter).
+
+### ImageConfig
+
+Parses the image and returns the height, width, and color model.
+
+{{% funcsig %}}
+images.ImageConfig PATH
+{{% /funcsig %}}
+
+```go-html-template
+{{ with (imageConfig "favicon.ico") }}
+favicon.ico: {{.Width}} x {{.Height}}
+{{ end }}
+```
diff --git a/docs/content/en/functions/in.md b/docs/content/en/functions/in.md
new file mode 100644
index 000000000..7a8cb33eb
--- /dev/null
+++ b/docs/content/en/functions/in.md
@@ -0,0 +1,32 @@
+---
+title: in
+linktitle:
+description: Checks if an element is in an array or slice--or a substring in a string---and returns a boolean.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings]
+signature: ["in SET ITEM"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+The elements supported are strings, integers and floats, although only float64 will match as expected.
+
+In addition, `in` can also check if a substring exists in a string.
+
+```
+{{ if in .Params.tags "Git" }}Follow me on GitHub!{{ end }}
+```
+
+
+```
+{{ if in "this string contains a substring" "substring" }}Substring found!{{ end }}
+```
diff --git a/docs/content/en/functions/index-function.md b/docs/content/en/functions/index-function.md
new file mode 100644
index 000000000..6ee46b4a8
--- /dev/null
+++ b/docs/content/en/functions/index-function.md
@@ -0,0 +1,100 @@
+---
+title: index
+linktitle: index
+description: Looks up the index(es) or key(s) of the data structure passed into it.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: []
+signature: ["index COLLECTION INDEXES", "index COLLECTION KEYS"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: [/functions/index/]
+needsexample: true
+---
+
+The `index` functions returns the result of indexing its first argument by the following arguments. Each indexed item must be a map or a slice, e.g.:
+
+```go-text-template
+{{ $slice := slice "a" "b" "c" }}
+{{ index $slice 1 }} => b
+{{ $map := dict "a" 100 "b" 200 }}
+{{ index $map "b" }} => 200
+```
+
+The function takes multiple indices as arguments, and this can be used to get nested values, e.g.:
+
+```go-text-template
+{{ $map := dict "a" 100 "b" 200 "c" (slice 10 20 30) }}
+{{ index $map "c" 1 }} => 20
+{{ $map := dict "a" 100 "b" 200 "c" (dict "d" 10 "e" 20) }}
+{{ index $map "c" "e" }} => 20
+```
+
+You may write multiple indices as a slice:
+
+```go-text-template
+{{ $map := dict "a" 100 "b" 200 "c" (dict "d" 10 "e" 20) }}
+{{ $slice := slice "c" "e" }}
+{{ index $map $slice }} => 20
+```
+
+## Example: Load Data from a Path Based on Front Matter Params
+
+Assume you want to add a `location = ""` field to your front matter for every article written in `content/vacations/`. You want to use this field to populate information about the location at the bottom of the article in your `single.html` template. You also have a directory in `data/locations/` that looks like the following:
+
+```
+.
+└── data
+ └── locations
+ ├── abilene.toml
+ ├── chicago.toml
+ ├── oslo.toml
+ └── provo.toml
+```
+
+Here is an example:
+
+{{< code-toggle file="data/locations/oslo" >}}
+website = "https://www.oslo.kommune.no"
+pop_city = 658390
+pop_metro = 1717900
+{{< /code-toggle >}}
+
+The example we will use will be an article on Oslo, whose front matter should be set to exactly the same name as the corresponding file name in `data/locations/`:
+
+```
+title = "My Norwegian Vacation"
+location = "oslo"
+```
+
+The content of `oslo.toml` can be accessed from your template using the following node path: `.Site.Data.locations.oslo`. However, the specific file you need is going to change according to the front matter.
+
+This is where the `index` function is needed. `index` takes 2 parameters in this use case:
+
+1. The node path
+2. A string corresponding to the desired data; e.g.&mdash;
+
+```
+{{ index .Site.Data.locations “oslo” }}
+```
+
+The variable for `.Params.location` is a string and can therefore replace `oslo` in the example above:
+
+```
+{{ index .Site.Data.locations .Params.location }}
+=> map[website:https://www.oslo.kommune.no pop_city:658390 pop_metro:1717900]
+```
+
+Now the call will return the specific file according to the location specified in the content's front matter, but you will likely want to write specific properties to the template. You can do this by continuing down the node path via dot notation (`.`):
+
+```
+{{ (index .Site.Data.locations .Params.location).pop_city }}
+=> 658390
+```
diff --git a/docs/content/en/functions/int.md b/docs/content/en/functions/int.md
new file mode 100644
index 000000000..24818cef6
--- /dev/null
+++ b/docs/content/en/functions/int.md
@@ -0,0 +1,50 @@
+---
+title: int
+linktitle: int
+description: Creates an `int` from the argument passed into the function.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings,integers]
+signature: ["int INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+Useful for turning strings into numbers.
+
+```
+{{ int "123" }} → 123
+```
+
+{{% note "Usage Note" %}}
+If the input string is supposed to represent a decimal number, and if it has
+leading 0's, then those 0's will have to be removed before passing the string
+to the `int` function, else that string will be tried to be parsed as an octal
+number representation.
+
+The [`strings.TrimLeft` function](/functions/strings.trimleft/) can be used for
+this purpose.
+
+```
+{{ int ("0987" | strings.TrimLeft "0") }}
+{{ int ("00987" | strings.TrimLeft "0") }}
+```
+
+**Explanation**
+
+The `int` function eventually calls the `ParseInt` function from the Go library
+`strconv`.
+
+From its [documentation](https://golang.org/pkg/strconv/#ParseInt):
+
+> the base is implied by the string's prefix: base 16 for "0x", base 8 for "0",
+> and base 10 otherwise.
+{{% /note %}}
diff --git a/docs/content/en/functions/intersect.md b/docs/content/en/functions/intersect.md
new file mode 100644
index 000000000..2fe73ded8
--- /dev/null
+++ b/docs/content/en/functions/intersect.md
@@ -0,0 +1,36 @@
+---
+title: intersect
+linktitle: intersect
+description: Returns the common elements of two arrays or slices, in the same order as the first array.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [collections,intersect,union,complement,symdiff]
+signature: ["intersect SET1 SET2"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+An useful example is to use it as `AND` filters when combined with where:
+
+## AND filter in where query
+
+```
+{{ $pages := where .Site.RegularPages "Type" "not in" (slice "page" "about") }}
+{{ $pages := $pages | union (where .Site.RegularPages "Params.pinned" true) }}
+{{ $pages := $pages | intersect (where .Site.RegularPages "Params.images" "!=" nil) }}
+```
+
+The above fetches regular pages not of `page` or `about` type unless they are pinned. And finally, we exclude all pages with no `images` set in Page params.
+
+See [union](/functions/union) for `OR`.
+
+
+[partials]: /templates/partials/
+[single]: /templates/single-page-templates/
diff --git a/docs/content/en/functions/ismenucurrent.md b/docs/content/en/functions/ismenucurrent.md
new file mode 100644
index 000000000..51c21721b
--- /dev/null
+++ b/docs/content/en/functions/ismenucurrent.md
@@ -0,0 +1,26 @@
+---
+title: .IsMenuCurrent
+description:
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [menus]
+signature: ["PAGE.IsMenuCurrent MENU MENUENTRY"]
+workson: [menus]
+hugoversion:
+relatedfuncs: ["HasMenuCurrent"]
+deprecated: false
+draft: false
+aliases: []
+needsexample: true
+---
+
+`.IsMenuCurrent` is a method in `Page` object returning a _boolean_ value. It
+returns `true` if the PAGE is the same object as the `.Page` in MENUENTRY in a
+given MENU.
+
+You can find its example use in [menu templates](/templates/menu-templates/).
diff --git a/docs/content/en/functions/isset.md b/docs/content/en/functions/isset.md
new file mode 100644
index 000000000..aa36f6dac
--- /dev/null
+++ b/docs/content/en/functions/isset.md
@@ -0,0 +1,30 @@
+---
+title: isset
+linktitle: isset
+description: Returns true if the parameter is set.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: []
+signature: ["isset COLLECTION INDEX", "isset COLLECTION KEY"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+Takes either a slice, array, or channel and an index or a map and a key as input.
+
+```
+{{ if isset .Params "project_url" }} {{ index .Params "project_url" }}{{ end }}
+```
+
+{{% warning %}}
+All site-level configuration keys are stored as lower case. Therefore, a `myParam` key-value set in your [site configuration file](/getting-started/configuration/) needs to be accessed with `{{if isset .Site.Params "myparam"}}` and *not* with `{{if isset .Site.Params "myParam"}}`. Note that you can still access the same config key with `.Site.Params.myParam` *or* `.Site.Params.myparam`, for example, when using [`with`](/functions/with).
+This restriction also applies when accessing page-level front matter keys from within [shortcodes](/content-management/shortcodes/).
+{{% /warning %}}
diff --git a/docs/content/en/functions/jsonify.md b/docs/content/en/functions/jsonify.md
new file mode 100644
index 000000000..28b90534c
--- /dev/null
+++ b/docs/content/en/functions/jsonify.md
@@ -0,0 +1,37 @@
+---
+title: jsonify
+linktitle: jsonify
+description: Encodes a given object to JSON.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2020-04-13
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings,json]
+signature: ["jsonify INPUT", "jsonify OPTIONS INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: [plainify]
+deprecated: false
+aliases: []
+---
+
+Jsonify encodes a given object to JSON.
+
+To customize the printing of the JSON, pass a dictionary of options as the first
+argument. Supported options are "prefix" and "indent". Each JSON element in
+the output will begin on a new line beginning with *prefix* followed by one or
+more copies of *indent* according to the indentation nesting.
+
+
+```
+{{ dict "title" .Title "content" .Plain | jsonify }}
+{{ dict "title" .Title "content" .Plain | jsonify (dict "indent" " ") }}
+{{ dict "title" .Title "content" .Plain | jsonify (dict "prefix" " " "indent" " ") }}
+```
+
+See also the `.PlainWords`, `.Plain`, and `.RawContent` [page variables][pagevars].
+
+[pagevars]: /variables/page/
diff --git a/docs/content/en/functions/lang.Merge.md b/docs/content/en/functions/lang.Merge.md
new file mode 100644
index 000000000..78d658442
--- /dev/null
+++ b/docs/content/en/functions/lang.Merge.md
@@ -0,0 +1,37 @@
+---
+title: lang.Merge
+description: "Merge missing translations from other languages."
+date: 2018-03-16
+categories: [functions]
+keywords: [multilingual]
+menu:
+ docs:
+ parent: "functions"
+toc: false
+signature: ["lang.Merge FROM TO"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+draft: false
+aliases: []
+comments:
+---
+
+As an example:
+
+```bash
+{{ $pages := .Site.RegularPages | lang.Merge $frSite.RegularPages | lang.Merge $enSite.RegularPages }}
+```
+
+Will "fill in the gaps" in the current site with, from left to right, content from the French site, and lastly the English.
+
+
+A more practical example is to fill in the missing translations from the other languages:
+
+```bash
+{{ $pages := .Site.RegularPages }}
+{{ range .Site.Home.Translations }}
+{{ $pages = $pages | lang.Merge .Site.RegularPages }}
+{{ end }}
+ ```
diff --git a/docs/content/en/functions/lang.md b/docs/content/en/functions/lang.md
new file mode 100644
index 000000000..1a4da807a
--- /dev/null
+++ b/docs/content/en/functions/lang.md
@@ -0,0 +1,16 @@
+---
+title: lang
+package: lang
+description: "TODO.."
+date: 2021-07-28
+categories: [functions]
+keywords: [numbers]
+menu:
+ docs:
+ parent: "functions"
+signature: ["lang.NumFmt PRECISION NUMBER [OPTIONS [DELIMITER]]"]
+aliases: ['/functions/numfmt/']
+type: 'template-func'
+
+---
+
diff --git a/docs/content/en/functions/last.md b/docs/content/en/functions/last.md
new file mode 100644
index 000000000..4a752cb82
--- /dev/null
+++ b/docs/content/en/functions/last.md
@@ -0,0 +1,27 @@
+---
+title: last
+linktitle: last
+description: "slices an array to only the last <em>N</em>th elements."
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+keywords: []
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+toc:
+signature: ["last INDEX COLLECTION"]
+workson: [lists, taxonomies, terms, groups]
+hugoversion:
+relatedfuncs: []
+deprecated: false
+draft: false
+aliases: []
+---
+
+```
+{{ range last 10 .Pages }}
+ {{ .Render "summary" }}
+{{ end }}
+```
diff --git a/docs/content/en/functions/le.md b/docs/content/en/functions/le.md
new file mode 100644
index 000000000..1ff0ac582
--- /dev/null
+++ b/docs/content/en/functions/le.md
@@ -0,0 +1,24 @@
+---
+title: le
+linktitle: le
+description: Returns the boolean truth of arg1 <= arg2.
+date: 2017-07-26
+publishdate: 2017-07-26
+lastmod: 2017-07-26
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [operators,logic]
+signature: ["le ARG1 ARG2"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+
+```
+{{ if le 5 10 }}true{{ end }}
+```
diff --git a/docs/content/en/functions/len.md b/docs/content/en/functions/len.md
new file mode 100644
index 000000000..0681583db
--- /dev/null
+++ b/docs/content/en/functions/len.md
@@ -0,0 +1,63 @@
+---
+title: len
+linktitle: len
+description: Returns the length of a variable according to its type.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-04-18
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: []
+signature: ["len INPUT"]
+workson: [lists,taxonomies,terms]
+hugoversion:
+relatedfuncs: []
+deprecated: false
+toc: false
+aliases: []
+---
+
+`len` is a built-in function in Go that returns the length of a variable according to its type. From the Go documentation:
+
+> Array: the number of elements in v.
+>
+> Pointer to array: the number of elements in *v (even if v is nil).
+>
+> Slice, or map: the number of elements in v; if v is nil, len(v) is zero.
+>
+> String: the number of bytes in v.
+>
+> Channel: the number of elements queued (unread) in the channel buffer; if v is nil, len(v) is zero.
+
+`len` is also considered a [fundamental function for Hugo templating][].
+
+## `len` Example 1: Longer Headings
+
+You may want to append a class to a heading according to the length of the string therein. The following templating checks to see if the title's length is greater than 80 characters and, if so, adds a `long-title` class to the `<h1>`:
+
+{{< code file="check-title-length.html" >}}
+<header>
+ <h1{{if gt (len .Title) 80}} class="long-title"{{end}}>{{.Title}}</h1>
+</header>
+{{< /code >}}
+
+## `len` Example 2: Counting Pages with `where`
+
+The following templating uses [`where`][] in conjunction with `len` to
+figure out the total number of content pages in a `posts` [section][]:
+
+{{< code file="how-many-posts.html" >}}
+{{ $posts := (where .Site.RegularPages "Section" "==" "posts") }}
+{{ $postCount := len $posts }}
+{{< /code >}}
+
+Note the use of `.RegularPages`, a [site variable][] that counts all regular content pages but not the `_index.md` pages used to add front matter and content to [list templates][].
+
+
+[fundamental function for Hugo templating]: /templates/introduction/
+[list templates]: /templates/lists/
+[section]: /content-management/sections/
+[site variable]: /variables/site/
+[`where`]: /functions/where/
diff --git a/docs/content/en/functions/lower.md b/docs/content/en/functions/lower.md
new file mode 100644
index 000000000..0e8ba6c6d
--- /dev/null
+++ b/docs/content/en/functions/lower.md
@@ -0,0 +1,23 @@
+---
+title: lower
+linktitle: lower
+description: Converts all characters in the provided string to lowercase.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings,casing]
+signature: ["lower INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+```
+{{lower "BatMan"}} → "batman"
+```
diff --git a/docs/content/en/functions/lt.md b/docs/content/en/functions/lt.md
new file mode 100644
index 000000000..d2a234986
--- /dev/null
+++ b/docs/content/en/functions/lt.md
@@ -0,0 +1,24 @@
+---
+title: lt
+linktitle: lt
+description: Returns the boolean truth of arg1 < arg2.
+date: 2017-07-26
+publishdate: 2017-07-26
+lastmod: 2017-07-26
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [operators,logic]
+signature: ["lt ARG1 ARG2"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+
+```
+{{ if lt 5 10 }}true{{ end }}
+```
diff --git a/docs/content/en/functions/markdownify.md b/docs/content/en/functions/markdownify.md
new file mode 100644
index 000000000..171c3bf10
--- /dev/null
+++ b/docs/content/en/functions/markdownify.md
@@ -0,0 +1,29 @@
+---
+title: markdownify
+linktitle: markdownify
+description: Runs the provided string through the Markdown processor.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+keywords: [markdown,content]
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+signature: ["markdownify INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+
+```
+{{ .Title | markdownify }}
+```
+
+*Note*: if you need [Render Hooks][], which `markdownify` doesn't currently
+support, use [.RenderString](/functions/renderstring/) instead.
+
+[Render Hooks]: /getting-started/configuration-markup/#markdown-render-hooks
diff --git a/docs/content/en/functions/math.md b/docs/content/en/functions/math.md
new file mode 100644
index 000000000..2d98c4deb
--- /dev/null
+++ b/docs/content/en/functions/math.md
@@ -0,0 +1,42 @@
+---
+title: Math
+description: Hugo provides mathematical operators in templates.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2020-02-23
+keywords: [math, operators]
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+toc:
+signature: []
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+draft: false
+aliases: []
+---
+
+| Function | Description | Example |
+|--------------|-----------------------------------------------------------------------------|----------------------------------|
+| `add` | Adds two numbers. | `{{add 1 2}}` &rarr; `3` |
+| | *If one of the numbers is a float, the result is a float.* | `{{add 1.1 2}}` &rarr; `3.1` |
+| `sub` | Subtracts two numbers. | `{{sub 3 2}}` &rarr; `1` |
+| | *If one of the numbers is a float, the result is a float.* | `{{sub 3 2.5}}` &rarr; `0.5` |
+| `mul` | Multiplies two numbers. | `{{mul 2 3}}` &rarr; `6` |
+| | *If one of the numbers is a float, the result is a float.* | `{{mul 2 3.1}}` &rarr; `6.2` |
+| `div` | Divides two numbers. | `{{div 6 3}}` &rarr; `2` |
+| | | `{{div 6 4}}` &rarr; `1` |
+| | *If one of the numbers is a float, the result is a float.* | `{{div 6 4.0}}` &rarr; `1.5` |
+| `mod` | Modulus of two integers. | `{{mod 15 3}}` &rarr; `0` |
+| `modBool` | Boolean of modulus of two integers. Evaluates to `true` if result equals 0. | `{{modBool 15 3}}` &rarr; `true` |
+| `math.Ceil` | Returns the least integer value greater than or equal to the given number. | `{{math.Ceil 2.1}}` &rarr; `3` |
+| `math.Floor` | Returns the greatest integer value less than or equal to the given number. | `{{math.Floor 1.9}}` &rarr; `1` |
+| `math.Log` | Returns the natural logarithm of the given number. | `{{math.Log 42}}` &rarr; `3.737` |
+| `math.Max` | Returns the greater of two numbers. | `{{math.Max 1 2}}` &rarr; `2` |
+| `math.Min` | Returns the smaller of two numbers. | `{{math.Min 1 2}}` &rarr; `1` |
+| `math.Pow` | Returns the first number raised to the power of the second number. | `{{math.Pow 2 3}}` &rarr; `8` |
+| `math.Round` | Returns the nearest integer, rounding half away from zero. | `{{math.Round 1.5}}` &rarr; `2` |
+| `math.Sqrt` | Returns the square root of the given number. | `{{math.Sqrt 81}}` &rarr; `9` |
diff --git a/docs/content/en/functions/md5.md b/docs/content/en/functions/md5.md
new file mode 100644
index 000000000..7db856a75
--- /dev/null
+++ b/docs/content/en/functions/md5.md
@@ -0,0 +1,30 @@
+---
+title: md5
+linktitle: md5
+description: hashes the given input and returns its MD5 checksum.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: []
+signature: ["md5 INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: [sha]
+deprecated: false
+aliases: []
+---
+
+```
+{{ md5 "Hello world, gophers!" }}
+<!-- returns the string "b3029f756f98f79e7f1b7f1d1f0dd53b" -->
+```
+
+This can be useful if you want to use [Gravatar](https://en.gravatar.com/) for generating a unique avatar:
+
+```
+<img src="https://www.gravatar.com/avatar/{{ md5 "your@email.com" }}?s=100&d=identicon">
+```
diff --git a/docs/content/en/functions/merge.md b/docs/content/en/functions/merge.md
new file mode 100644
index 000000000..a2c4cb87c
--- /dev/null
+++ b/docs/content/en/functions/merge.md
@@ -0,0 +1,41 @@
+---
+title: merge
+description: "`merge` deep merges two maps and returns the resulting map."
+date: 2019-08-08
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [dictionary]
+signature: ["collections.Merge MAP MAP...", "merge MAP MAP..."]
+workson: []
+hugoversion: "0.56.0"
+relatedfuncs: [dict, append, reflect.IsMap, reflect.IsSlice]
+aliases: []
+---
+
+Merge creates a copy of the final `MAP` and merges any preceding `MAP` into it in reverse order.
+Key handling is case-insensitive.
+
+An example merging two maps.
+
+```go-html-template
+{{ $default_params := dict "color" "blue" "width" "50%" "height" "25%" "icon" "star" }}
+{{ $user_params := dict "color" "red" "icon" "mail" "extra" (dict "duration" 2) }}
+{{ $params := merge $default_params $user_params }}
+```
+
+Resulting __$params__:
+
+```
+"color": "red"
+"extra":
+ "duration": 2
+"height": "25%"
+"icon": "mail"
+"width": "50%"
+```
+
+{{% note %}}
+ Regardless of depth, merging only applies to maps. For slices, use [append]({{< ref "functions/append" >}})
+{{% /note %}}
diff --git a/docs/content/en/functions/ne.md b/docs/content/en/functions/ne.md
new file mode 100644
index 000000000..e072993d2
--- /dev/null
+++ b/docs/content/en/functions/ne.md
@@ -0,0 +1,24 @@
+---
+title: ne
+linktitle: ne
+description: Returns the boolean truth of arg1 != arg2.
+date: 2017-07-26
+publishdate: 2017-07-26
+lastmod: 2017-07-26
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [operators,logic]
+signature: ["ne ARG1 ARG2"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+
+```
+{{ if ne .Section "blog" }}current{{ end }}
+```
diff --git a/docs/content/en/functions/now.md b/docs/content/en/functions/now.md
new file mode 100644
index 000000000..24e1ab3f7
--- /dev/null
+++ b/docs/content/en/functions/now.md
@@ -0,0 +1,49 @@
+---
+title: now
+linktitle: now
+description: Returns the current local time
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-04-30
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [dates,time]
+signature: ["now"]
+workson: []
+hugoversion:
+relatedfuncs: [Unix,dateFormat]
+deprecated: false
+aliases: []
+---
+
+See [`time.Time`](https://godoc.org/time#Time).
+
+For example, building your site on June 24, 2017, with the following templating:
+
+```
+<div>
+ <small>&copy; {{ now.Format "2006"}}</small>
+</div>
+```
+
+would produce the following:
+
+```
+<div>
+ <small>&copy; 2017</small>
+</div>
+```
+
+The above example uses the [`.Format` function](/functions/format), which page includes a full listing of date formatting using Go's layout string.
+
+{{% note %}}
+Older Hugo themes may still be using the obsolete Page’s `.Now` (uppercase with leading dot), which causes build error that looks like the following:
+
+ ERROR ... Error while rendering "..." in "...": ...
+ executing "..." at <.Now.Format>:
+ can't evaluate field Now in type *hugolib.PageOutput
+
+Be sure to use `now` (lowercase with _**no**_ leading dot) in your templating.
+{{% /note %}}
diff --git a/docs/content/en/functions/os.Stat.md b/docs/content/en/functions/os.Stat.md
new file mode 100644
index 000000000..a56f79735
--- /dev/null
+++ b/docs/content/en/functions/os.Stat.md
@@ -0,0 +1,32 @@
+---
+title: os.Stat
+description: Returns a FileInfo structure describing a file or directory.
+date: 2018-08-07
+publishdate: 2018-08-07
+lastmod: 2021-11-26
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [files]
+signature: ["os.Stat PATH"]
+workson: []
+hugoversion:
+relatedfuncs: ['os.FileExists','os.ReadDir','os.ReadFile']
+deprecated: false
+aliases: []
+---
+The `os.Stat` function attempts to resolve the path relative to the root of your project directory. If a matching file or directory is not found, it will attempt to resolve the path relative to the [`contentDir`]({{< relref "getting-started/configuration#contentdir">}}). A leading path separator (`/`) is optional.
+
+```go-html-template
+{{ $f := os.Stat "README.md" }}
+{{ $f.IsDir }} --> false (bool)
+{{ $f.ModTime }} --> 2021-11-25 10:06:49.315429236 -0800 PST (time.Time)
+{{ $f.Name }} --> README.md (string)
+{{ $f.Size }} --> 241 (int64)
+
+{{ $d := os.Stat "content" }}
+{{ $d.IsDir }} --> true (bool)
+```
+
+Details of the `FileInfo` structure are available in the [Go documentation](https://pkg.go.dev/io/fs#FileInfo).
diff --git a/docs/content/en/functions/param.md b/docs/content/en/functions/param.md
new file mode 100644
index 000000000..eb0a87279
--- /dev/null
+++ b/docs/content/en/functions/param.md
@@ -0,0 +1,40 @@
+---
+title: .Param
+description: Calls page or site variables into your template.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-04-30
+keywords: ["front matter"]
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+toc:
+signature: [".Param KEY"]
+workson: []
+hugoversion:
+relatedfuncs: [default]
+deprecated: false
+draft: false
+aliases: []
+---
+
+In Hugo, you can declare [site-wide params][sitevars] (i.e. in your [configuration][]), as well as params for [individual pages][pagevars].
+
+A common use case is to have a general value for the site and a more specific value for some of the pages (e.g., an image).
+
+You can use the `.Param` method to call these values into your template. The following will first look for an `image` param in a specific content's [front matter][]. If not found, Hugo will look for an `image` param in your site's configuration:
+
+```
+$.Param "image"
+```
+
+{{% note %}}
+The `Param` method may not consider empty strings in a content's front matter as "not found." If you are setting preconfigured front matter fields to empty strings using Hugo's archetypes, it may be best to use the [`default` function](/functions/default/) instead of `Param`. See the [related issue on GitHub](https://github.com/gohugoio/hugo/issues/3366).
+{{% /note %}}
+
+
+[configuration]: /getting-started/configuration/
+[front matter]: /content-management/front-matter/
+[pagevars]: /variables/page/
+[sitevars]: /variables/site/
diff --git a/docs/content/en/functions/partialCached.md b/docs/content/en/functions/partialCached.md
new file mode 100644
index 000000000..d7a70ac64
--- /dev/null
+++ b/docs/content/en/functions/partialCached.md
@@ -0,0 +1,46 @@
+---
+title: partialCached
+linktitle: partialCached
+description: Allows for caching of partials that do not need to be re-rendered on every invocation.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [performance]
+signature: ["partialCached LAYOUT INPUT [VARIANT...]"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+The `partialCached` template function can offer significant performance gains for complex templates that don't need to be re-rendered on every invocation.
+
+**Note:** Each Site (or language) has its own `partialCached` cache, so each site will execute a partial once.
+
+Here is the simplest usage:
+
+```
+{{ partialCached "footer.html" . }}
+```
+
+You can also pass additional parameters to `partialCached` to create *variants* of the cached partial. For example, if you have a complex partial that should be identical when rendered for pages within the same section, you could use a variant based upon section so that the partial is only rendered once per section:
+
+{{< code file="partial-cached-example.html" >}}
+{{ partialCached "footer.html" . .Section }}
+{{< /code >}}
+
+If you need to pass additional parameters to create unique variants, you can pass as many variant parameters as you need:
+
+```
+{{ partialCached "footer.html" . .Params.country .Params.province }}
+```
+
+Note that the variant parameters are not made available to the underlying partial template. They are only use to create a unique cache key. Since Hugo `0.61.0` you can use any object as cache key(s), not just strings.
+
+
+> See also the [The Full Partial Series Part 1: Caching!](https://regisphilibert.com/blog/2019/12/hugo-partial-series-part-1-caching-with-partialcached/)
diff --git a/docs/content/en/functions/path.Base.md b/docs/content/en/functions/path.Base.md
new file mode 100644
index 000000000..c44518a72
--- /dev/null
+++ b/docs/content/en/functions/path.Base.md
@@ -0,0 +1,30 @@
+---
+title: path.Base
+description: Base returns the last element of a path.
+date: 2018-11-28
+publishdate: 2018-11-28
+lastmod: 2018-11-28
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [path, base]
+signature: ["path.Base PATH"]
+workson: []
+hugoversion: "0.40"
+relatedfuncs: [path.Dir, path.Ext, path.Split]
+deprecated: false
+---
+
+`path.Base` returns the last element of `PATH`.
+
+If `PATH` is empty, `.` is returned.
+
+**Note:** On Windows, `PATH` is converted to slash (`/`) separators.
+
+```
+{{ path.Base "a/news.html" }} → "news.html"
+{{ path.Base "news.html" }} → "news.html"
+{{ path.Base "a/b/c" }} → "c"
+{{ path.Base "/x/y/z/" }} → "z"
+```
diff --git a/docs/content/en/functions/path.Clean.md b/docs/content/en/functions/path.Clean.md
new file mode 100644
index 000000000..03ffbd836
--- /dev/null
+++ b/docs/content/en/functions/path.Clean.md
@@ -0,0 +1,26 @@
+---
+title: path.Clean
+description: Replaces path separators with slashes (`/`) and removes extraneous separators.
+date: 2021-10-08
+# publishdate: 2018-11-28
+# lastmod: 2018-11-28
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [path]
+signature: ["path.Clean PATH"]
+---
+
+`path.Clean` replaces path separators with slashes (`/`) and removes extraneous separators, including trailing separators.
+
+```
+{{ path.Clean "foo//bar" }} → "foo/bar"
+{{ path.Clean "/foo/bar/" }} → "/foo/bar"
+```
+
+On a Windows system, if `.File.Path` is `foo\bar.md`, then:
+
+```
+{{ path.Clean .File.Path }} → "foo/bar.md"
+```
diff --git a/docs/content/en/functions/path.Dir.md b/docs/content/en/functions/path.Dir.md
new file mode 100644
index 000000000..851a3dc83
--- /dev/null
+++ b/docs/content/en/functions/path.Dir.md
@@ -0,0 +1,31 @@
+---
+title: path.Dir
+description: Dir returns all but the last element of a path.
+date: 2018-11-28
+publishdate: 2018-11-28
+lastmod: 2018-11-28
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [path, dir]
+signature: ["path.Dir PATH"]
+workson: []
+hugoversion: "0.40"
+relatedfuncs: [path.Base, path.Ext, path.Split]
+deprecated: false
+---
+
+`path.Dir` returns all but the last element of `PATH`, typically `PATH`'s directory.
+
+The returned path will never end in a slash.
+If `PATH` is empty, `.` is returned.
+
+**Note:** On Windows, `PATH` is converted to slash (`/`) separators.
+
+```
+{{ path.Dir "a/news.html" }} → "a"
+{{ path.Dir "news.html" }} → "."
+{{ path.Dir "a/b/c" }} → "a/b"
+{{ path.Dir "/x/y/z" }} → "/x/y"
+```
diff --git a/docs/content/en/functions/path.Ext.md b/docs/content/en/functions/path.Ext.md
new file mode 100644
index 000000000..73db7ab38
--- /dev/null
+++ b/docs/content/en/functions/path.Ext.md
@@ -0,0 +1,28 @@
+---
+title: path.Ext
+description: Ext returns the file name extension of a path.
+date: 2018-11-28
+publishdate: 2018-11-28
+lastmod: 2018-11-28
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [path, ext, extension]
+signature: ["path.Ext PATH"]
+workson: []
+hugoversion: "0.40"
+relatedfuncs: [path.Base, path.Dir, path.Split]
+deprecated: false
+---
+
+`path.Ext` returns the file name extension `PATH`.
+
+The extension is the suffix beginning at the final dot in the final slash-separated element `PATH`;
+it is empty if there is no dot.
+
+**Note:** On Windows, `PATH` is converted to slash (`/`) separators.
+
+```
+{{ path.Ext "a/b/c/news.html" }} → ".html"
+```
diff --git a/docs/content/en/functions/path.Join.md b/docs/content/en/functions/path.Join.md
new file mode 100644
index 000000000..96ce86322
--- /dev/null
+++ b/docs/content/en/functions/path.Join.md
@@ -0,0 +1,28 @@
+---
+title: path.Join
+description: Join path elements into a single path.
+date: 2018-11-28
+publishdate: 2018-11-28
+lastmod: 2018-11-28
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [path, join]
+signature: ["path.Join ELEMENT..."]
+workson: []
+hugoversion: "0.39"
+relatedfuncs: [path.Split]
+deprecated: false
+---
+
+`path.Join` joins path elements into a single path, adding a separating slash if necessary.
+All empty strings are ignored.
+
+**Note:** All path elements on Windows are converted to slash ('/') separators.
+
+```
+{{ path.Join "partial" "news.html" }} → "partial/news.html"
+{{ path.Join "partial/" "news.html" }} → "partial/news.html"
+{{ path.Join "foo/baz" "bar" }} → "foo/baz/bar"
+```
diff --git a/docs/content/en/functions/path.Split.md b/docs/content/en/functions/path.Split.md
new file mode 100644
index 000000000..9a09fbe4a
--- /dev/null
+++ b/docs/content/en/functions/path.Split.md
@@ -0,0 +1,30 @@
+---
+title: path.Split
+description: Split path immediately following the final slash.
+date: 2018-11-28
+publishdate: 2018-11-28
+lastmod: 2018-11-28
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [path, split]
+signature: ["path.Split PATH"]
+workson: []
+hugoversion: "0.39"
+relatedfuncs: [path.Split]
+deprecated: false
+---
+
+`path.Split` splits `PATH` immediately following the final slash, separating it into a directory and a base component.
+
+The returned values have the property that `PATH` = `DIR`+`BASE`.
+If there is no slash in `PATH`, it returns an empty directory and the base is set to `PATH`.
+
+**Note:** On Windows, `PATH` is converted to slash (`/`) separators.
+
+```
+{{ $dirFile := path.Split "a/news.html" }} → $dirFile.Dir → "a/", $dirFile.File → "news.html"
+{{ $dirFile := path.Split "news.html" }} → $dirFile.Dir → "", $dirFile.File → "news.html"
+{{ $dirFile := path.Split "a/b/c" }} → $dirFile.Dir → "a/b/", $dirFile.File → "c"
+```
diff --git a/docs/content/en/functions/plainify.md b/docs/content/en/functions/plainify.md
new file mode 100644
index 000000000..1258c139a
--- /dev/null
+++ b/docs/content/en/functions/plainify.md
@@ -0,0 +1,27 @@
+---
+title: plainify
+linktitle: plainify
+description: Strips any HTML and returns the plain text version of the provided string.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-04-30
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings]
+signature: ["plainify INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: [jsonify]
+deprecated: false
+aliases: []
+---
+
+```
+{{ "<b>BatMan</b>" | plainify }} → "BatMan"
+```
+
+See also the `.PlainWords`, `.Plain`, and `.RawContent` [page variables][pagevars].
+
+[pagevars]: /variables/page/
diff --git a/docs/content/en/functions/pluralize.md b/docs/content/en/functions/pluralize.md
new file mode 100644
index 000000000..9c5040934
--- /dev/null
+++ b/docs/content/en/functions/pluralize.md
@@ -0,0 +1,23 @@
+---
+title: pluralize
+linktitle: pluralize
+description: Pluralizes the given word according to a set of common English pluralization rules
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings]
+signature: ["pluralize INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+```
+{{ "cat" | pluralize }} → "cats"
+```
diff --git a/docs/content/en/functions/print.md b/docs/content/en/functions/print.md
new file mode 100644
index 000000000..42b8dcb75
--- /dev/null
+++ b/docs/content/en/functions/print.md
@@ -0,0 +1,26 @@
+---
+title: print
+linktitle: print
+description: Prints the default representation of the given arguments using the standard `fmt.Print` function.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings]
+signature: ["print INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+---
+
+See [the go doc](https://golang.org/pkg/fmt/) for additional information.
+
+```
+{{ print "foo" }} → "foo"
+{{ print "foo" "bar" }} → "foobar"
+{{ print (slice 1 2 3) }} → [1 2 3]
+```
diff --git a/docs/content/en/functions/printf.md b/docs/content/en/functions/printf.md
new file mode 100644
index 000000000..8b12b9883
--- /dev/null
+++ b/docs/content/en/functions/printf.md
@@ -0,0 +1,28 @@
+---
+title: printf
+linktitle: printf
+description: Formats a string using the standard `fmt.Sprintf` function.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings]
+signature: ["printf FORMAT INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+---
+
+See [the go doc](https://golang.org/pkg/fmt/) for additional information.
+
+```
+{{ i18n ( printf "combined_%s" $var ) }}
+```
+
+```
+{{ printf "formatted %.2f" 3.1416 }}
+```
diff --git a/docs/content/en/functions/println.md b/docs/content/en/functions/println.md
new file mode 100644
index 000000000..1ea70cbad
--- /dev/null
+++ b/docs/content/en/functions/println.md
@@ -0,0 +1,24 @@
+---
+title: println
+linktitle: println
+description: Prints the default representation of the given argument using the standard `fmt.Print` function and enforces a linebreak.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings]
+signature: ["println INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+---
+
+See [the go doc](https://golang.org/pkg/fmt/) for additional information. `\n` denotes the linebreak but isn't printed in the templates as seen below:
+
+```
+{{ println "foo" }} → "foo\n"
+```
diff --git a/docs/content/en/functions/querify.md b/docs/content/en/functions/querify.md
new file mode 100644
index 000000000..9e8c4b83f
--- /dev/null
+++ b/docs/content/en/functions/querify.md
@@ -0,0 +1,36 @@
+---
+title: querify
+linktitle: querify
+description: Takes a set or slice of key-value pairs and returns a query string to be appended to URLs.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [urls]
+signature: ["querify KEY VALUE [KEY VALUE]...", "querify COLLECTION"]
+hugoversion:
+deprecated: false
+workson: []
+relatedfuncs: []
+aliases: []
+---
+
+`querify` takes a set or slice of key-value pairs and returns a [query string](https://en.wikipedia.org/wiki/Query_string) that can be appended to a URL.
+
+The following examples create a link to a search results page on Google.
+
+```go-html-template
+<a href="https://www.google.com?{{ (querify "q" "test" "page" 3) | safeURL }}">Search</a>
+
+{{ $qs := slice "q" "test" "page" 3 }}
+<a href="https://www.google.com?{{ (querify $qs) | safeURL }}">Search</a>
+```
+
+Both of these examples render the following HTML:
+
+```html
+<a href="https://www.google.com?page=3&q=test">Search</a>
+```
diff --git a/docs/content/en/functions/range.md b/docs/content/en/functions/range.md
new file mode 100644
index 000000000..599e2ad25
--- /dev/null
+++ b/docs/content/en/functions/range.md
@@ -0,0 +1,24 @@
+---
+title: range
+linktitle:
+description: Iterates over a map, array, or slice.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [iteration]
+signature: ["range COLLECTION"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+draft: false
+aliases: []
+---
+
+Just like in the Go programming language, Go and Hugo templates make heavy use of `range` to iterate over a map, array or slice. Other templating languages use a foreach for the equivalent functionality.
+
+`range` is fundamental to templating in Hugo. (See the [Introduction to Hugo Templates](/templates/introduction/) for more examples.)
diff --git a/docs/content/en/functions/readdir.md b/docs/content/en/functions/readdir.md
new file mode 100644
index 000000000..70fe7b66c
--- /dev/null
+++ b/docs/content/en/functions/readdir.md
@@ -0,0 +1,51 @@
+---
+title: readDir
+description: Returns an array of FileInfo structures sorted by filename, one element for each directory entry.
+publishdate: 2017-02-01
+lastmod: 2021-11-26
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [files]
+signature: ["os.ReadDir PATH", "readDir PATH"]
+workson: []
+hugoversion:
+relatedfuncs: ['os.FileExists','os.ReadFile','os.Stat']
+deprecated: false
+aliases: []
+---
+The `os.ReadDir` function resolves the path relative to the root of your project directory. A leading path separator (`/`) is optional.
+
+With this directory structure:
+
+```text
+content/
+├── about.md
+├── contact.md
+└── news/
+ ├── article-1.md
+ └── article-2.md
+```
+
+This template code:
+
+```go-html-template
+{{ range os.ReadDir "content" }}
+ {{ .Name }} --> {{ .IsDir }}
+{{ end }}
+```
+
+Produces:
+
+```html
+about.md --> false
+contact.md --> false
+news --> true
+```
+
+Note that `os.ReadDir` is not recursive.
+
+Details of the `FileInfo` structure are available in the [Go documentation](https://pkg.go.dev/io/fs#FileInfo).
+
+For more information on using `readDir` and `readFile` in your templates, see [Local File Templates]({{< relref "/templates/files" >}}).
diff --git a/docs/content/en/functions/readfile.md b/docs/content/en/functions/readfile.md
new file mode 100644
index 000000000..b0a88458b
--- /dev/null
+++ b/docs/content/en/functions/readfile.md
@@ -0,0 +1,41 @@
+---
+title: readFile
+description: Returns the contents of a file.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2021-11-26
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [files]
+signature: ["os.ReadFile PATH", "readFile PATH"]
+workson: []
+hugoversion:
+relatedfuncs: ['os.FileExists','os.ReadDir','os.Stat']
+deprecated: false
+aliases: []
+---
+The `os.ReadFile` function attempts to resolve the path relative to the root of your project directory. If a matching file is not found, it will attempt to resolve the path relative to the [`contentDir`]({{< relref "getting-started/configuration#contentdir">}}). A leading path separator (`/`) is optional.
+
+With a file named README.md in the root of your project directory:
+
+```text
+This is **bold** text.
+```
+
+This template code:
+
+```go-html-template
+{{ os.ReadFile "README.md" }}
+```
+
+Produces:
+
+```html
+This is **bold** text.
+```
+
+Note that `os.ReadFile` returns raw (uninterpreted) content.
+
+For more information on using `readDir` and `readFile` in your templates, see [Local File Templates]({{< relref "/templates/files" >}}).
diff --git a/docs/content/en/functions/ref.md b/docs/content/en/functions/ref.md
new file mode 100644
index 000000000..ade380420
--- /dev/null
+++ b/docs/content/en/functions/ref.md
@@ -0,0 +1,50 @@
+---
+title: ref
+linktitle: ref
+description: Returns the absolute permalink to a page.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2020-09-05
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [cross references, anchors]
+signature: ["ref . PAGE"]
+workson: []
+hugoversion:
+relatedfuncs: [relref]
+deprecated: false
+aliases: []
+---
+
+This function takes two parameters:
+
+- The context of the page from which to resolve relative paths, typically the current page (`.`)
+- The path to a page, with or without a file extension, with or without an anchor. A path without a leading `/` is first resolved relative to the given context, then to the remainder of the site.
+
+```go-html-template
+{{ ref . "about" }}
+{{ ref . "about#anchor" }}
+{{ ref . "about.md" }}
+{{ ref . "about.md#anchor" }}
+{{ ref . "#anchor" }}
+{{ ref . "/blog/my-post" }}
+{{ ref . "/blog/my-post.md" }}
+```
+
+To return the absolute permalink to another language version of a page:
+
+```go-html-template
+{{ ref . (dict "path" "about.md" "lang" "fr") }}
+```
+
+To return the absolute permalink to another Output Format of a page:
+
+```go-html-template
+{{ ref . (dict "path" "about.md" "outputFormat" "rss") }}
+```
+
+Hugo emits an error or warning if the page cannot be uniquely resolved. The error behavior is configurable; see [Ref and RelRef Configuration](/content-management/cross-references/#ref-and-relref-configuration).
+
+This function is used by Hugo's built-in [`ref`](/content-management/shortcodes/#ref-and-relref) shortcode. For a detailed explanation of how to leverage this shortcode for content management, see [Links and Cross References](/content-management/cross-references/).
diff --git a/docs/content/en/functions/reflect.IsMap.md b/docs/content/en/functions/reflect.IsMap.md
new file mode 100644
index 000000000..9ad50b599
--- /dev/null
+++ b/docs/content/en/functions/reflect.IsMap.md
@@ -0,0 +1,24 @@
+---
+title: reflect.IsMap
+description: Reports if a value is a map.
+date: 2018-11-28
+publishdate: 2018-11-28
+lastmod: 2018-11-28
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [reflect, reflection, kind]
+signature: ["reflect.IsMap INPUT"]
+workson: []
+hugoversion: "v0.53"
+relatedfuncs: [reflect.IsSlice]
+deprecated: false
+---
+
+`reflect.IsMap` reports if `VALUE` is a map. Returns a boolean.
+
+```
+{{ reflect.IsMap (dict "key" "value") }} → true
+{{ reflect.IsMap "yo" }} → false
+```
diff --git a/docs/content/en/functions/reflect.IsSlice.md b/docs/content/en/functions/reflect.IsSlice.md
new file mode 100644
index 000000000..38640918a
--- /dev/null
+++ b/docs/content/en/functions/reflect.IsSlice.md
@@ -0,0 +1,24 @@
+---
+title: reflect.IsSlice
+description: Reports if a value is a slice.
+date: 2018-11-28
+publishdate: 2018-11-28
+lastmod: 2018-11-28
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [reflect, reflection, kind]
+signature: ["reflect.IsSlice INPUT"]
+workson: []
+hugoversion: "0.53"
+relatedfuncs: [reflect.IsMap]
+deprecated: false
+---
+
+`reflect.IsSlice` reports if `VALUE` is a slice. Returns a boolean.
+
+```
+{{ reflect.IsSlice (slice 1 2 3) }} → true
+{{ reflect.IsSlice "yo" }} → false
+```
diff --git a/docs/content/en/functions/relLangURL.md b/docs/content/en/functions/relLangURL.md
new file mode 100644
index 000000000..e624aa355
--- /dev/null
+++ b/docs/content/en/functions/relLangURL.md
@@ -0,0 +1,29 @@
+---
+title: relLangURL
+description: Adds the relative URL with correct language prefix according to site configuration for multilingual.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+keywords: [multilingual,i18n,urls]
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+signature: ["relLangURL INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+`absLangURL` and `relLangURL` functions are similar to their [`absURL`](/functions/absurl/) and [`relURL`](/functions/relurl/) relatives but will add the correct language prefix when the site is configured with more than one language. (See [Configuring Multilingual][multiliconfig].)
+
+So for a site `baseURL` set to `https://example.com/hugo/` and the current language is `en`:
+
+```
+{{ "blog/" | absLangURL }} → "https://example.com/hugo/en/blog/"
+{{ "blog/" | relLangURL }} → "/hugo/en/blog/"
+```
+
+[multiliconfig]: /content-management/multilingual/#configuring-multilingual-mode
diff --git a/docs/content/en/functions/relref.md b/docs/content/en/functions/relref.md
new file mode 100644
index 000000000..dbac2f3db
--- /dev/null
+++ b/docs/content/en/functions/relref.md
@@ -0,0 +1,57 @@
+---
+title: relref
+linktitle: relref
+description: Returns the relative permalink to a page.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2020-09-05
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [cross references, anchors]
+signature: ["relref . PAGE"]
+workson: []
+hugoversion:
+relatedfuncs: [ref]
+deprecated: false
+aliases: []
+---
+
+This function takes two parameters:
+
+- The context of the page from which to resolve relative paths, typically the current page (`.`)
+- The path to a page, with or without a file extension, with or without an anchor. A path without a leading `/` is first resolved relative to the given context, then to the remainder of the site.
+
+```go-html-template
+{{ relref . "about" }}
+{{ relref . "about#anchor" }}
+{{ relref . "about.md" }}
+{{ relref . "about.md#anchor" }}
+{{ relref . "#anchor" }}
+{{ relref . "/blog/my-post" }}
+{{ relref . "/blog/my-post.md" }}
+```
+
+The permalink returned is relative to the protocol+host portion of the baseURL specified in the site configuration. For example:
+
+Code|baseURL|Permalink
+:--|:--|:--
+`{{ relref . "/about" }}`|`http://example.org/`|`/about/`
+`{{ relref . "/about" }}`|`http://example.org/x/`|`/x/about/`
+
+To return the relative permalink to another language version of a page:
+
+```go-html-template
+{{ relref . (dict "path" "about.md" "lang" "fr") }}
+```
+
+To return the relative permalink to another Output Format of a page:
+
+```go-html-template
+{{ relref . (dict "path" "about.md" "outputFormat" "rss") }}
+```
+
+Hugo emits an error or warning if the page cannot be uniquely resolved. The error behavior is configurable; see [Ref and RelRef Configuration](/content-management/cross-references/#ref-and-relref-configuration).
+
+This function is used by Hugo's built-in [`relref`](/content-management/shortcodes/#ref-and-relref) shortcode. For a detailed explanation of how to leverage this shortcode for content management, see [Links and Cross References](/content-management/cross-references/).
diff --git a/docs/content/en/functions/relurl.md b/docs/content/en/functions/relurl.md
new file mode 100644
index 000000000..71eefb013
--- /dev/null
+++ b/docs/content/en/functions/relurl.md
@@ -0,0 +1,50 @@
+---
+title: relURL
+description: Creates a baseURL-relative URL.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [urls]
+signature: ["relURL INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: [absURL]
+deprecated: false
+aliases: []
+---
+
+Both `absURL` and `relURL` consider the configured value of `baseURL` in your site's [`config` file][configuration]. Given a `baseURL` set to `https://example.com/hugo/`:
+
+```
+{{ "mystyle.css" | absURL }} → "https://example.com/hugo/mystyle.css"
+{{ "mystyle.css" | relURL }} → "/hugo/mystyle.css"
+{{ "http://gohugo.io/" | relURL }} → "http://gohugo.io/"
+{{ "http://gohugo.io/" | absURL }} → "http://gohugo.io/"
+```
+
+The last two examples may look strange but can be very useful. For example, the following shows how to use `absURL` in [JSON-LD structured data for SEO][jsonld] where some of your images for a piece of content may or may not be hosted locally:
+
+{{< code file="layouts/partials/schemaorg-metadata.html" download="schemaorg-metadata.html" >}}
+<script type="application/ld+json">
+{
+ "@context" : "http://schema.org",
+ "@type" : "BlogPosting",
+ "image" : {{ apply .Params.images "absURL" "." }}
+}
+</script>
+{{< /code >}}
+
+The above uses the [apply function][] and also exposes how the Go template parser JSON-encodes objects inside `<script>` tags. See [the safeJS template function][safejs] for examples of how to tell Hugo not to escape strings inside of such tags.
+
+{{% note "Ending Slash" %}}
+`absURL` and `relURL` are smart about missing slashes, but they will *not* add a closing slash to a URL if it is not present.
+{{% /note %}}
+
+[apply function]: /functions/apply/
+[configuration]: /getting-started/configuration/
+[jsonld]: https://developers.google.com/search/docs/guides/intro-structured-data
+[safejs]: /functions/safejs
diff --git a/docs/content/en/functions/render.md b/docs/content/en/functions/render.md
new file mode 100644
index 000000000..c2347091f
--- /dev/null
+++ b/docs/content/en/functions/render.md
@@ -0,0 +1,32 @@
+---
+title: .Render
+description: Takes a view to apply when rendering content.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [views]
+signature: [".Render LAYOUT"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+The view is an alternative layout and should be a file name that points to a template in one of the locations specified in the documentation for [Content Views](/templates/views).
+
+This function is only available when applied to a single piece of content within a [list context][].
+
+This example could render a piece of content using the content view located at `/layouts/_default/summary.html`:
+
+```
+{{ range .Pages }}
+ {{ .Render "summary"}}
+{{ end }}
+```
+
+[list context]: /templates/lists/
diff --git a/docs/content/en/functions/replace.md b/docs/content/en/functions/replace.md
new file mode 100644
index 000000000..07b83d035
--- /dev/null
+++ b/docs/content/en/functions/replace.md
@@ -0,0 +1,28 @@
+---
+title: replace
+description: Replaces all occurrences of the search string with the replacement string.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2020-09-07
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: []
+signature: ["strings.Replace INPUT OLD NEW [LIMIT]", "replace INPUT OLD NEW [LIMIT]"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+Replace returns a copy of `INPUT` with all occurrences of `OLD` replaced with `NEW`.
+The number of replacements can be limited with an optional `LIMIT` parameter.
+
+```
+`{{ replace "Batman and Robin" "Robin" "Catwoman" }}`
+→ "Batman and Catwoman"
+
+{{ replace "aabbaabb" "a" "z" 2 }} → "zzbbaabb"
+```
diff --git a/docs/content/en/functions/replacere.md b/docs/content/en/functions/replacere.md
new file mode 100644
index 000000000..a2149b6d3
--- /dev/null
+++ b/docs/content/en/functions/replacere.md
@@ -0,0 +1,34 @@
+---
+title: replaceRE
+description: Replaces all occurrences of a regular expression with the replacement pattern.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2020-09-07
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [regex]
+signature: ["strings.ReplaceRE PATTERN REPLACEMENT INPUT [LIMIT]", "replaceRE PATTERN REPLACEMENT INPUT [LIMIT]"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+`strings.ReplaceRE` returns a copy of `INPUT`, replacing all matches of the regular
+expression `PATTERN` with the replacement text `REPLACEMENT`.
+The number of replacements can be limited with an optional `LIMIT` parameter.
+
+```
+{{ replaceRE "^https?://([^/]+).*" "$1" "http://gohugo.io/docs" }}` → "gohugo.io"
+{{ "http://gohugo.io/docs" | replaceRE "^https?://([^/]+).*" "$1" }}` → "gohugo.io"
+{{ replaceRE "a+b" "X" "aabbaabbab" 1 }} → "Xbaabbab"
+```
+
+{{% note %}}
+Hugo uses Go's [Regular Expression package](https://golang.org/pkg/regexp/), which is the same general syntax used by Perl, Python, and other languages but with a few minor differences for those coming from a background in PCRE. For a full syntax listing, see the [GitHub wiki for re2](https://github.com/google/re2/wiki/Syntax).
+
+If you are just learning RegEx, or at least Go's flavor, you can practice pattern matching in the browser at <https://regex101.com/>.
+{{% /note %}}
diff --git a/docs/content/en/functions/safeCSS.md b/docs/content/en/functions/safeCSS.md
new file mode 100644
index 000000000..835ad3065
--- /dev/null
+++ b/docs/content/en/functions/safeCSS.md
@@ -0,0 +1,34 @@
+---
+title: safeCSS
+description: Declares the provided string as a known "safe" CSS string.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-26
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [style,css,strings]
+signature: ["safeCSS INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: [safeHTML,safeHTMLAttr,]
+deprecated: false
+aliases: []
+---
+
+In this context, *safe* means CSS content that matches any of the following:
+
+1. The CSS3 stylesheet production, such as `p { color: purple }`.
+2. The CSS3 rule production, such as `a[href=~"https:"].foo#bar`.
+3. CSS3 declaration productions, such as `color: red; margin: 2px`.
+4. The CSS3 value production, such as `rgba(0, 0, 255, 127)`.
+
+Example: Given `style = "color: red;"` defined in the front matter of your `.md` file:
+
+* <span class="good">`<p style="{{ .Params.style | safeCSS }}">…</p>` &rarr; `<p style="color: red;">…</p>`</span>
+* <span class="bad">`<p style="{{ .Params.style }}">…</p>` &rarr; `<p style="ZgotmplZ">…</p>`</span>
+
+{{% note "ZgotmplZ" %}}
+"ZgotmplZ" is a special value that indicates that unsafe content reached a CSS or URL context.
+{{% /note %}}
diff --git a/docs/content/en/functions/safeHTML.md b/docs/content/en/functions/safeHTML.md
new file mode 100644
index 000000000..3d5197a4f
--- /dev/null
+++ b/docs/content/en/functions/safeHTML.md
@@ -0,0 +1,40 @@
+---
+title: safeHTML
+# linktitle:
+description: Declares a provided string as a "safe" HTML document to avoid escaping by Go templates.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings]
+signature: ["safeHTML INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+---
+
+It should not be used for HTML from a third-party, or HTML with unclosed tags or comments.
+
+Given a site-wide [`config.toml`][config] with the following `copyright` value:
+
+{{< code-toggle file="config" >}}
+copyright = "© 2015 Jane Doe. <a href=\"https://creativecommons.org/licenses/by/4.0/\">Some rights reserved</a>."
+{{< /code-toggle >}}
+
+`{{ .Site.Copyright | safeHTML }}` in a template would then output:
+
+```
+© 2015 Jane Doe. <a href="https://creativecommons.org/licenses/by/4.0/">Some rights reserved</a>.
+```
+
+However, without the `safeHTML` function, html/template assumes `.Site.Copyright` to be unsafe and therefore escapes all HTML tags and renders the whole string as plain text:
+
+```
+<p>© 2015 Jane Doe. &lt;a href=&#34;https://creativecommons.org/licenses by/4.0/&#34;&gt;Some rights reserved&lt;/a&gt;.</p>
+```
+
+[config]: /getting-started/configuration/
diff --git a/docs/content/en/functions/safeHTMLAttr.md b/docs/content/en/functions/safeHTMLAttr.md
new file mode 100644
index 000000000..19de2e985
--- /dev/null
+++ b/docs/content/en/functions/safeHTMLAttr.md
@@ -0,0 +1,30 @@
+---
+title: safeHTMLAttr
+# linktitle: safeHTMLAttr
+description: Declares the provided string as a safe HTML attribute.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings]
+signature: ["safeHTMLAttr INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+Example: Given a site-wide `config.toml` that contains this menu entry:
+
+{{< code-toggle file="config" >}}
+[[menu.main]]
+ name = "IRC: #golang at freenode"
+ url = "irc://irc.freenode.net/#golang"
+{{< /code-toggle >}}
+
+* <span class="bad">`<a href="{{ .URL }}">` &rarr; `<a href="#ZgotmplZ">`</span>
+* <span class="good">`<a {{ printf "href=%q" .URL | safeHTMLAttr }}>` &rarr; `<a href="irc://irc.freenode.net/#golang">`</span>
diff --git a/docs/content/en/functions/safeJS.md b/docs/content/en/functions/safeJS.md
new file mode 100644
index 000000000..c67bfa61c
--- /dev/null
+++ b/docs/content/en/functions/safeJS.md
@@ -0,0 +1,29 @@
+---
+title: safeJS
+# linktitle:
+description: Declares the provided string as a known safe JavaScript string.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings]
+signature: ["safeJS INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+draft: false
+aliases: []
+---
+
+In this context, *safe* means the string encapsulates a known safe EcmaScript5 Expression (e.g., `(x + y * z())`).
+
+Template authors are responsible for ensuring that typed expressions do not break the intended precedence and that there is no statement/expression ambiguity as when passing an expression like `{ foo:bar() }\n['foo']()`, which is both a valid expression and a valid program with a very different meaning.
+
+Example: Given `hash = "619c16f"` defined in the front matter of your `.md` file:
+
+* <span class="good">`<script>var form_{{ .Params.hash | safeJS }};…</script>` &rarr; `<script>var form_619c16f;…</script>`</span>
+* <span class="bad">`<script>var form_{{ .Params.hash }};…</script>` &rarr; `<script>var form_"619c16f";…</script>`</span>
diff --git a/docs/content/en/functions/safeURL.md b/docs/content/en/functions/safeURL.md
new file mode 100644
index 000000000..959076246
--- /dev/null
+++ b/docs/content/en/functions/safeURL.md
@@ -0,0 +1,71 @@
+---
+title: safeURL
+description: Declares the provided string as a safe URL or URL substring.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+keywords: [strings,urls]
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+signature: ["safeURL INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+`safeURL` declares the provided string as a "safe" URL or URL substring (see [RFC 3986][]). A URL like `javascript:checkThatFormNotEditedBeforeLeavingPage()` from a trusted source should go in the page, but by default dynamic `javascript:` URLs are filtered out since they are a frequently exploited injection vector.
+
+Without `safeURL`, only the URI schemes `http:`, `https:` and `mailto:` are considered safe by Go templates. If any other URI schemes (e.g., `irc:` and `javascript:`) are detected, the whole URL will be replaced with `#ZgotmplZ`. This is to "defang" any potential attack in the URL by rendering it useless.
+
+The following examples use a [site `config.toml`][configuration] with the following [menu entry][menus]:
+
+{{< code file="config.toml" copy="false" >}}
+[[menu.main]]
+ name = "IRC: #golang at freenode"
+ url = "irc://irc.freenode.net/#golang"
+{{< /code >}}
+
+The following is an example of a sidebar partial that may be used in conjunction with the preceding front matter example:
+
+{{< code file="layouts/partials/bad-url-sidebar-menu.html" copy="false" >}}
+<!-- This unordered list may be part of a sidebar menu -->
+<ul>
+ {{ range .Site.Menus.main }}
+ <li><a href="{{ .URL }}">{{ .Name }}</a></li>
+ {{ end }}
+</ul>
+{{< /code >}}
+
+This partial would produce the following HTML output:
+
+{{< output file="bad-url-sidebar-menu-output.html" >}}
+<!-- This unordered list may be part of a sidebar menu -->
+<ul>
+ <li><a href="#ZgotmplZ">IRC: #golang at freenode</a></li>
+</ul>
+{{< /output >}}
+
+The odd output can be remedied by adding ` | safeURL` to our `.URL` page variable:
+
+{{< code file="layouts/partials/correct-url-sidebar-menu.html" copy="false" >}}
+<!-- This unordered list may be part of a sidebar menu -->
+<ul>
+ <li><a href="{{ .URL | safeURL }}">{{ .Name }}</a></li>
+</ul>
+{{< /code >}}
+
+With the `.URL` page variable piped through `safeURL`, we get the desired output:
+
+{{< output file="correct-url-sidebar-menu-output.html" >}}
+<ul class="sidebar-menu">
+ <li><a href="irc://irc.freenode.net/#golang">IRC: #golang at freenode</a></li>
+</ul>
+{{< /output >}}
+
+[configuration]: /getting-started/configuration/
+[menus]: /content-management/menus/
+[RFC 3986]: https://tools.ietf.org/html/rfc3986
diff --git a/docs/content/en/functions/scratch.md b/docs/content/en/functions/scratch.md
new file mode 100644
index 000000000..c64aa1119
--- /dev/null
+++ b/docs/content/en/functions/scratch.md
@@ -0,0 +1,154 @@
+---
+title: .Scratch
+description: Acts as a "scratchpad" to store and manipulate data.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+keywords: [iteration]
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+toc:
+signature: []
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+draft: false
+aliases: [/extras/scratch/,/doc/scratch/]
+---
+
+Scratch is a Hugo feature designed to conveniently manipulate data in a Go Template world. It is either a Page or Shortcode method for which the resulting data will be attached to the given context, or it can live as a unique instance stored in a variable.
+
+{{% note %}}
+Note that Scratch was initially created as a workaround for a [Go template scoping limitation](https://github.com/golang/go/issues/10608) that affected Hugo versions prior to 0.48. For a detailed analysis of `.Scratch` and contextual use cases, see [this blog post](https://regisphilibert.com/blog/2017/04/hugo-scratch-explained-variable/).
+{{% /note %}}
+
+### Contexted `.Scratch` vs. local `newScratch`
+
+Since Hugo 0.43, there are two different ways of using Scratch:
+
+#### The Page's `.Scratch`
+
+`.Scratch` is available as a Page method or a Shortcode method and attaches the "scratched" data to the given page. Either a Page or a Shortcode context is required to use `.Scratch`.
+
+```go-html-template
+{{ .Scratch.Set "greeting" "bonjour" }}
+{{ range .Pages }}
+ {{ .Scratch.Set "greeting" (print "bonjour" .Title) }}
+{{ end }}
+```
+
+#### The local `newScratch`
+
+{{< new-in "0.43" >}} A Scratch instance can also be assigned to any variable using the `newScratch` function. In this case, no Page or Shortcode context is required and the scope of the scratch is only local. The methods detailed below are available from the variable the Scratch instance was assigned to.
+
+```go-html-template
+{{ $data := newScratch }}
+{{ $data.Set "greeting" "hola" }}
+```
+
+### Methods
+
+A Scratch has the following methods:
+
+{{% note %}}
+Note that the following examples assume a [local Scratch instance](#the-local-newscratch) has been stored in `$scratch`.
+{{% /note %}}
+
+#### .Set
+
+Set the value of a given key.
+
+```go-html-template
+{{ $scratch.Set "greeting" "Hello" }}
+```
+
+#### .Get
+
+Get the value of a given key.
+
+```go-html-template
+{{ $scratch.Set "greeting" "Hello" }}
+----
+{{ $scratch.Get "greeting" }} > Hello
+```
+
+#### .Add
+
+Add a given value to existing value(s) of the given key.
+
+For single values, `Add` accepts values that support Go's `+` operator. If the first `Add` for a key is an array or slice, the following adds will be appended to that list.
+
+```go-html-template
+{{ $scratch.Add "greetings" "Hello" }}
+{{ $scratch.Add "greetings" "Welcome" }}
+----
+{{ $scratch.Get "greetings" }} > HelloWelcome
+```
+
+```go-html-template
+{{ $scratch.Add "total" 3 }}
+{{ $scratch.Add "total" 7 }}
+----
+{{ $scratch.Get "total" }} > 10
+```
+
+```go-html-template
+{{ $scratch.Add "greetings" (slice "Hello") }}
+{{ $scratch.Add "greetings" (slice "Welcome" "Cheers") }}
+----
+{{ $scratch.Get "greetings" }} > []interface {}{"Hello", "Welcome", "Cheers"}
+```
+
+#### .SetInMap
+
+Takes a `key`, `mapKey` and `value` and adds a map of `mapKey` and `value` to the given `key`.
+
+```go-html-template
+{{ $scratch.SetInMap "greetings" "english" "Hello" }}
+{{ $scratch.SetInMap "greetings" "french" "Bonjour" }}
+----
+{{ $scratch.Get "greetings" }} > map[french:Bonjour english:Hello]
+```
+
+#### .DeleteInMap
+Takes a `key` and `mapKey` and removes the map of `mapKey` from the given `key`.
+
+```go-html-template
+{{ .Scratch.SetInMap "greetings" "english" "Hello" }}
+{{ .Scratch.SetInMap "greetings" "french" "Bonjour" }}
+----
+{{ .Scratch.DeleteInMap "greetings" "english" }}
+----
+{{ .Scratch.Get "greetings" }} > map[french:Bonjour]
+```
+
+#### .GetSortedMapValues
+
+Return an array of values from `key` sorted by `mapKey`.
+
+```go-html-template
+{{ $scratch.SetInMap "greetings" "english" "Hello" }}
+{{ $scratch.SetInMap "greetings" "french" "Bonjour" }}
+----
+{{ $scratch.GetSortedMapValues "greetings" }} > [Hello Bonjour]
+```
+
+#### .Delete
+
+{{< new-in "0.38" >}} Remove the given key.
+
+```go-html-template
+{{ $scratch.Set "greeting" "Hello" }}
+----
+{{ $scratch.Delete "greeting" }}
+```
+
+#### .Values
+
+Return the raw backing map. Note that you should only use this method on the locally scoped Scratch instances you obtain via [`newScratch`](#the-local-newscratch), not `.Page.Scratch` etc., as that will lead to concurrency issues.
+
+
+[pagevars]: /variables/page/
diff --git a/docs/content/en/functions/seq.md b/docs/content/en/functions/seq.md
new file mode 100644
index 000000000..c0750b4a1
--- /dev/null
+++ b/docs/content/en/functions/seq.md
@@ -0,0 +1,50 @@
+---
+title: seq
+# linktitle:
+description: Creates a sequence of integers.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: []
+signature: ["seq LAST", "seq FIRST LAST", "seq FIRST INCREMENT LAST"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+draft: false
+aliases: []
+---
+
+It's named and used in the model of [GNU's seq][].
+
+```
+3 → 1, 2, 3
+1 2 4 → 1, 3
+-3 → -1, -2, -3
+1 4 → 1, 2, 3, 4
+1 -2 → 1, 0, -1, -2
+```
+
+## Example: `seq` with `range` and `after`
+
+You can use `seq` in combination with `range` and `after`. The following will return 19 elements:
+
+```
+{{ range after 1 (seq 20)}}
+{{ end }}
+```
+
+However, when ranging with an index, the following may be less confusing in that `$indexStartingAt1` and `$num` will return `1,2,3 ... 20`:
+
+```
+{{ range $index, $num := (seq 20) }}
+$indexStartingAt1 := (add $index 1)
+{{ end }}
+```
+
+
+[GNU's seq]: https://www.gnu.org/software/coreutils/manual/html_node/seq-invocation.html#seq-invocation
diff --git a/docs/content/en/functions/sha.md b/docs/content/en/functions/sha.md
new file mode 100644
index 000000000..24ad165a8
--- /dev/null
+++ b/docs/content/en/functions/sha.md
@@ -0,0 +1,33 @@
+---
+title: sha
+# linktitle: sha
+description: Hashes the given input and returns either an SHA1 or SHA256 checksum.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [sha,checksum]
+signature: ["sha1 INPUT", "sha256 INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: [md5]
+deprecated: false
+aliases: [sha1, sha256]
+---
+
+`sha1` hashes the given input and returns its SHA1 checksum.
+
+```
+{{ sha1 "Hello world, gophers!" }}
+<!-- returns the string "c8b5b0e33d408246e30f53e32b8f7627a7a649d4" -->
+```
+
+`sha256` hashes the given input and returns its SHA256 checksum.
+
+```
+{{ sha256 "Hello world, gophers!" }}
+<!-- returns the string "6ec43b78da9669f50e4e422575c54bf87536954ccd58280219c393f2ce352b46" -->
+```
diff --git a/docs/content/en/functions/shuffle.md b/docs/content/en/functions/shuffle.md
new file mode 100644
index 000000000..95a586e44
--- /dev/null
+++ b/docs/content/en/functions/shuffle.md
@@ -0,0 +1,38 @@
+---
+title: shuffle
+# linktitle:
+description: Returns a random permutation of a given array or slice.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-04-30
+keywords: [ordering]
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+signature: ["shuffle COLLECTION"]
+workson: []
+hugoversion:
+relatedfuncs: [seq]
+deprecated: false
+draft: false
+aliases: []
+---
+
+{{< code file="shuffle-input.html" >}}
+<!-- Shuffled sequence = -->
+<div>{{ shuffle (seq 1 5) }}</div>
+<!-- Shuffled slice = -->
+<div>{{ shuffle (slice "foo" "bar" "buzz") }}</div>
+{{< /code >}}
+
+This example would return the following:
+
+{{< output file="shuffle-output.html" >}}
+<!-- Shuffled sequence = -->
+<div>2 5 3 1 4</div>
+<!-- Shuffled slice = -->
+<div>buzz foo bar</div>
+{{< /output >}}
+
+This example also makes use of the [slice](/functions/slice/) and [seq](/functions/seq/) functions.
diff --git a/docs/content/en/functions/singularize.md b/docs/content/en/functions/singularize.md
new file mode 100644
index 000000000..8ca46d433
--- /dev/null
+++ b/docs/content/en/functions/singularize.md
@@ -0,0 +1,23 @@
+---
+title: singularize
+# linktitle: singularize
+description: Converts a word according to a set of common English singularization rules.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings,singular]
+signature: ["singularize INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+`{{ "cats" | singularize }}` → "cat"
+
+See also the `.Data.Singular` [taxonomy variable](/variables/taxonomy/) for singularizing taxonomy names.
diff --git a/docs/content/en/functions/site.md b/docs/content/en/functions/site.md
new file mode 100644
index 000000000..d4b8e417c
--- /dev/null
+++ b/docs/content/en/functions/site.md
@@ -0,0 +1,23 @@
+---
+title: site
+linktitle: site
+description: The `site` function provides global access to the same data as the `.Site` page method.
+date: 2021-02-11
+publishdate: 2021-02-11
+lastmod: 2021-02-11
+keywords: []
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+toc:
+signature: ["site"]
+workson: []
+hugoversion:
+relatedfuncs: ["hugo"]
+deprecated: false
+draft: false
+aliases: []
+---
+
+`site` is a global function which returns the same data as the `.Site` page method. See: [Site Variables]({{< relref "/variables/site" >}}).
diff --git a/docs/content/en/functions/slice.md b/docs/content/en/functions/slice.md
new file mode 100644
index 000000000..0710d5e40
--- /dev/null
+++ b/docs/content/en/functions/slice.md
@@ -0,0 +1,31 @@
+---
+title: slice
+# linktitle: slice
+description: Creates a slice (array) of all passed arguments.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [slice, array, interface]
+signature: ["slice ITEM..."]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+draft: false
+aliases: []
+toc: false
+---
+
+One use case is the concatenation of elements in combination with the [`delimit` function][]:
+
+{{< code file="slice.html" >}}
+{{ delimit (slice "foo" "bar" "buzz") ", " }}
+<!-- returns the string "foo, bar, buzz" -->
+{{< /code >}}
+
+
+[`delimit` function]: /functions/delimit/
diff --git a/docs/content/en/functions/slicestr.md b/docs/content/en/functions/slicestr.md
new file mode 100644
index 000000000..254ad9a61
--- /dev/null
+++ b/docs/content/en/functions/slicestr.md
@@ -0,0 +1,25 @@
+---
+title: slicestr
+# linktitle:
+description: Creates a slice of a half-open range, including start and end indices.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings]
+signature: ["slicestr STRING START [END]"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+For example, 1 and 4 creates a slice including elements 1 through 3.
+The `end` index can be omitted; it defaults to the string's length.
+
+* `{{slicestr "BatMan" 3}}` → "Man"
+* `{{slicestr "BatMan" 0 3}}` → "Bat"
diff --git a/docs/content/en/functions/sort.md b/docs/content/en/functions/sort.md
new file mode 100644
index 000000000..b48aad1aa
--- /dev/null
+++ b/docs/content/en/functions/sort.md
@@ -0,0 +1,63 @@
+---
+title: sort
+# linktitle: sort
+description: Sorts maps, arrays, and slices and returns a sorted slice.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [ordering,sorting,lists]
+signature: []
+workson: [lists,taxonomies,terms,groups]
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+A sorted array of map values will be returned with the keys eliminated. There are two optional arguments: `sortByField` and `sortAsc`. If left blank, sort will sort by keys (for maps) in ascending order as its default behavior.
+
+```
+---
+tags: ["tag3", "tag1", "tag2"]
+---
+
+// Site config
++++
+[params.authors]
+ [params.authors.Joe]
+ firstName = "Joe"
+ lastName = "Bergevin"
+ [params.authors.Derek]
+ firstName = "Derek"
+ lastName = "Perkins"
+ [params.authors.Tanner]
+ firstName = "Tanner"
+ lastName = "Linsley"
++++
+```
+
+```
+// Sort by value, ascending (default for lists)
+Tags: {{ range sort .Params.tags }}{{ . }} {{ end }}
+
+→ Outputs Tags: tag1 tag2 tag3
+
+// Sort by value, descending
+Tags: {{ range sort .Params.tags "value" "desc" }}{{ . }} {{ end }}
+
+→ Outputs Tags: tag3 tag2 tag1
+
+// Sort by key, ascending (default for maps)
+Authors: {{ range sort .Site.Params.authors }}{{ .firstName }} {{ end }}
+
+→ Outputs Authors: Derek Joe Tanner
+
+// Sort by field, descending
+Authors: {{ range sort .Site.Params.authors "lastName" "desc" }}{{ .lastName }} {{ end }}
+
+→ Outputs Authors: Perkins Linsley Bergevin
+```
diff --git a/docs/content/en/functions/split.md b/docs/content/en/functions/split.md
new file mode 100644
index 000000000..a66a7cf0c
--- /dev/null
+++ b/docs/content/en/functions/split.md
@@ -0,0 +1,21 @@
+---
+title: split
+# linktitle: split
+description: splits a string into substrings separated by a delimiter
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings]
+signature: ["split STRING DELIM"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+* `{{split "tag1,tag2,tag3" "," }}` → ["tag1" "tag2" "tag3"]
diff --git a/docs/content/en/functions/string.md b/docs/content/en/functions/string.md
new file mode 100644
index 000000000..33a781e45
--- /dev/null
+++ b/docs/content/en/functions/string.md
@@ -0,0 +1,21 @@
+---
+title: string
+# linktitle: string
+description: Creates a string from the argument passed to the function
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings]
+signature: ["string INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+* `{{string "BatMan"}}` → "BatMan"
diff --git a/docs/content/en/functions/strings.Count.md b/docs/content/en/functions/strings.Count.md
new file mode 100644
index 000000000..40f7043b6
--- /dev/null
+++ b/docs/content/en/functions/strings.Count.md
@@ -0,0 +1,29 @@
+---
+title: strings.Count
+description: Returns the number of non-overlapping instances of a substring within a string.
+date: 2020-09-07
+publishdate: 2020-09-07
+lastmod: 2020-09-07
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [count, counting, character count]
+signature: ["strings.Count SUBSTR STRING"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+{{< new-in "0.74.0" >}}
+
+If `SUBSTR` is an empty string, this function returns 1 plus the number of Unicode code points in `STRING`.
+
+Example|Result
+:--|:--
+`{{ "aaabaab" | strings.Count "a" }}`|5
+`{{ "aaabaab" | strings.Count "aa" }}`|2
+`{{ "aaabaab" | strings.Count "aaa" }}`|1
+`{{ "aaabaab" | strings.Count "" }}`|8
diff --git a/docs/content/en/functions/strings.HasSuffix.md b/docs/content/en/functions/strings.HasSuffix.md
new file mode 100644
index 000000000..3b82ea055
--- /dev/null
+++ b/docs/content/en/functions/strings.HasSuffix.md
@@ -0,0 +1,22 @@
+---
+title: strings.HasSuffix
+description: Determine whether or not a given string ends with the provided trailing suffix string.
+date: 2019-08-13
+publishdate: 2019-08-13
+lastmod: 2019-08-13
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings]
+signature: ["strings.HasSuffix STRING SUFFIX"]
+workson: []
+hugoversion:
+relatedfuncs: [hasPrefix]
+deprecated: false
+aliases: []
+---
+
+ {{ $pdfPath := "/path/to/some.pdf" }}
+ {{ strings.HasSuffix $pdfPath "pdf" }} → true
+ {{ strings.HasSuffix $pdfPath "txt" }} → false
diff --git a/docs/content/en/functions/strings.Repeat.md b/docs/content/en/functions/strings.Repeat.md
new file mode 100644
index 000000000..7cba6d075
--- /dev/null
+++ b/docs/content/en/functions/strings.Repeat.md
@@ -0,0 +1,23 @@
+---
+title: strings.Repeat
+# linktitle:
+description: Returns INPUT repeated COUNT times.
+date: 2018-05-31
+publishdate: 2018-05-31
+lastmod: 2018-05-31
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings]
+signature: ["strings.Repeat COUNT INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+---
+
+```
+{{ strings.Repeat 3 "yo" }} → "yoyoyo"
+{{ "yo" | strings.Repeat 3 }} → "yoyoyo"
+```
diff --git a/docs/content/en/functions/strings.RuneCount.md b/docs/content/en/functions/strings.RuneCount.md
new file mode 100644
index 000000000..de335f862
--- /dev/null
+++ b/docs/content/en/functions/strings.RuneCount.md
@@ -0,0 +1,27 @@
+---
+title: strings.RuneCount
+description: Determines the number of runes in a string.
+date: 2018-06-01
+publishdate: 2018-06-01
+lastmod: 2018-06-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [counting, character count, length, rune length, rune count]
+signature: ["strings.RuneCount INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: ["len", "countrunes"]
+deprecated: false
+aliases: []
+---
+
+In contrast with `strings.CountRunes` function, which strips HTML and whitespace before counting runes, `strings.RuneCount` simply counts all the runes in a string. It relies on the Go [`utf8.RuneCountInString`] function.
+
+```
+{{ "Hello, 世界" | strings.RuneCount }}
+<!-- outputs a content length of 9 runes. -->
+```
+
+[`utf8.RuneCount`]: https://golang.org/pkg/unicode/utf8/#RuneCount
diff --git a/docs/content/en/functions/strings.TrimLeft.md b/docs/content/en/functions/strings.TrimLeft.md
new file mode 100644
index 000000000..2d71a1367
--- /dev/null
+++ b/docs/content/en/functions/strings.TrimLeft.md
@@ -0,0 +1,26 @@
+---
+title: strings.TrimLeft
+description: Returns a slice of a given string with all leading characters contained in the cutset removed.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings]
+signature: ["strings.TrimLeft CUTSET STRING"]
+workson: []
+hugoversion:
+relatedfuncs: [strings.TrimRight]
+deprecated: false
+aliases: []
+---
+
+Given the string `"abba"`, leading `"a"`'s can be removed a follows:
+
+ {{ strings.TrimLeft "a" "abba" }} → "bba"
+
+Numbers can be handled as well:
+
+ {{ strings.TrimLeft 12 1221341221 }} → "341221"
diff --git a/docs/content/en/functions/strings.TrimPrefix.md b/docs/content/en/functions/strings.TrimPrefix.md
new file mode 100644
index 000000000..a66bbe3db
--- /dev/null
+++ b/docs/content/en/functions/strings.TrimPrefix.md
@@ -0,0 +1,24 @@
+---
+title: strings.TrimPrefix
+description: Returns a given string s without the provided leading prefix string. If s doesn't start with prefix, s is returned unchanged.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings]
+signature: ["strings.TrimPrefix PREFIX STRING"]
+workson: []
+hugoversion:
+relatedfuncs: [strings.TrimSuffix]
+deprecated: false
+aliases: []
+---
+
+Given the string `"aabbaa"`, the specified prefix is only removed if `"aabbaa"` starts with it:
+
+ {{ strings.TrimPrefix "a" "aabbaa" }} → "abbaa"
+ {{ strings.TrimPrefix "aa" "aabbaa" }} → "bbaa"
+ {{ strings.TrimPrefix "aaa" "aabbaa" }} → "aabbaa"
diff --git a/docs/content/en/functions/strings.TrimRight.md b/docs/content/en/functions/strings.TrimRight.md
new file mode 100644
index 000000000..05084a4c0
--- /dev/null
+++ b/docs/content/en/functions/strings.TrimRight.md
@@ -0,0 +1,26 @@
+---
+title: strings.TrimRight
+description: Returns a slice of a given string with all trailing characters contained in the cutset removed.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings]
+signature: ["strings.TrimRight CUTSET STRING"]
+workson: []
+hugoversion:
+relatedfuncs: [strings.TrimRight]
+deprecated: false
+aliases: []
+---
+
+Given the string `"abba"`, trailing `"a"`'s can be removed a follows:
+
+ {{ strings.TrimRight "a" "abba" }} → "abb"
+
+Numbers can be handled as well:
+
+ {{ strings.TrimRight 12 1221341221 }} → "122134"
diff --git a/docs/content/en/functions/strings.TrimSuffix.md b/docs/content/en/functions/strings.TrimSuffix.md
new file mode 100644
index 000000000..916038054
--- /dev/null
+++ b/docs/content/en/functions/strings.TrimSuffix.md
@@ -0,0 +1,24 @@
+---
+title: strings.TrimSuffix
+description: Returns a given string s without the provided trailing suffix string. If s doesn't end with suffix, s is returned unchanged.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings]
+signature: ["strings.TrimSuffix SUFFIX STRING"]
+workson: []
+hugoversion:
+relatedfuncs: [strings.TrimPrefix]
+deprecated: false
+aliases: []
+---
+
+Given the string `"aabbaa"`, the specified suffix is only removed if `"aabbaa"` ends with it:
+
+ {{ strings.TrimSuffix "a" "aabbaa" }} → "aabba"
+ {{ strings.TrimSuffix "aa" "aabbaa" }} → "aabb"
+ {{ strings.TrimSuffix "aaa" "aabbaa" }} → "aabbaa"
diff --git a/docs/content/en/functions/substr.md b/docs/content/en/functions/substr.md
new file mode 100644
index 000000000..31f733e0b
--- /dev/null
+++ b/docs/content/en/functions/substr.md
@@ -0,0 +1,45 @@
+---
+title: substr
+# linktitle:
+description: Extracts parts of a string from a specified character's position and returns the specified number of characters.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings]
+aliases: []
+signature: ["substr STRING START [LENGTH]"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+---
+
+It normally takes two parameters: `start` and `length`. It can also take one parameter: `start`, i.e. `length` is omitted, in which case the substring starting from start until the end of the string will be returned.
+
+To extract characters from the end of the string, use a negative start number.
+
+If `length` is given and is negative, that number of characters will be omitted from the end of string.
+
+```
+{{ substr "abcdef" 0 }} → "abcdef"
+{{ substr "abcdef" 1 }} → "bcdef"
+
+{{ substr "abcdef" 0 1 }} → "a"
+{{ substr "abcdef" 1 1 }} → "b"
+
+{{ substr "abcdef" 0 -1 }} → "abcde"
+{{ substr "abcdef" 1 -1 }} → "bcde"
+
+{{ substr "abcdef" -1 }} → "f"
+{{ substr "abcdef" -2 }} → "ef"
+
+{{ substr "abcdef" -1 1 }} → "f"
+{{ substr "abcdef" -2 1 }} → "e"
+
+{{ substr "abcdef" -3 -1 }} → "de"
+{{ substr "abcdef" -3 -2 }} → "d"
+```
diff --git a/docs/content/en/functions/symdiff.md b/docs/content/en/functions/symdiff.md
new file mode 100644
index 000000000..b47bd26c0
--- /dev/null
+++ b/docs/content/en/functions/symdiff.md
@@ -0,0 +1,28 @@
+---
+title: "symdiff"
+description: "`collections.SymDiff` (alias `symdiff`) returns the symmetric difference of two collections."
+date: 2018-11-07
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [collections,intersect,union, complement]
+signature: ["COLLECTION | symdiff COLLECTION" ]
+hugoversion: "0.51"
+aliases: []
+---
+
+Example:
+
+```go-html-template
+{{ slice 1 2 3 | symdiff (slice 3 4) }}
+```
+
+The above will print `[1 2 4]`.
+
+Also see https://en.wikipedia.org/wiki/Symmetric_difference
+
+
+
+
+
diff --git a/docs/content/en/functions/templates.Exists.md b/docs/content/en/functions/templates.Exists.md
new file mode 100644
index 000000000..36fa0ea60
--- /dev/null
+++ b/docs/content/en/functions/templates.Exists.md
@@ -0,0 +1,36 @@
+---
+title: templates.Exists
+linktitle: ""
+description: "Checks whether a template file exists under the given path relative to the `layouts` directory."
+date: 2018-11-01
+publishdate: 2018-11-01
+lastmod: 2018-11-01
+categories: [functions]
+tags: []
+menu:
+ docs:
+ parent: "functions"
+ns: ""
+keywords: ["templates", "template", "layouts"]
+signature: ["templates.Exists PATH"]
+workson: []
+hugoversion: "0.46"
+aliases: []
+relatedfuncs: []
+toc: false
+deprecated: false
+---
+
+A template file is any file living below the `layouts` directories of either the project or any of its theme components including partials and shortcodes.
+
+The function is particularly handy with dynamic path. The following example ensures the build will not break on a `.Type` missing its dedicated `header` partial.
+
+```go-html-template
+{{ $partialPath := printf "headers/%s.html" .Type }}
+{{ if templates.Exists ( printf "partials/%s" $partialPath ) }}
+ {{ partial $partialPath . }}
+{{ else }}
+ {{ partial "headers/default.html" . }}
+{{ end }}
+
+```
diff --git a/docs/content/en/functions/time.md b/docs/content/en/functions/time.md
new file mode 100644
index 000000000..681c85fd9
--- /dev/null
+++ b/docs/content/en/functions/time.md
@@ -0,0 +1,62 @@
+---
+title: time
+linktitle:
+description: Converts a timestamp string into a `time.Time` structure.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [dates,time,location]
+signature: ["time INPUT [TIMEZONE]"]
+workson: []
+hugoversion: "v0.77.0"
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+
+`time` converts a timestamp string with an optional default location into a [`time.Time`](https://godoc.org/time#Time) structure so you can access its fields:
+
+```
+{{ time "2016-05-28" }} → "2016-05-28T00:00:00Z"
+{{ (time "2016-05-28").YearDay }} → 149
+{{ mul 1000 (time "2016-05-28T10:30:00.00+10:00").Unix }} → 1464395400000, or Unix time in milliseconds
+```
+
+## Using Locations
+
+The optional `TIMEZONE` parameter is a string that sets a default time zone (or more specific, the location, which represents the collection of time offsets in a geographical area) that is associated with the specified time value. If the time value has an explicit timezone or offset specified, it will take precedence over the `TIMEZONE` parameter.
+
+The list of valid locations may be system dependent, but should include `UTC`, `Local`, or any location in the [IANA Time Zone database](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).
+
+If no `TIMEZONE` is set, the `timeZone` from site configuration will be used.
+
+```
+{{ time "2020-10-20" }} → 2020-10-20 00:00:00 +0000 UTC
+{{ time "2020-10-20" "America/Los_Angeles" }} → 2020-10-20 00:00:00 -0700 PDT
+{{ time "2020-01-20" "America/Los_Angeles" }} → 2020-01-20 00:00:00 -0800 PST
+```
+
+## Example: Using `time` to get Month Index
+
+The following example takes a UNIX timestamp---set as `utimestamp: "1489276800"` in a content's front matter---converts the timestamp (string) to an integer using the [`int` function][int], and then uses [`printf`][] to convert the `Month` property of `time` into an index.
+
+The following example may be useful when setting up [multilingual sites][multilingual]:
+
+{{< code file="unix-to-month-integer.html" >}}
+{{$time := time (int .Params.addDate)}}
+=> $time = 1489276800
+{{$time.Month}}
+=> "March"
+{{$monthindex := printf "%d" $time.Month }}
+=> $monthindex = 3
+{{< /code >}}
+
+
+[int]: /functions/int/
+[multilingual]: /content-management/multilingual/
+[`printf`]: /functions/printf/
diff --git a/docs/content/en/functions/title.md b/docs/content/en/functions/title.md
new file mode 100644
index 000000000..201e4c140
--- /dev/null
+++ b/docs/content/en/functions/title.md
@@ -0,0 +1,36 @@
+---
+title: title
+# linktitle:
+description: Converts all characters in the provided string to title case.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings]
+signature: ["title INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+---
+
+
+```
+{{title "BatMan"}}` → "Batman"
+```
+
+Can be combined in pipes. In the following snippet, the link text is cleaned up using `humanize` to remove dashes and `title` to convert the value of `$name` to Initial Caps.
+
+```
+{{ range $name, $items := .Site.Taxonomies.categories }}
+ <li><a href="{{ printf "%s/%s" "categories" ($name | urlize | lower) | absURL }}">{{ $name | humanize | title }} ({{ len $items }})</a></li>
+{{ end }}
+```
+
+## Configure Title Case
+
+The default is AP Stylebook, but you can [configure it](/getting-started/configuration/#configure-title-case).
diff --git a/docs/content/en/functions/transform.Unmarshal.md b/docs/content/en/functions/transform.Unmarshal.md
new file mode 100644
index 000000000..9b380dc57
--- /dev/null
+++ b/docs/content/en/functions/transform.Unmarshal.md
@@ -0,0 +1,76 @@
+---
+title: "transform.Unmarshal"
+description: "`transform.Unmarshal` (alias `unmarshal`) parses the input and converts it into a map or an array. Supported formats are JSON, TOML, YAML, XML and CSV."
+date: 2018-12-23
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: []
+signature: ["RESOURCE or STRING | transform.Unmarshal [OPTIONS]"]
+hugoversion: "0.53"
+aliases: []
+---
+
+The function accepts either a `Resource` created in [Hugo Pipes](/hugo-pipes/) or via [Page Bundles](/content-management/page-bundles/), or simply a string. The two examples below will produce the same map:
+
+```go-html-template
+{{ $greetings := "hello = \"Hello Hugo\"" | transform.Unmarshal }}`
+```
+
+```go-html-template
+{{ $greetings := "hello = \"Hello Hugo\"" | resources.FromString "data/greetings.toml" | transform.Unmarshal }}
+```
+
+In both the above examples, you get a map you can work with:
+
+```go-html-template
+{{ $greetings.hello }}
+```
+
+The above prints `Hello Hugo`.
+
+## CSV Options
+
+Unmarshal with CSV as input has some options you can set:
+
+delimiter
+: The delimiter used, default is `,`.
+
+comment
+: The comment character used in the CSV. If set, lines beginning with the comment character without preceding whitespace are ignored.:
+
+Example:
+
+```go-html-template
+{{ $csv := "a;b;c" | transform.Unmarshal (dict "delimiter" ";") }}
+```
+
+## XML data
+
+As a convenience, Hugo allows you to access XML data in the same way that you access JSON, TOML, and YAML: you do not need to specify the root node when accessing the data.
+
+To get the contents of `<title>` in the document below, you use `{{ .message.title }}`:
+
+```
+<root>
+ <message>
+ <title>Hugo rocks!</title>
+ <description>Thanks for using Hugo</description>
+ </message>
+</root>
+```
+
+The following example lists the items of an RSS feed:
+
+```
+{{ with resources.Get "https://example.com/rss.xml" | transform.Unmarshal }}
+ {{ range .channel.item }}
+ <strong>{{ .title | plainify | htmlUnescape }}</strong><br />
+ <p>{{ .description | plainify | htmlUnescape }}</p>
+ {{ $link := .link | plainify | htmlUnescape }}
+ <a href="{{ $link }}">{{ $link }}</a><br />
+ <hr>
+ {{ end }}
+{{ end }}
+```
diff --git a/docs/content/en/functions/trim.md b/docs/content/en/functions/trim.md
new file mode 100644
index 000000000..7945ffef9
--- /dev/null
+++ b/docs/content/en/functions/trim.md
@@ -0,0 +1,41 @@
+---
+title: trim
+# linktitle:
+description: Returns a slice of a passed string with all leading and trailing characters from cutset removed.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings]
+signature: ["trim INPUT CUTSET"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+---
+
+```
+{{ trim "++Batman--" "+-" }} → "Batman"
+```
+
+`trim` *requires* the second argument, which tells the function specifically what to remove from the first argument. There is no default value for the second argument, so **the following usage will not work**:
+
+```
+{{ trim .Inner}}
+```
+
+Instead, the following example tells `trim` to remove extra new lines from the content contained in the [shortcode `.Inner` variable][shortcodevars]:
+
+```
+{{ trim .Inner "\n" }}
+```
+
+{{% note %}}
+Go templates also provide a simple [method for trimming whitespace](/templates/introduction/#whitespace) from either side of a Go tag by including a hyphen (`-`).
+{{% /note %}}
+
+
+[shortcodevars]: /variables/shortcodes/
diff --git a/docs/content/en/functions/truncate.md b/docs/content/en/functions/truncate.md
new file mode 100644
index 000000000..8d0dd36b1
--- /dev/null
+++ b/docs/content/en/functions/truncate.md
@@ -0,0 +1,28 @@
+---
+title: truncate
+# linktitle: truncate
+description: Truncates a text to a max length without cutting words or leaving unclosed HTML tags.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [strings]
+signature: ["truncate SIZE INPUT", "truncate SIZE ELLIPSIS INPUT"]
+workson: []
+hugoversion: 19
+relatedfuncs: []
+deprecated: false
+---
+
+Since Go templates are HTML-aware, `truncate` will intelligently handle normal strings vs HTML strings:
+
+```
+{{ "<em>Keep my HTML</em>" | safeHTML | truncate 10 }}` → <em>Keep my …</em>`
+```
+
+{{% note %}}
+If you have a raw string that contains HTML tags you want to remain treated as HTML, you will need to convert the string to HTML using the [`safeHTML` template function](/functions/safehtml) before sending the value to truncate. Otherwise, the HTML tags will be escaped when passed through the `truncate` function.
+{{% /note %}}
diff --git a/docs/content/en/functions/union.md b/docs/content/en/functions/union.md
new file mode 100644
index 000000000..bf2a302d4
--- /dev/null
+++ b/docs/content/en/functions/union.md
@@ -0,0 +1,49 @@
+---
+title: union
+# linktitle: union
+description: Given two arrays or slices, returns a new array that contains the elements or objects that belong to either or both arrays/slices.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-03-12
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [filtering,lists]
+signature: ["union SET1 SET2"]
+workson: []
+hugoversion: 0.20
+relatedfuncs: [intersect,where]
+deprecated: false
+aliases: []
+---
+
+Given two arrays (or slices) A and B, this function will return a new array that contains the elements or objects that belong to either A or to B or to both. The elements supported are strings, integers, and floats (only float64).
+
+```
+{{ union (slice 1 2 3) (slice 3 4 5) }}
+<!-- returns [1 2 3 4 5] -->
+
+{{ union (slice 1 2 3) nil }}
+<!-- returns [1 2 3] -->
+
+{{ union nil (slice 1 2 3) }}
+<!-- returns [1 2 3] -->
+
+{{ union nil nil }}
+<!-- returns an error because both arrays/slices have to be of the same type -->
+```
+
+## OR filter in where query
+
+This is also very useful to use as `OR` filters when combined with where:
+
+```
+{{ $pages := where .Site.RegularPages "Type" "not in" (slice "page" "about") }}
+{{ $pages := $pages | union (where .Site.RegularPages "Params.pinned" true) }}
+{{ $pages := $pages | intersect (where .Site.RegularPages "Params.images" "!=" nil) }}
+```
+
+The above fetches regular pages not of `page` or `about` type unless they are pinned. And finally, we exclude all pages with no `images` set in Page params.
+
+See [intersect](/functions/intersect) for `AND`.
diff --git a/docs/content/en/functions/uniq.md b/docs/content/en/functions/uniq.md
new file mode 100644
index 000000000..0a720f88f
--- /dev/null
+++ b/docs/content/en/functions/uniq.md
@@ -0,0 +1,26 @@
+---
+title: uniq
+linktitle: uniq
+description: Takes in a slice or array and returns a slice with subsequent duplicate elements removed.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [multilingual,i18n,urls]
+signature: ["uniq SET"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+aliases: []
+needsexamples: false
+---
+
+```
+{{ uniq (slice 1 2 3 2) }}
+{{ slice 1 2 3 2 | uniq }}
+<!-- both return [1 2 3] -->
+```
diff --git a/docs/content/en/functions/unix.md b/docs/content/en/functions/unix.md
new file mode 100644
index 000000000..98fcc74a4
--- /dev/null
+++ b/docs/content/en/functions/unix.md
@@ -0,0 +1,31 @@
+---
+title: .Unix
+description: Converts a time.Time value to the number of seconds elapsed since the Unix epoch, excluding leap seconds. The Unix epoch is 00:00:00&nbsp;UTC on 1 January 1970.
+date: 2017-02-01
+keywords: [dates,time]
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+signature: [".Unix",".UnixMilli",".UnixMicro",".UnixNano"]
+relatedfuncs: [Format,dateFormat,now,time]
+---
+
+The `Milli`, `Micro`, and `Nano` variants return the number of milliseconds, microseconds, and nanoseconds (respectively) elapsed since the Unix epoch.
+
+```go-html-template
+.Date.Unix --> 1637259694
+.ExpiryDate.Unix --> 1672559999
+.Lastmod.Unix --> 1637361786
+.PublishDate.Unix --> 1637421261
+
+("1970-01-01T00:00:00-00:00" | time.AsTime).Unix --> 0
+("1970-01-01T00:00:42-00:00" | time.AsTime).Unix --> 42
+("1970-04-11T01:48:29-08:00" | time.AsTime).Unix --> 8675309
+("2026-05-02T20:09:31-07:00" | time.AsTime).Unix --> 1777777771
+
+now.Unix --> 1637447841
+now.UnixMilli --> 1637447841347
+now.UnixMicro --> 1637447841347378
+now.UnixNano --> 1637447841347378799
+```
diff --git a/docs/content/en/functions/upper.md b/docs/content/en/functions/upper.md
new file mode 100644
index 000000000..0762541dd
--- /dev/null
+++ b/docs/content/en/functions/upper.md
@@ -0,0 +1,28 @@
+---
+title: upper
+# linktitle: upper
+description: Converts all characters in a string to uppercase
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+keywords: []
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+toc:
+signature: ["upper INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+draft: false
+aliases: []
+---
+
+Note that `upper` can be applied in your templates in more than one way:
+
+```
+{{ upper "BatMan" }} → "BATMAN"
+{{ "BatMan" | upper }} → "BATMAN"
+```
diff --git a/docs/content/en/functions/urlize.md b/docs/content/en/functions/urlize.md
new file mode 100644
index 000000000..82a88b9d7
--- /dev/null
+++ b/docs/content/en/functions/urlize.md
@@ -0,0 +1,73 @@
+---
+title: urlize
+# linktitle: urlize
+description: Takes a string, sanitizes it for usage in URLs, and converts spaces to hyphens.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [urls,strings]
+signature: ["urlize INPUT"]
+hugoversion:
+deprecated: false
+workson: []
+relatedfuncs: []
+---
+
+The following examples pull from a content file with the following front matter:
+
+{{< code file="content/blog/greatest-city.md" copy="false">}}
++++
+title = "The World's Greatest City"
+location = "Chicago IL"
+tags = ["pizza","beer","hot dogs"]
++++
+{{< /code >}}
+
+The following might be used as a partial within a [single page template][singletemplate]:
+
+{{< code file="layouts/partials/content-header.html" download="content-header.html" >}}
+<header>
+ <h1>{{.Title}}</h1>
+ {{ with .Params.location }}
+ <div><a href="/locations/{{ . | urlize}}">{{.}}</a></div>
+ {{ end }}
+ <!-- Creates a list of tags for the content and links to each of their pages -->
+ {{ with .Params.tags }}
+ <ul>
+ {{range .}}
+ <li>
+ <a href="/tags/{{ . | urlize }}">{{ . }}</a>
+ </li>
+ {{end}}
+ </ul>
+ {{ end }}
+</header>
+{{< /code >}}
+
+The preceding partial would then output to the rendered page as follows, assuming the page is being built with Hugo's default pretty URLs.
+
+{{< output file="/blog/greatest-city/index.html" >}}
+<header>
+ <h1>The World&#39;s Greatest City</h1>
+ <div><a href="/locations/chicago-il">Chicago IL</a></div>
+ <ul>
+ <li>
+ <a href="/tags/pizza">pizza</a>
+ </li>
+ <li>
+ <a href="/tags/beer">beer</a>
+ </li>
+ <li>
+ <a href="/tags/hot-dogs">hot dogs</a>
+ </li>
+ </ul>
+</header>
+{{< /output >}}
+
+
+
+[singletemplate]: /templates/single-page-templates/
diff --git a/docs/content/en/functions/urls.Parse.md b/docs/content/en/functions/urls.Parse.md
new file mode 100644
index 000000000..7709ad8c2
--- /dev/null
+++ b/docs/content/en/functions/urls.Parse.md
@@ -0,0 +1,31 @@
+---
+title: urls.Parse
+description: Parse parses a given url, which may be relative or absolute, into a URL structure.
+date: 2017-09-25
+publishdate: 2017-09-25
+lastmod: 2017-09-25
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [urls]
+signature: ["urls.Parse URL"]
+workson: []
+hugoversion:
+deprecated: false
+aliases: []
+---
+
+`urls.Parse` takes a url as input
+
+
+```
+{{ $url := urls.Parse "http://www.gohugo.io" }}
+```
+
+and returns a [URL](https://godoc.org/net/url#URL) structure. The struct fields are accessed via the `.` notation:
+
+```
+{{ $url.Scheme }} → "http"
+{{ $url.Host }} → "www.gohugo.io"
+```
diff --git a/docs/content/en/functions/where.md b/docs/content/en/functions/where.md
new file mode 100644
index 000000000..f712cd984
--- /dev/null
+++ b/docs/content/en/functions/where.md
@@ -0,0 +1,176 @@
+---
+title: where
+# linktitle: where
+description: Filters an array to only the elements containing a matching value for a given field.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [filtering]
+signature: ["where COLLECTION KEY [OPERATOR] MATCH"]
+workson: [lists,taxonomies,terms,groups]
+hugoversion:
+relatedfuncs: [intersect,first,after,last]
+deprecated: false
+toc: true
+needsexample: true
+---
+
+`where` filters an array to only the elements containing a matching
+value for a given field.
+
+It works in a similar manner to the [`where` keyword in
+SQL][wherekeyword].
+
+```go-html-template
+{{ range where .Pages "Section" "foo" }}
+ {{ .Content }}
+{{ end }}
+```
+
+It can be used by dot-chaining the second argument to refer to a nested element of a value.
+
+```
++++
+series: golang
++++
+```
+
+```go-html-template
+{{ range where .Site.Pages "Params.series" "golang" }}
+ {{ .Content }}
+{{ end }}
+```
+
+It can also be used with the logical operators `!=`, `>=`, `in`, etc. Without an operator, `where` compares a given field with a matching value equivalent to `=`.
+
+```go-html-template
+{{ range where .Pages "Section" "!=" "foo" }}
+ {{ .Content }}
+{{ end }}
+```
+
+The following logical operators are available with `where`:
+
+`=`, `==`, `eq`
+: `true` if a given field value equals a matching value
+
+`!=`, `<>`, `ne`
+: `true` if a given field value doesn't equal a matching value
+
+`>=`, `ge`
+: `true` if a given field value is greater than or equal to a matching value
+
+`>`, `gt`
+: `true` if a given field value is greater than a matching value
+
+`<=`, `le`
+: `true` if a given field value is lesser than or equal to a matching value
+
+`<`, `lt`
+: `true` if a given field value is lesser than a matching value
+
+`in`
+: `true` if a given field value is included in a matching value; a matching value must be an array or a slice
+
+`not in`
+: `true` if a given field value isn't included in a matching value; a matching value must be an array or a slice
+
+`intersect`
+: `true` if a given field value that is a slice/array of strings or integers contains elements in common with the matching value; it follows the same rules as the [`intersect` function][intersect].
+
+## Use `where` with `Booleans`
+When using booleans you should not put quotation marks.
+```go-html-template
+{{range where .Pages "Draft" true}}
+ <p>{{.Title}}</p>
+{{end}}
+```
+
+
+## Use `where` with `intersect`
+
+```go-html-template
+{{ range where .Site.Pages "Params.tags" "intersect" .Params.tags }}
+ {{ if ne .Permalink $.Permalink }}
+ {{ .Render "summary" }}
+ {{ end }}
+{{ end }}
+```
+
+You can also put the returned value of the `where` clauses into a variable:
+
+{{< code file="where-intersect-variables.html" >}}
+{{ $v1 := where .Site.Pages "Params.a" "v1" }}
+{{ $v2 := where .Site.Pages "Params.b" "v2" }}
+{{ $filtered := $v1 | intersect $v2 }}
+{{ range $filtered }}
+{{ end }}
+{{< /code >}}
+
+## Use `where` with `first`
+
+Using `first` and `where` together can be very
+powerful. Below snippet gets a list of posts only from [**main
+sections**](#mainsections), sorts it using the [default
+ordering](/templates/lists/) for lists (i.e., `weight => date`), and
+then ranges through only the first 5 posts in that list:
+
+{{< code file="first-and-where-together.html" >}}
+{{ range first 5 (where site.RegularPages "Type" "in" site.Params.mainSections) }}
+ {{ .Content }}
+{{ end }}
+{{< /code >}}
+
+## Nest `where` Clauses
+
+You can also nest `where` clauses to drill down on lists of content by more than one parameter. The following first grabs all pages in the "blog" section and then ranges through the result of the first `where` clause and finds all pages that are *not* featured:
+
+```go-html-template
+{{ range where (where .Pages "Section" "blog" ) "Params.featured" "!=" true }}
+```
+
+## Unset Fields
+
+Filtering only works for set fields. To check whether a field is set or exists, you can use the operand `nil`.
+
+This can be useful to filter a small amount of pages from a large pool. Instead of setting a field on all pages, you can set that field on required pages only.
+
+Only the following operators are available for `nil`
+
+* `=`, `==`, `eq`: True if the given field is not set.
+* `!=`, `<>`, `ne`: True if the given field is set.
+
+```go-html-template
+{{ range where .Pages "Params.specialpost" "!=" nil }}
+ {{ .Content }}
+{{ end }}
+```
+
+## Portable `where` filters -- `site.Params.mainSections` {#mainsections}
+
+**This is especially important for themes.**
+
+To list the most relevant pages on the front page or similar, you
+should use the `site.Params.mainSections` list instead of comparing
+section names to hard-coded values like `"posts"` or `"post"`.
+
+```go-html-template
+{{ $pages := where site.RegularPages "Type" "in" site.Params.mainSections }}
+```
+
+If the user has not set this config parameter in their site config, it
+will default to the _section with the most pages_.
+
+The user can override the default:
+
+{{< code-toggle file="config" >}}
+[params]
+ mainSections = ["blog", "docs"]
+{{< /code-toggle >}}
+
+[intersect]: /functions/intersect/
+[wherekeyword]: https://www.techonthenet.com/sql/where.php
diff --git a/docs/content/en/functions/with.md b/docs/content/en/functions/with.md
new file mode 100644
index 000000000..ae643caf7
--- /dev/null
+++ b/docs/content/en/functions/with.md
@@ -0,0 +1,34 @@
+---
+title: with
+# linktitle: with
+description: Rebinds the context (`.`) within its scope and skips the block if the variable is absent or empty.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-03-12
+categories: [functions]
+menu:
+ docs:
+ parent: "functions"
+keywords: [conditionals]
+signature: ["with INPUT"]
+workson: []
+hugoversion:
+relatedfuncs: []
+deprecated: false
+---
+
+An alternative way of writing an `if` statement and then referencing the same value is to use `with` instead. `with` rebinds the context (`.`) within its scope and skips the block if the variable is absent, unset or empty.
+
+The set of *empty* values is defined by [the Go templates package](https://golang.org/pkg/text/template/). Empty values include `false`, the number zero, and the empty string.
+
+If you want to render a block if an index or key is present in a slice, array, channel or map, regardless of whether the value is empty, you should use [`isset`](/functions/isset) instead.
+
+The following example checks for a [user-defined site variable](/variables/site/) called `twitteruser`. If the key-value is not set, the following will render nothing:
+
+{{< code file="layouts/partials/twitter.html" >}}
+{{with .Site.Params.twitteruser}}<span class="twitter">
+<a href="https://twitter.com/{{.}}" rel="author">
+<img src="/images/twitter.png" width="48" height="48" title="Twitter: {{.}}"
+ alt="Twitter"></a>
+</span>{{end}}
+{{< /code >}}
diff --git a/docs/content/en/getting-started/_index.md b/docs/content/en/getting-started/_index.md
new file mode 100644
index 000000000..1615bdd91
--- /dev/null
+++ b/docs/content/en/getting-started/_index.md
@@ -0,0 +1,24 @@
+---
+title: Get Started
+linktitle: Get Started Overview
+description: Quick start and guides for installing Hugo on your preferred operating system.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [getting started]
+keywords: [usage,docs]
+menu:
+ docs:
+ parent: "getting-started"
+ weight: 1
+weight: 0001 #rem
+draft: false
+aliases: [/overview/introduction/]
+toc: false
+---
+
+If this is your first time using Hugo and you've [already installed Hugo on your machine][installed], we recommend the [quick start][]. You can also use [external learning resources][] to learn Hugo.
+
+[installed]: /getting-started/installing/
+[quick start]: /getting-started/quick-start/
+[external learning resources]: /getting-started/external-learning-resources/
diff --git a/docs/content/en/getting-started/configuration-markup.md b/docs/content/en/getting-started/configuration-markup.md
new file mode 100644
index 000000000..e19bbe47f
--- /dev/null
+++ b/docs/content/en/getting-started/configuration-markup.md
@@ -0,0 +1,237 @@
+---
+title: Configure Markup
+description: How to handle Markdown and other markup related configuration.
+date: 2019-11-15
+categories: [getting started,fundamentals]
+keywords: [configuration,highlighting]
+weight: 65
+sections_weight: 65
+slug: configuration-markup
+toc: true
+---
+
+## Configure Markup
+
+{{< new-in "0.60.0" >}}
+
+See [Goldmark](#goldmark) for settings related to the default Markdown handler in Hugo.
+
+Below are all markup related configuration in Hugo with their default settings:
+
+{{< code-toggle config="markup" />}}
+
+**See each section below for details.**
+
+### Goldmark
+
+[Goldmark](https://github.com/yuin/goldmark/) is from Hugo 0.60 the default library used for Markdown. It's fast, it's [CommonMark](https://spec.commonmark.org/0.29/) compliant and it's very flexible. Note that the feature set of Goldmark vs Blackfriday isn't the same; you gain a lot but also lose some, but we will work to bridge any gap in the upcoming Hugo versions.
+
+This is the default configuration:
+
+{{< code-toggle config="markup.goldmark" />}}
+
+For details on the extensions, refer to [this section](https://github.com/yuin/goldmark/#built-in-extensions) of the Goldmark documentation
+
+Some settings explained:
+
+unsafe
+: By default, Goldmark does not render raw HTMLs and potentially dangerous links. If you have lots of inline HTML and/or JavaScript, you may need to turn this on.
+
+typographer
+: This extension substitutes punctuations with typographic entities like [smartypants](https://daringfireball.net/projects/smartypants/).
+
+attribute
+: Enable custom attribute support for titles and blocks by adding attribute lists inside single curly brackets (`{.myclass class="class1 class2" }`) and placing it _after the Markdown element it decorates_, on the same line for titles and on a new line directly below for blocks.
+
+{{< new-in "0.81.0" >}} In Hugo 0.81.0 we added support for adding attributes (e.g. CSS classes) to Markdown blocks, e.g. tables, lists, paragraphs etc.
+
+A blockquote with a CSS class:
+
+```md
+> foo
+> bar
+{.myclass}
+```
+
+There are some current limitations: For tables you can currently only apply it to the full table, and for lists the `ul`/`ol`-nodes only, e.g.:
+
+```md
+* Fruit
+ * Apple
+ * Orange
+ * Banana
+ {.fruits}
+* Dairy
+ * Milk
+ * Cheese
+ {.dairies}
+{.list}
+```
+
+Note that attributes in [code fences](/content-management/syntax-highlighting/#highlighting-in-code-fences) must come after the opening tag, with any other highlighting processing instruction, e.g.:
+
+````
+```go {.myclass linenos=table,hl_lines=[8,"15-17"],linenostart=199}
+// ... code
+```
+````
+
+autoHeadingIDType ("github") {{< new-in "0.62.2" >}}
+: The strategy used for creating auto IDs (anchor names). Available types are `github`, `github-ascii` and `blackfriday`. `github` produces GitHub-compatible IDs, `github-ascii` will drop any non-Ascii characters after accent normalization, and `blackfriday` will make the IDs work as with [Blackfriday](#blackfriday), the default Markdown engine before Hugo 0.60. Note that if Goldmark is your default Markdown engine, this is also the strategy used in the [anchorize](/functions/anchorize/) template func.
+
+### Blackfriday
+
+
+[Blackfriday](https://github.com/russross/blackfriday) was Hugo's default Markdown rendering engine, now replaced with Goldmark. But you can still use it: Just set `defaultMarkdownHandler` to `blackfriday` in your top level `markup` config.
+
+This is the default config:
+
+{{< code-toggle config="markup.blackFriday" />}}
+
+### Highlight
+
+This is the default `highlight` configuration. Note that some of these settings can be set per code block, see [Syntax Highlighting](/content-management/syntax-highlighting/).
+
+{{< code-toggle config="markup.highlight" />}}
+
+For `style`, see these galleries:
+
+* [Short snippets](https://xyproto.github.io/splash/docs/all.html)
+* [Long snippets](https://xyproto.github.io/splash/docs/longer/all.html)
+
+For CSS, see [Generate Syntax Highlighter CSS](/content-management/syntax-highlighting/#generate-syntax-highlighter-css).
+
+### Table Of Contents
+
+{{< code-toggle config="markup.tableOfContents" />}}
+
+These settings only works for the Goldmark renderer:
+
+startLevel
+: The heading level, values starting at 1 (`h1`), to start render the table of contents.
+
+endLevel
+: The heading level, inclusive, to stop render the table of contents.
+
+ordered
+: Whether or not to generate an ordered list instead of an unordered list.
+
+
+## Markdown Render Hooks
+
+{{< new-in "0.62.0" >}}
+
+Note that this is only supported with the [Goldmark](#goldmark) renderer.
+
+Render Hooks allow custom templates to override markdown rendering functionality. You can do this by creating templates with base names `render-{feature}` in `layouts/_default/_markup`.
+
+You can also create type/section specific hooks in `layouts/[type/section]/_markup`, e.g.: `layouts/blog/_markup`.{{< new-in "0.71.0" >}}
+
+The features currently supported are:
+
+* `image`
+* `link`
+* `heading` {{< new-in "0.71.0" >}}
+
+You can define [Output-Format-](/templates/output-formats) and [language-](/content-management/multilingual/)specific templates if needed. Your `layouts` folder may look like this:
+
+```bash
+layouts
+└── _default
+ └── _markup
+ ├── render-image.html
+ ├── render-image.rss.xml
+ └── render-link.html
+```
+
+Some use cases for the above:
+
+* Resolve link references using `.GetPage`. This would make links portable as you could translate `./my-post.md` (and similar constructs that would work on GitHub) into `/blog/2019/01/01/my-post/` etc.
+* Add `target=_blank` to external links.
+* Resolve and [process](/content-management/image-processing/) images.
+* Add [header links](https://remysharp.com/2014/08/08/automatic-permalinks-for-blog-posts).
+
+### Render Hook Templates
+
+The `render-link` and `render-image` templates will receive this context:
+
+Page
+: The [Page](/variables/page/) being rendered.
+
+Destination
+: The URL.
+
+Title
+: The title attribute.
+
+Text
+: The rendered (HTML) link text.
+
+PlainText
+: The plain variant of the above.
+
+The `render-heading` template will receive this context:
+
+Page
+: The [Page](/variables/page/) being rendered.
+
+Level
+: The header level (1--6)
+
+Anchor
+: An auto-generated html id unique to the header within the page
+
+Text
+: The rendered (HTML) text.
+
+PlainText
+: The plain variant of the above.
+
+Attributes (map) {{< new-in "0.82.0" >}}
+: A map of attributes (e.g. `id`, `class`)
+
+#### Link with title Markdown example:
+
+```md
+[Text](https://www.gohugo.io "Title")
+```
+
+Here is a code example for how the render-link.html template could look:
+
+{{< code file="layouts/_default/_markup/render-link.html" >}}
+<a href="{{ .Destination | safeURL }}"{{ with .Title}} title="{{ . }}"{{ end }}{{ if strings.HasPrefix .Destination "http" }} target="_blank" rel="noopener"{{ end }}>{{ .Text | safeHTML }}</a>
+{{< /code >}}
+
+#### Image Markdown example:
+
+```md
+![Text](https://d33wubrfki0l68.cloudfront.net/c38c7334cc3f23585738e40334284fddcaf03d5e/2e17c/images/hugo-logo-wide.svg "Title")
+```
+
+Here is a code example for how the render-image.html template could look:
+
+{{< code file="layouts/_default/_markup/render-image.html" >}}
+<p class="md__image">
+ <img src="{{ .Destination | safeURL }}" alt="{{ .Text }}" {{ with .Title}} title="{{ . }}"{{ end }} />
+</p>
+{{< /code >}}
+
+#### Heading link example
+
+Given this template file
+
+{{< code file="layouts/_default/_markup/render-heading.html" >}}
+<h{{ .Level }} id="{{ .Anchor | safeURL }}">{{ .Text | safeHTML }} <a href="#{{ .Anchor | safeURL }}">¶</a></h{{ .Level }}>
+{{< /code >}}
+
+And this markdown
+
+```md
+### Section A
+```
+
+The rendered html will be
+
+```html
+<h3 id="section-a">Section A <a href="#section-a">¶</a></h3>
+```
diff --git a/docs/content/en/getting-started/configuration.md b/docs/content/en/getting-started/configuration.md
new file mode 100644
index 000000000..0f48c39e3
--- /dev/null
+++ b/docs/content/en/getting-started/configuration.md
@@ -0,0 +1,736 @@
+---
+title: Configure Hugo
+linktitle: Configuration
+description: How to configure your Hugo site.
+date: 2013-07-01
+publishdate: 2017-01-02
+lastmod: 2017-03-05
+categories: [getting started,fundamentals]
+keywords: [configuration,toml,yaml,json]
+menu:
+ docs:
+ parent: "getting-started"
+ weight: 60
+weight: 60
+sections_weight: 60
+draft: false
+aliases: [/overview/source-directory/,/overview/configuration/]
+toc: true
+---
+
+
+## Configuration File
+
+Hugo uses the `config.toml`, `config.yaml`, or `config.json` (if found in the
+site root) as the default site config file.
+
+The user can choose to override that default with one or more site config files
+using the command line `--config` switch.
+
+Examples:
+
+```
+hugo --config debugconfig.toml
+hugo --config a.toml,b.toml,c.toml
+```
+
+{{% note %}}
+Multiple site config files can be specified as a comma-separated string to the `--config` switch.
+{{% /note %}}
+
+{{< todo >}}TODO: distinct config.toml and others (the root object files){{< /todo >}}
+
+## Configuration Directory
+
+In addition to using a single site config file, one can use the `configDir` directory (default to `config/`) to maintain easier organization and environment specific settings.
+
+- Each file represents a configuration root object, such as `params.toml` for `[Params]`, `menu(s).toml` for `[Menu]`, `languages.toml` for `[Languages]` etc...
+- Each file's content must be top-level, for example:
+
+{{< code-toggle file="config" >}}
+[Params]
+ foo = "bar"
+{{< /code-toggle >}}
+
+{{< code-toggle file="params" >}}
+foo = "bar"
+{{< /code-toggle >}}
+
+- Each directory holds a group of files containing settings unique to an environment.
+- Files can be localized to become language specific.
+
+
+```
+├── config
+│ ├── _default
+│ │ ├── config.toml
+│ │ ├── languages.toml
+│ │ ├── menus.en.toml
+│ │ ├── menus.zh.toml
+│ │ └── params.toml
+│ ├── production
+│ │ ├── config.toml
+│ │ └── params.toml
+│ └── staging
+│ ├── config.toml
+│ └── params.toml
+```
+
+Considering the structure above, when running `hugo --environment staging`, Hugo will use every settings from `config/_default` and merge `staging`'s on top of those.
+{{% note %}}
+Default environments are __development__ with `hugo server` and __production__ with `hugo`.
+{{%/ note %}}
+
+## Merge Configuration from Themes
+
+{{< new-in "0.84.0" >}} The configuration merge described below was improved in Hugo 0.84.0 and made fully configurable. The big change/improvement was that we now, by default, do deep merging of `params` maps from themes.
+
+The configuration value for `_merge` can be one of:
+
+none
+: No merge.
+
+shallow
+: Only add values for new keys.
+
+deep
+: Add values for new keys, merge existing.
+
+Note that you don't need to be so verbose as in the default setup below; a `_merge` value higher up will be inherited if not set.
+
+{{< code-toggle config="mergeStrategy" skipHeader=true />}}
+
+## All Configuration Settings
+
+The following is the full list of Hugo-defined variables with their default
+value in parentheses. Users may choose to override those values in their site
+config file(s).
+
+### archetypeDir
+
+**Default value:** "archetypes"
+
+The directory where Hugo finds archetype files (content templates). {{% module-mounts-note %}}
+
+### assetDir
+
+**Default value:** "assets"
+
+The directory where Hugo finds asset files used in [Hugo Pipes](/hugo-pipes/). {{% module-mounts-note %}}
+
+### baseURL
+Hostname (and path) to the root, e.g. https://bep.is/
+
+### blackfriday
+See [Configure Blackfriday](/getting-started/configuration-markup#blackfriday)
+
+### build
+See [Configure Build](#configure-build)
+
+### buildDrafts (false)
+
+**Default value:** false
+
+Include drafts when building.
+
+### buildExpired
+
+**Default value:** false
+
+Include content already expired.
+
+### buildFuture
+
+**Default value:** false
+
+Include content with publishdate in the future.
+
+### caches
+See [Configure File Caches](#configure-file-caches)
+
+### cascade
+
+{{< new-in "0.86.0" >}}
+
+Pass down down default configuration values (front matter) to pages in the content tree. The options in site config is the same as in page front matter, see [Front Matter Cascade](/content-management/front-matter#front-matter-cascade).
+
+### canonifyURLs
+
+**Default value:** false
+
+Enable to turn relative URLs into absolute.
+
+### contentDir
+
+**Default value:** "content"
+
+The directory from where Hugo reads content files. {{% module-mounts-note %}}
+
+### copyright
+
+**Default value:** ""
+
+Copyright notice for your site, typically displayed in the footer.
+
+### dataDir
+
+**Default value:** "data"
+
+The directory from where Hugo reads data files. {{% module-mounts-note %}}
+
+### defaultContentLanguage
+
+**Default value:** "en"
+
+Content without language indicator will default to this language.
+
+### defaultContentLanguageInSubdir
+
+**Default value:** false
+
+Render the default content language in subdir, e.g. `content/en/`. The site root `/` will then redirect to `/en/`.
+
+### disableAliases
+
+**Default value:** false
+
+Will disable generation of alias redirects. Note that even if `disableAliases` is set, the aliases themselves are preserved on the page. The motivation with this is to be able to generate 301 redirects in an `.htaccess`, a Netlify `_redirects` file or similar using a custom output format.
+
+### disableHugoGeneratorInject
+
+**Default value:** false
+
+Hugo will, by default, inject a generator meta tag in the HTML head on the _home page only_. You can turn it off, but we would really appreciate if you don't, as this is a good way to watch Hugo's popularity on the rise.
+
+### disableKinds
+
+**Default value:** []
+
+Enable disabling of all pages of the specified *Kinds*. Allowed values in this list: `"page"`, `"home"`, `"section"`, `"taxonomy"`, `"term"`, `"RSS"`, `"sitemap"`, `"robotsTXT"`, `"404"`.
+
+### disableLiveReload
+
+**Default value:** false
+
+Disable automatic live reloading of browser window.
+
+### disablePathToLower
+
+**Default value:** false
+
+: Do not convert the url/path to lowercase.
+
+### enableEmoji
+
+**Default value:** false
+
+Enable Emoji emoticons support for page content; see the [Emoji Cheat Sheet](https://www.webpagefx.com/tools/emoji-cheat-sheet/).
+
+### enableGitInfo
+
+**Default value:** false
+
+Enable `.GitInfo` object for each page (if the Hugo site is versioned by Git). This will then update the `Lastmod` parameter for each page using the last git commit date for that content file.
+
+### enableInlineShortcodes
+
+**Default value:** false
+
+Enable inline shortcode support. See [Inline Shortcodes](/templates/shortcode-templates/#inline-shortcodes).
+
+### enableMissingTranslationPlaceholders
+
+**Default value:** false
+
+Show a placeholder instead of the default value or an empty string if a translation is missing.
+
+### enableRobotsTXT
+
+**Default value:** false
+
+Enable generation of `robots.txt` file.
+
+### frontmatter
+
+See [Front matter Configuration](#configure-front-matter).
+
+### footnoteAnchorPrefix
+
+**Default value:** ""
+
+Prefix for footnote anchors.
+
+### footnoteReturnLinkContents
+
+**Default value:** ""
+
+Text to display for footnote return links.
+
+### googleAnalytics
+
+**Default value:** ""
+
+Google Analytics tracking ID.
+
+### hasCJKLanguage
+
+**Default value:** false
+
+If true, auto-detect Chinese/Japanese/Korean Languages in the content. This will make `.Summary` and `.WordCount` behave correctly for CJK languages.
+
+### imaging
+See [Image Processing Config](/content-management/image-processing/#image-processing-config).
+
+### languageCode
+
+**Default value:** ""
+
+A language tag as defined by [RFC 5646](https://datatracker.ietf.org/doc/html/rfc5646). The internal [RSS template](https://github.com/gohugoio/hugo/blob/master/tpl/tplimpl/embedded/templates/_default/rss.xml) populates its `<language>` element with this value. The value is not used elsewhere.
+
+### languages
+See [Configure Languages](/content-management/multilingual/#configure-languages).
+
+### disableLanguages
+
+See [Disable a Language](/content-management/multilingual/#disable-a-language)
+
+### markup
+See [Configure Markup](/getting-started/configuration-markup).{{< new-in "0.60.0" >}}
+
+### mediaTypes
+See [Configure Media Types](/templates/output-formats/#media-types).
+
+### menus
+See [Add Non-content Entries to a Menu](/content-management/menus/#add-non-content-entries-to-a-menu).
+
+### minify
+See [Configure Minify](#configure-minify)
+
+### module
+Module config see [Module Config](/hugo-modules/configuration/).{{< new-in "0.56.0" >}}
+
+### newContentEditor
+The editor to use when creating new content.
+
+### noChmod
+Don't sync permission mode of files.
+
+### noTimes
+Don't sync modification time of files.
+
+### outputFormats
+See [Configure Output Formats](#configure-additional-output-formats).
+
+### paginate
+
+**Default value:** 10
+
+Default number of elements per page in [pagination](/templates/pagination/).
+
+### paginatePath
+
+**Default value:** "page"
+
+The path element used during pagination (`https://example.com/page/2`).
+
+### permalinks
+See [Content Management](/content-management/urls/#permalinks).
+
+### pluralizeListTitles
+
+**Default value:** true
+
+Pluralize titles in lists.
+
+### publishDir
+
+**Default value:** "public"
+
+The directory to where Hugo will write the final static site (the HTML files etc.).
+
+### related
+: See [Related Content](/content-management/related/#configure-related-content).{{< new-in "0.27" >}}
+
+### relativeURLs
+Enable this to make all relative URLs relative to content root. Note that this does not affect absolute URLs.
+
+### refLinksErrorLevel
+
+**Default value:** "ERROR"
+
+When using `ref` or `relref` to resolve page links and a link cannot resolved, it will be logged with this log level. Valid values are `ERROR` (default) or `WARNING`. Any `ERROR` will fail the build (`exit -1`).
+
+### refLinksNotFoundURL
+URL to be used as a placeholder when a page reference cannot be found in `ref` or `relref`. Is used as-is.
+
+### removePathAccents
+
+**Default value:** false
+
+Removes [non-spacing marks](https://www.compart.com/en/unicode/category/Mn) from [composite characters](https://en.wikipedia.org/wiki/Precomposed_character) in content paths.
+
+```text
+content/post/hügó.md --> https://example.org/post/hugo/
+```
+
+
+### rssLimit
+
+Maximum number of items in the RSS feed.
+
+### sectionPagesMenu
+See ["Section Menu for Lazy Bloggers"](/templates/menu-templates/#section-menu-for-lazy-bloggers).
+
+### sitemap
+Default [sitemap configuration](/templates/sitemap-template/#configure-sitemapxml).
+
+### summaryLength
+
+**Default value:** 70
+
+The length of text in words to show in a [`.Summary`](/content-management/summaries/#hugo-defined-automatic-summary-splitting).
+
+### taxonomies
+See [Configure Taxonomies](/content-management/taxonomies#configure-taxonomies).
+
+### theme
+: See [Module Config](/hugo-modules/configuration/#module-config-imports) for how to import a theme.
+
+### themesDir
+
+**Default value:** "themes"
+
+The directory where Hugo reads the themes from.
+
+### timeout
+
+**Default value:** "30s"
+
+Timeout for generating page contents, specified as a [duration](https://pkg.go.dev/time#Duration) or in milliseconds. *Note:*&nbsp;this is used to bail out of recursive content generation. You might need to raise this limit if your pages are slow to generate (e.g., because they require large image processing or depend on remote contents).
+
+### timeZone
+
+{{< new-in "0.87.0" >}}
+
+The time zone (or location), e.g. `Europe/Oslo`, used to parse front matter dates without such information and in the [`time` function](/functions/time/). The list of valid values may be system dependent, but should include `UTC`, `Local`, and any location in the [IANA Time Zone database](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).
+
+### title
+Site title.
+
+### titleCaseStyle
+
+**Default value:** "AP"
+
+See [Configure Title Case](#configure-title-case)
+
+### uglyURLs
+When enabled, creates URL of the form `/filename.html` instead of `/filename/`.
+
+### watch
+
+Watch filesystem for changes and recreate as needed.
+
+{{% note %}}
+If you are developing your site on a \*nix machine, here is a handy shortcut for finding a configuration option from the command line:
+```
+cd ~/sites/yourhugosite
+hugo config | grep emoji
+```
+
+which shows output like
+
+```
+enableemoji: true
+```
+{{% /note %}}
+
+## Configure Build
+
+{{< new-in "0.66.0" >}}
+
+The `build` configuration section contains global build-related configuration options.
+
+{{< code-toggle file="config">}}
+[build]
+useResourceCacheWhen="fallback"
+writeStats = false
+noJSConfigInAssets = false
+{{< /code-toggle >}}
+
+
+useResourceCacheWhen
+: When to use the cached resources in `/resources/_gen` for PostCSS and ToCSS. Valid values are `never`, `always` and `fallback`. The last value means that the cache will be tried if PostCSS/extended version is not available.
+
+writeStats {{< new-in "0.69.0" >}}
+: When enabled, a file named `hugo_stats.json` will be written to your project root with some aggregated data about the build, e.g. list of HTML entities published to be used to do [CSS pruning](/hugo-pipes/postprocess/#css-purging-with-postcss). If you're only using this for the production build, you should consider placing it below [config/production](/getting-started/configuration/#configuration-directory). It's also worth mentioning that, due to the nature of the partial server builds, new HTML entities will be added when you add or change them while the server is running, but the old values will not be removed until you restart the server or run a regular `hugo` build.
+
+**Note** that the prime use case for this is purging of unused CSS; it is build for speed and there may be false positives (e.g. elements that isn't really a HTML element).
+
+noJSConfigInAssets {{< new-in "0.78.0" >}}
+: Turn off writing a `jsconfig.json` into your `/assets` folder with mapping of imports from running [js.Build](https://gohugo.io/hugo-pipes/js). This file is intended to help with intellisense/navigation inside code editors such as [VS Code](https://code.visualstudio.com/). Note that if you do not use `js.Build`, no file will be written.
+
+## Configure Server
+
+{{< new-in "0.67.0" >}}
+
+This is only relevant when running `hugo server`, and it allows to set HTTP headers during development, which allows you to test out your Content Security Policy and similar. The configuration format matches [Netlify's](https://docs.netlify.com/routing/headers/#syntax-for-the-netlify-configuration-file) with slightly more powerful [Glob matching](https://github.com/gobwas/glob):
+
+
+{{< code-toggle file="config">}}
+[server]
+[[server.headers]]
+for = "/**"
+
+[server.headers.values]
+X-Frame-Options = "DENY"
+X-XSS-Protection = "1; mode=block"
+X-Content-Type-Options = "nosniff"
+Referrer-Policy = "strict-origin-when-cross-origin"
+Content-Security-Policy = "script-src localhost:1313"
+{{< /code-toggle >}}
+
+Since this is is "development only", it may make sense to put it below the `development` environment:
+
+
+{{< code-toggle file="config/development/server">}}
+[[headers]]
+for = "/**"
+
+[headers.values]
+X-Frame-Options = "DENY"
+X-XSS-Protection = "1; mode=block"
+X-Content-Type-Options = "nosniff"
+Referrer-Policy = "strict-origin-when-cross-origin"
+Content-Security-Policy = "script-src localhost:1313"
+{{< /code-toggle >}}
+
+
+{{< new-in "0.72.0" >}}
+
+You can also specify simple redirects rules for the server. The syntax is again similar to Netlify's.
+
+Note that a `status` code of 200 will trigger a [URL rewrite](https://docs.netlify.com/routing/redirects/rewrites-proxies/), which is what you want in SPA situations, e.g:
+
+{{< code-toggle file="config/development/server">}}
+[[redirects]]
+from = "/myspa/**"
+to = "/myspa/"
+status = 200
+force = false
+{{< /code-toggle >}}
+
+{{< new-in "0.76.0" >}} Setting `force=true` will make a redirect even if there is existing content in the path. Note that before Hugo 0.76 `force` was the default behaviour, but this is inline with how Netlify does it.
+
+## Configure Title Case
+
+Set `titleCaseStyle` to specify the title style used by the [title](/functions/title/) template function and the automatic section titles in Hugo. It defaults to [AP Stylebook](https://www.apstylebook.com/) for title casing, but you can also set it to `Chicago` or `Go` (every word starts with a capital letter).
+
+## Configuration Environment Variables
+
+HUGO_NUMWORKERMULTIPLIER
+: Can be set to increase or reduce the number of workers used in parallel processing in Hugo. If not set, the number of logical CPUs will be used.
+
+## Configuration Lookup Order
+
+Similar to the template [lookup order][], Hugo has a default set of rules for searching for a configuration file in the root of your website's source directory as a default behavior:
+
+1. `./config.toml`
+2. `./config.yaml`
+3. `./config.json`
+
+In your `config` file, you can direct Hugo as to how you want your website rendered, control your website's menus, and arbitrarily define site-wide parameters specific to your project.
+
+
+## Example Configuration
+
+The following is a typical example of a configuration file. The values nested under `params:` will populate the [`.Site.Params`][] variable for use in [templates][]:
+
+{{< code-toggle file="config">}}
+baseURL: "https://yoursite.example.com/"
+title: "My Hugo Site"
+footnoteReturnLinkContents: "↩"
+permalinks:
+ posts: /:year/:month/:title/
+params:
+ Subtitle: "Hugo is Absurdly Fast!"
+ AuthorName: "Jon Doe"
+ GitHubUser: "spf13"
+ ListOfFoo:
+ - "foo1"
+ - "foo2"
+ SidebarRecentLimit: 5
+{{< /code-toggle >}}
+
+## Configure with Environment Variables
+
+In addition to the 3 config options already mentioned, configuration key-values can be defined through operating system environment variables.
+
+For example, the following command will effectively set a website's title on Unix-like systems:
+
+```
+$ env HUGO_TITLE="Some Title" hugo
+```
+
+This is really useful if you use a service such as Netlify to deploy your site. Look at the Hugo docs [Netlify configuration file](https://github.com/gohugoio/hugoDocs/blob/master/netlify.toml) for an example.
+
+{{% note "Setting Environment Variables" %}}
+Names must be prefixed with `HUGO_` and the configuration key must be set in uppercase when setting operating system environment variables.
+
+To set config params, prefix the name with `HUGO_PARAMS_`
+{{% /note %}}
+
+{{< new-in "0.79.0" >}} If you are using snake_cased variable names, the above will not work, so since Hugo 0.79.0 Hugo determines the delimiter to use by the first character after `HUGO`. This allows you to define environment variables on the form `HUGOxPARAMSxAPI_KEY=abcdefgh`, using any [allowed](https://stackoverflow.com/questions/2821043/allowed-characters-in-linux-environment-variable-names#:~:text=So%20names%20may%20contain%20any,not%20begin%20with%20a%20digit.) delimiter.
+
+{{< todo >}}
+Test and document setting params via JSON env var.
+{{< /todo >}}
+
+## Ignore Content and Data Files when Rendering
+
+To exclude specific files from the `content` and `data` directories when rendering your site, set `ignoreFiles` to one or more regular expressions to match against the absolute file path.
+
+To ignore files ending with `.foo` or `.boo`:
+
+{{< code-toggle copy="false" >}}
+ignoreFiles = ['\.foo$', '\.boo$']
+{{< /code-toggle >}}
+
+To ignore a file using the absolute file path:
+
+{{< code-toggle copy="false" >}}
+ignoreFiles = ['^/home/user/project/content/test\.md$']
+{{< /code-toggle >}}
+
+## Configure Front Matter
+
+### Configure Dates
+
+Dates are important in Hugo, and you can configure how Hugo assigns dates to your content pages. You do this by adding a `frontmatter` section to your `config.toml`.
+
+
+The default configuration is:
+
+{{< code-toggle file="config" >}}
+[frontmatter]
+date = ["date", "publishDate", "lastmod"]
+lastmod = [":git", "lastmod", "date", "publishDate"]
+publishDate = ["publishDate", "date"]
+expiryDate = ["expiryDate"]
+{{< /code-toggle >}}
+
+If you, as an example, have a non-standard date parameter in some of your content, you can override the setting for `date`:
+
+{{< code-toggle file="config" >}}
+[frontmatter]
+date = ["myDate", ":default"]
+{{< /code-toggle >}}
+
+The `:default` is a shortcut to the default settings. The above will set `.Date` to the date value in `myDate` if present, if not we will look in `date`,`publishDate`, `lastmod` and pick the first valid date.
+
+In the list to the right, values starting with ":" are date handlers with a special meaning (see below). The others are just names of date parameters (case insensitive) in your front matter configuration. Also note that Hugo have some built-in aliases to the above: `lastmod` => `modified`, `publishDate` => `pubdate`, `published` and `expiryDate` => `unpublishdate`. With that, as an example, using `pubDate` as a date in front matter, will, by default, be assigned to `.PublishDate`.
+
+The special date handlers are:
+
+
+`:fileModTime`
+: Fetches the date from the content file's last modification timestamp.
+
+An example:
+
+{{< code-toggle file="config" >}}
+[frontmatter]
+lastmod = ["lastmod", ":fileModTime", ":default"]
+{{< /code-toggle >}}
+
+
+The above will try first to extract the value for `.Lastmod` starting with the `lastmod` front matter parameter, then the content file's modification timestamp. The last, `:default` should not be needed here, but Hugo will finally look for a valid date in `:git`, `date` and then `publishDate`.
+
+
+`:filename`
+: Fetches the date from the content file's filename. For example, `2018-02-22-mypage.md` will extract the date `2018-02-22`. Also, if `slug` is not set, `mypage` will be used as the value for `.Slug`.
+
+An example:
+
+{{< code-toggle file="config" >}}
+[frontmatter]
+date = [":filename", ":default"]
+{{< /code-toggle >}}
+
+The above will try first to extract the value for `.Date` from the filename, then it will look in front matter parameters `date`, `publishDate` and lastly `lastmod`.
+
+
+`:git`
+: This is the Git author date for the last revision of this content file. This will only be set if `--enableGitInfo` is set or `enableGitInfo = true` is set in site config.
+
+## Configure Additional Output Formats
+
+Hugo v0.20 introduced the ability to render your content to multiple output formats (e.g., to JSON, AMP html, or CSV). See [Output Formats][] for information on how to add these values to your Hugo project's configuration file.
+
+## Configure Minify
+
+{{< new-in "0.68.0" >}}
+
+Default configuration:
+
+{{< code-toggle config="minify" />}}
+
+## Configure File Caches
+
+Since Hugo 0.52 you can configure more than just the `cacheDir`. This is the default configuration:
+
+{{< code-toggle >}}
+[caches]
+[caches.getjson]
+dir = ":cacheDir/:project"
+maxAge = -1
+[caches.getcsv]
+dir = ":cacheDir/:project"
+maxAge = -1
+[caches.getresource]
+dir = ":cacheDir/:project"
+maxAge = -1
+[caches.images]
+dir = ":resourceDir/_gen"
+maxAge = -1
+[caches.assets]
+dir = ":resourceDir/_gen"
+maxAge = -1
+[caches.modules]
+dir = ":cacheDir/modules"
+maxAge = -1
+{{< /code-toggle >}}
+
+You can override any of these cache settings in your own `config.toml`.
+
+### The keywords explained
+
+`:cacheDir`
+: This is the value of the `cacheDir` config option if set (can also be set via OS env variable `HUGO_CACHEDIR`). It will fall back to `/opt/build/cache/hugo_cache/` on Netlify, or a `hugo_cache` directory below the OS temp dir for the others. This means that if you run your builds on Netlify, all caches configured with `:cacheDir` will be saved and restored on the next build. For other CI vendors, please read their documentation. For an CircleCI example, see [this configuration](https://github.com/bep/hugo-sass-test/blob/6c3960a8f4b90e8938228688bc49bdcdd6b2d99e/.circleci/config.yml).
+
+`:project`
+: The base directory name of the current Hugo project. This means that, in its default setting, every project will have separated file caches, which means that when you do `hugo --gc` you will not touch files related to other Hugo projects running on the same PC.
+
+`:resourceDir`
+: This is the value of the `resourceDir` config option.
+
+maxAge
+: This is the duration before a cache entry will be evicted, -1 means forever and 0 effectively turns that particular cache off. Uses Go's `time.Duration`, so valid values are `"10s"` (10 seconds), `"10m"` (10 minutes) and `"10h"` (10 hours).
+
+dir
+: The absolute path to where the files for this cache will be stored. Allowed starting placeholders are `:cacheDir` and `:resourceDir` (see above).
+
+## Configuration Format Specs
+
+* [TOML Spec][toml]
+* [YAML Spec][yaml]
+* [JSON Spec][json]
+
+[`.Site.Params`]: /variables/site/
+[directory structure]: /getting-started/directory-structure
+[json]: https://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf "Specification for JSON, JavaScript Object Notation"
+[lookup order]: /templates/lookup-order/
+[Output Formats]: /templates/output-formats/
+[templates]: /templates/
+[toml]: https://github.com/toml-lang/toml
+[yaml]: https://yaml.org/spec/
+[static-files]: /content-management/static-files/
diff --git a/docs/content/en/getting-started/directory-structure.md b/docs/content/en/getting-started/directory-structure.md
new file mode 100644
index 000000000..81b07272c
--- /dev/null
+++ b/docs/content/en/getting-started/directory-structure.md
@@ -0,0 +1,96 @@
+---
+title: Directory Structure
+linktitle: Directory Structure
+description: Hugo's CLI scaffolds a project directory structure and then takes that single directory and uses it as the input to create a complete website.
+date: 2017-01-02
+publishdate: 2017-02-01
+lastmod: 2017-03-09
+categories: [getting started,fundamentals]
+keywords: [source, organization, directories]
+menu:
+ docs:
+ parent: "getting-started"
+ weight: 50
+weight: 50
+sections_weight: 50
+draft: false
+aliases: [/overview/source-directory/]
+toc: true
+---
+
+## New Site Scaffolding
+
+{{< youtube sB0HLHjgQ7E >}}
+
+Running the `hugo new site` generator from the command line will create a directory structure with the following elements:
+
+```
+.
+├── archetypes
+├── config.toml
+├── content
+├── data
+├── layouts
+├── static
+└── themes
+```
+
+
+## Directory Structure Explained
+
+The following is a high-level overview of each of the directories with links to each of their respective sections within the Hugo docs.
+
+[`archetypes`](/content-management/archetypes/)
+: You can create new content files in Hugo using the `hugo new` command.
+By default, Hugo will create new content files with at least `date`, `title` (inferred from the file name), and `draft = true`. This saves time and promotes consistency for sites using multiple content types. You can create your own [archetypes][] with custom preconfigured front matter fields as well.
+
+[`assets`][]
+: Stores all the files which need be processed by [Hugo Pipes]({{< ref "/hugo-pipes" >}}). Only the files whose `.Permalink` or `.RelPermalink` are used will be published to the `public` directory. Note: assets directory is not created by default.
+
+[`config`](/getting-started/configuration/)
+: Hugo ships with a large number of [configuration directives](https://gohugo.io/getting-started/configuration/#all-variables-yaml).
+The [config directory](/getting-started/configuration/#configuration-directory) is where those directives are stored as JSON, YAML, or TOML files. Every root setting object can stand as its own file and structured by environments.
+Projects with minimal settings and no need for environment awareness can use a single `config.toml` file at its root.
+
+Many sites may need little to no configuration, but Hugo ships with a large number of [configuration directives][] for more granular directions on how you want Hugo to build your website. Note: config directory is not created by default.
+
+[`content`][]
+: All content for your website will live inside this directory. Each top-level folder in Hugo is considered a [content section][]. For example, if your site has three main sections---`blog`, `articles`, and `tutorials`---you will have three directories at `content/blog`, `content/articles`, and `content/tutorials`. Hugo uses sections to assign default [content types][].
+
+[`data`](/templates/data-templates/)
+: This directory is used to store configuration files that can be
+used by Hugo when generating your website. You can write these files in YAML, JSON, or TOML format. In addition to the files you add to this folder, you can also create [data templates][] that pull from dynamic content.
+
+[`layouts`][]
+: Stores templates in the form of `.html` files that specify how views of your content will be rendered into a static website. Templates include [list pages][lists], your [homepage][], [taxonomy templates][], [partials][], [single page templates][singles], and more.
+
+[`static`][]
+: Stores all the static content: images, CSS, JavaScript, etc. When Hugo builds your site, all assets inside your static directory are copied over as-is. A good example of using the `static` folder is for [verifying site ownership on Google Search Console][searchconsole], where you want Hugo to copy over a complete HTML file without modifying its content.
+
+{{% note %}}
+From **Hugo 0.31** you can have multiple static directories.
+{{% /note %}}
+
+resources
+: Caches some files to speed up generation. Can be also used by template authors to distribute built SASS files, so you don't have to have the preprocessor installed. Note: resources directory is not created by default.
+
+
+[archetypes]: /content-management/archetypes/
+[configuration directives]: /getting-started/configuration/#all-variables-yaml
+[`content`]: /content-management/organization/
+[content section]: /content-management/sections/
+[content types]: /content-management/types/
+[data templates]: /templates/data-templates/
+[homepage]: /templates/homepage/
+[`layouts`]: /templates/
+[`static`]: /content-management/static-files/
+[lists]: /templates/list/
+[pagevars]: /variables/page/
+[partials]: /templates/partials/
+[searchconsole]: https://support.google.com/analytics/answer/1142414?hl=en
+[singles]: /templates/single-page-templates/
+[starters]: /tools/starter-kits/
+[taxonomies]: /content-management/taxonomies/
+[taxonomy templates]: /templates/taxonomy-templates/
+[types]: /content-management/types/
+[`assets`]: {{< ref "/hugo-pipes/introduction#asset-directory" >}}
diff --git a/docs/content/en/getting-started/external-learning-resources/hia.jpg b/docs/content/en/getting-started/external-learning-resources/hia.jpg
new file mode 100644
index 000000000..601947a70
--- /dev/null
+++ b/docs/content/en/getting-started/external-learning-resources/hia.jpg
Binary files differ
diff --git a/docs/content/en/getting-started/external-learning-resources/index.md b/docs/content/en/getting-started/external-learning-resources/index.md
new file mode 100644
index 000000000..349d7e29d
--- /dev/null
+++ b/docs/content/en/getting-started/external-learning-resources/index.md
@@ -0,0 +1,37 @@
+---
+title: External Learning Resources
+linktitle: External Learning Resources
+description: A list of tutorials and books on Hugo.
+date: 2019-10-20
+publishdate: 2019-10-20
+lastmod: 2019-10-20
+keywords: [books, tutorials, learning, usage]
+menu:
+ docs:
+ parent: "getting-started"
+ weight: 70
+weight: 70
+sections_weight: 70
+draft: false
+toc: false
+---
+
+## Books
+
+### Hugo In Action
+
+[![Hugo In Action](hia.jpg)](https://www.manning.com/books/hugo-in-action)
+
+Hugo in Action is a step-by-step guide to using Hugo to create static websites. Working with a complete example website and source code samples, you’ll learn how to build and host a low-maintenance, high-performance site that will wow your users and stay stable without relying on a third-party server.
+
+[Hugo In Action Home Page](https://www.manning.com/books/hugo-in-action)
+
+### Build Websites with Hugo
+
+[Build Websites with Hugo - Fast Web Development with Markdown (2020)](https://pragprog.com/titles/bhhugo/) by Brian P. Hogan.
+
+## Video tutorials
+
+### Video Playlist by Mike Dane
+
+Mike Dane explains the various features of Hugo via dedicated tutorials on [YouTube](https://www.youtube.com/watch?list=PLLAZ4kZ9dFpOnyRlyS-liKL5ReHDcj4G3&v=qtIqKaDlqXo).
diff --git a/docs/content/en/getting-started/installing.md b/docs/content/en/getting-started/installing.md
new file mode 100644
index 000000000..c9ac5c335
--- /dev/null
+++ b/docs/content/en/getting-started/installing.md
@@ -0,0 +1,569 @@
+---
+title: Install Hugo
+linktitle: Install Hugo
+description: Install Hugo on macOS, Windows, Linux, OpenBSD, FreeBSD, and on any machine where the Go compiler tool chain can run.
+date: 2016-11-01
+publishdate: 2016-11-01
+lastmod: 2018-01-02
+categories: [getting started,fundamentals]
+authors: ["Michael Henderson"]
+keywords: [install,pc,windows,linux,macos,binary,tarball]
+menu:
+ docs:
+ parent: "getting-started"
+ weight: 30
+weight: 30
+sections_weight: 30
+draft: false
+aliases: [/tutorials/installing-on-windows/,/tutorials/installing-on-mac/,/overview/installing/,/getting-started/install,/install/]
+toc: true
+---
+
+
+{{% note %}}
+There is lots of talk about "Hugo being written in Go", but you don't need to install Go to enjoy Hugo. Just grab a precompiled binary!
+{{% /note %}}
+
+Hugo is written in [Go](https://golang.org/) with support for multiple platforms. The latest release can be found at [Hugo Releases][releases].
+
+Hugo currently provides pre-built binaries for the following:
+
+* macOS (Darwin) for x64, i386, and ARM architectures
+* Windows
+* Linux
+* OpenBSD
+* FreeBSD
+
+Hugo may also be compiled from source wherever the Go toolchain can run; e.g., on other operating systems such as DragonFly BSD, OpenBSD, Plan&nbsp;9, Solaris, and others. See <https://golang.org/doc/install/source> for the full set of supported combinations of target operating systems and compilation architectures.
+
+## Quick Install
+
+### Binary (Cross-platform)
+
+Download the appropriate version for your platform from [Hugo Releases][releases]. Once downloaded, the binary can be run from anywhere. You don't need to install it into a global location. This works well for shared hosts and other systems where you don't have a privileged account.
+
+Ideally, you should install it somewhere in your `PATH` for easy use. `/usr/local/bin` is the most probable location.
+
+### Docker
+
+We currently do not offer official Hugo images for Docker, but we do recommend these up to date distributions: https://hub.docker.com/r/klakegg/hugo/
+
+### Homebrew (macOS)
+
+If you are on macOS and using [Homebrew][brew], you can install Hugo with the following one-liner:
+
+{{< code file="install-with-homebrew.sh" >}}
+brew install hugo
+{{< /code >}}
+
+For more detailed explanations, read the installation guides that follow for installing on macOS and Windows.
+
+### MacPorts (macOS)
+
+If you are on macOS and using [MacPorts][macports], you can install Hugo with the following one-liner:
+
+{{< code file="install-with-macports.sh" >}}
+port install hugo
+{{< /code >}}
+
+### Homebrew (Linux)
+
+If you are using [Homebrew][linuxbrew] on Linux, you can install Hugo with the following one-liner:
+
+{{< code file="install-with-linuxbrew.sh" >}}
+brew install hugo
+{{< /code >}}
+
+Installation guides for Homebrew on Linux are available on their [website][linuxbrew].
+
+### Chocolatey (Windows)
+
+If you are on a Windows machine and use [Chocolatey][] for package management, you can install Hugo with the following one-liner:
+
+{{< code file="install-with-chocolatey.ps1" >}}
+choco install hugo -confirm
+{{< /code >}}
+
+Or if you need the “extended” Sass/SCSS version:
+
+{{< code file="install-extended-with-chocolatey.ps1" >}}
+choco install hugo-extended -confirm
+{{< /code >}}
+
+### Scoop (Windows)
+
+If you are on a Windows machine and use [Scoop][] for package management, you can install Hugo with the following one-liner:
+
+```bash
+scoop install hugo
+```
+
+Or install the extended version with:
+
+```bash
+scoop install hugo-extended
+```
+
+### Source
+
+#### Prerequisite Tools
+
+* [Git][installgit]
+* [Go (at least Go 1.11)](https://golang.org/dl/)
+
+#### Fetch from GitHub
+
+Since Hugo 0.48, Hugo uses the Go Modules support built into Go 1.11 to build. The easiest way to get started is to clone Hugo in a directory outside of the GOPATH, as in the following example:
+
+{{< code file="from-gh.sh" >}}
+mkdir $HOME/src
+cd $HOME/src
+git clone https://github.com/gohugoio/hugo.git
+cd hugo
+go install --tags extended
+{{< /code >}}
+
+Remove `--tags extended` if you do not want/need Sass/SCSS support.
+
+{{% note %}}
+If you are a Windows user, substitute the `$HOME` environment variable above with `%USERPROFILE%`.
+{{% /note %}}
+
+## macOS
+
+### Assumptions
+
+1. You know how to open the macOS terminal.
+2. You're running a modern 64-bit Mac.
+3. You will use `~/Sites` as the starting point for your site. (`~/Sites` is used for example purposes. If you are familiar enough with the command line and file system, you should have no issues following along with the instructions.)
+
+### Pick Your Method
+
+There are three ways to install Hugo on your Mac
+
+1. A package manager, like [Homebrew][brew] (`brew`) or [MacPorts][macports] (`port`)
+2. Distribution (i.e., tarball)
+3. Building from Source
+
+There is no "best" way to install Hugo on your Mac. You should use the method that works best for your use case.
+
+#### Pros and Cons
+
+There are pros and cons to each of the aforementioned methods:
+
+1. **Package Manager.** Using a package manager is the simplest method and will require the least amount of work to maintain. The drawbacks aren't severe. The default package will be for the most recent release, so it will not have bug fixes until the next release (i.e., unless you install it with the `--HEAD` option in Homebrew). Releases may lag a few days behind because it has to be coordinated with another team. Nevertheless, this is the recommended installation method if you want to work from a stable, widely used source. Package managers work well and they are easy to update.
+
+2. **Tarball.** Downloading and installing from the tarball is also easy, although it requires a few more command line skills than does Homebrew. Updates are easy as well: you just repeat the process with the new binary. This gives you the flexibility to have multiple versions on your computer. If you don't want to use `brew`, then the tarball/binary is a good choice.
+
+3. **Building from Source.** Building from source is the most work. The advantage of building from source is that you don't have to wait for a release to add features or bug fixes. The disadvantage is that you need to spend more time managing the setup, which is manageable but requires more time than the preceding two options.
+
+{{% note %}}
+Since building from source is appealing to more seasoned command line users, this guide will focus more on installing Hugo via Homebrew and Tarball.
+{{% /note %}}
+
+### Install Hugo with Brew
+
+{{< youtube WvhCGlLcrF8 >}}
+
+#### Step 1: Install `brew` if you haven't already
+
+Go to the `brew` website, <https://brew.sh/>, and follow the directions there. The most important step is the installation from the command line:
+
+{{< code file="install-brew.sh" >}}
+ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
+{{< /code >}}
+
+#### Step 2: Run the `brew` Command to Install `hugo`
+
+Installing Hugo using `brew` is as easy as the following:
+
+{{< code file="install-brew.sh" >}}
+brew install hugo
+{{< /code >}}
+
+If Homebrew is working properly, you should see something similar to the following:
+
+```
+==> Downloading https://homebrew.bintray.com/bottles/hugo-0.21.sierra.bottle.tar.gz
+######################################################################### 100.0%
+==> Pouring hugo-0.21.sierra.bottle.tar.gz
+🍺 /usr/local/Cellar/hugo/0.21: 32 files, 17.4MB
+```
+
+{{% note "Installing the Latest Hugo with Brew" %}}
+Replace `brew install hugo` with `brew install hugo --HEAD` if you want the absolute latest in-development version.
+{{% /note %}}
+
+`brew` should have updated your path to include Hugo. You can confirm by opening a new terminal window and running a few commands:
+
+```
+$ # show the location of the hugo executable
+which hugo
+/usr/local/bin/hugo
+
+# show the installed version
+ls -l $( which hugo )
+lrwxr-xr-x 1 mdhender admin 30 Mar 28 22:19 /usr/local/bin/hugo -> ../Cellar/hugo/0.13_1/bin/hugo
+
+# verify that hugo runs correctly
+hugo version
+Hugo Static Site Generator v0.13 BuildDate: 2015-03-09T21:34:47-05:00
+```
+
+### Install Hugo from Tarball
+
+#### Step 1: Decide on the location
+
+When installing from the tarball, you have to decide if you're going to install the binary in `/usr/local/bin` or in your home directory. There are three camps on this:
+
+1. Install it in `/usr/local/bin` so that all the users on your system have access to it. This is a good idea because it's a fairly standard place for executables. The downside is that you may need elevated privileges to put software into that location. Also, if there are multiple users on your system, they will all run the same version. Sometimes this can be an issue if you want to try out a new release.
+
+2. Install it in `~/bin` so that only you can execute it. This is a good idea because it's easy to do, easy to maintain, and doesn't require elevated privileges. The downside is that only you can run Hugo. If there are other users on your site, they have to maintain their own copies. That can lead to people running different versions. Of course, this does make it easier for you to experiment with different releases.
+
+3. Install it in your `Sites` directory. This is not a bad idea if you have only one site that you're building. It keeps every thing in a single place. If you want to try out new releases, you can make a copy of the entire site and update the Hugo executable.
+
+All three locations will work for you. In the interest of brevity, this guide focuses on option #2.
+
+#### Step 2: Download the Tarball
+
+1. Open <https://github.com/gohugoio/hugo/releases> in your browser.
+
+2. Find the current release by scrolling down and looking for the green tag that reads "Latest Release."
+
+3. Download the current tarball for the Mac. The name will be something like `hugo_X.Y_osx-64bit.tgz`, where `X.YY` is the release number.
+
+4. By default, the tarball will be saved to your `~/Downloads` directory. If you choose to use a different location, you'll need to change that in the following steps.
+
+#### Step 3: Confirm your download
+
+Verify that the tarball wasn't corrupted during the download:
+
+```
+tar tvf ~/Downloads/hugo_X.Y_osx-64bit.tgz
+-rwxrwxrwx 0 0 0 0 Feb 22 04:02 hugo_X.Y_osx-64bit/hugo_X.Y_osx-64bit.tgz
+-rwxrwxrwx 0 0 0 0 Feb 22 03:24 hugo_X.Y_osx-64bit/README.md
+-rwxrwxrwx 0 0 0 0 Jan 30 18:48 hugo_X.Y_osx-64bit/LICENSE.md
+```
+
+The `.md` files are documentation for Hugo. The other file is the executable.
+
+#### Step 4: Install Into Your `bin` Directory
+
+```
+# create the directory if needed
+mkdir -p ~/bin
+
+# make it the working directory
+cd ~/bin
+
+# extract the tarball
+tar -xvzf ~/Downloads/hugo_X.Y_osx-64bit.tgz
+Archive: hugo_X.Y_osx-64bit.tgz
+ x ./
+ x ./hugo
+ x ./LICENSE.md
+ x ./README.md
+
+# verify that it runs
+./hugo version
+Hugo Static Site Generator v0.13 BuildDate: 2015-02-22T04:02:30-06:00
+```
+
+You may need to add your bin directory to your `PATH` environment variable. The `which` command will check for us. If it can find `hugo`, it will print the full path to it. Otherwise, it will not print anything.
+
+```
+# check if hugo is in the path
+which hugo
+/Users/USERNAME/bin/hugo
+```
+
+If `hugo` is not in your `PATH`:
+
+1. Determine your default shell (zsh or bash).
+
+ ```
+ echo $SHELL
+ ```
+
+2. Edit your profile.
+
+ If your default shell is zsh:
+
+ ```
+ nano ~/.zprofile
+ ```
+
+ If your default shell is bash:
+
+ ```
+ nano ~/.bash_profile
+ ```
+
+3. Insert a line to add `$HOME/bin` to your existing `PATH`.
+
+ ```
+ export PATH=$PATH:$HOME/bin
+ ```
+
+4. Save the file by pressing Control-X, then Y.
+
+5. Close the terminal and open a new terminal to pick up the changes to your profile. Verify the change by running the `which hugo` command again.
+
+You've successfully installed Hugo.
+
+### Build from Source on Mac
+
+If you want to compile Hugo yourself, you'll need to install Go (aka Golang). You can [install Go directly from the Go website](https://golang.org/dl/) or via Homebrew using the following command:
+
+```
+brew install go
+```
+
+#### Step 1: Get the Source
+
+If you want to compile a specific version of Hugo, go to <https://github.com/gohugoio/hugo/releases> and download the source code for the version of your choice. If you want to compile Hugo with all the latest changes (which might include bugs), clone the Hugo repository:
+
+```
+git clone https://github.com/gohugoio/hugo
+```
+
+{{% warning "Sometimes \"Latest\" = \"Bugs\""%}}
+Cloning the Hugo repository directly means taking the good with the bad. By using the bleeding-edge version of Hugo, you make your development susceptible to the latest features, as well as the latest bugs. Your feedback is appreciated. If you find a bug in the latest release, [please create an issue on GitHub](https://github.com/gohugoio/hugo/issues/new).
+{{% /warning %}}
+
+#### Step 2: Compiling
+
+Make the directory containing the source your working directory and then fetch Hugo's dependencies:
+
+```
+mkdir -p src/github.com/gohugoio
+ln -sf $(pwd) src/github.com/gohugoio/hugo
+
+go get
+```
+
+This will fetch the absolute latest version of the dependencies. If Hugo fails to build, it may be the result of a dependency's author introducing a breaking change.
+
+Once you have properly configured your directory, you can compile Hugo using the following command:
+
+```
+go build -o hugo main.go
+```
+
+Then place the `hugo` executable somewhere in your `$PATH`. You're now ready to start using Hugo.
+
+## Windows
+
+The following aims to be a complete guide to installing Hugo on your Windows PC.
+
+{{< youtube G7umPCU-8xc >}}
+
+### Assumptions
+
+1. You will use `C:\Hugo\Sites` as the starting point for your new project.
+2. You will use `C:\Hugo\bin` to store executable files.
+
+### Set up Your Directories
+
+You'll need a place to store the Hugo executable, your [content][], and the generated Hugo website:
+
+1. Open Windows Explorer.
+2. Create a new folder: `C:\Hugo`, assuming you want Hugo on your C drive, although this can go anywhere
+3. Create a subfolder in the Hugo folder: `C:\Hugo\bin`
+4. Create another subfolder in Hugo: `C:\Hugo\Sites`
+
+### Technical Users
+
+1. Download the latest zipped Hugo executable from [Hugo Releases][releases].
+2. Extract all contents to your `..\Hugo\bin` folder.
+3. In PowerShell or your preferred CLI, add the `hugo.exe` executable to your PATH by navigating to `C:\Hugo\bin` (or the location of your hugo.exe file) and use the command `set PATH=%PATH%;C:\Hugo\bin`. If the `hugo` command does not work after a reboot, you may have to run the command prompt as administrator.
+
+### Less-technical Users
+
+1. Go to the [Hugo Releases][releases] page.
+2. The latest release is announced on top. Scroll to the bottom of the release announcement to see the downloads. They're all ZIP files.
+3. Find the Windows files near the bottom (they're in alphabetical order, so Windows is last) – download either the 32-bit or 64-bit file depending on whether you have 32-bit or 64-bit Windows. (If you don't know, [see here](https://esupport.trendmicro.com/en-us/home/pages/technical-support/1038680.aspx).)
+4. Move the ZIP file into your `C:\Hugo\bin` folder.
+5. Double-click on the ZIP file and extract its contents. Be sure to extract the contents into the same `C:\Hugo\bin` folder – Windows will do this by default unless you tell it to extract somewhere else.
+6. You should now have three new files: The hugo executable (`hugo.exe`), `LICENSE`, and `README.md`.
+
+Now you need to add Hugo to your Windows PATH settings:
+
+#### For Windows 10 Users:
+
+* Right click on the **Start** button.
+* Click on **System**.
+* Click on **Advanced System Settings** on the left.
+* Click on the **Environment Variables...** button on the bottom.
+* In the User variables section, find the row that starts with PATH (PATH will be all caps).
+* Double-click on **PATH**.
+* Click the **New...** button.
+* Type in the folder where `hugo.exe` was extracted, which is `C:\Hugo\bin` if you went by the instructions above. *The PATH entry should be the folder where Hugo lives and not the binary.* Press <kbd>Enter</kbd> when you're done typing.
+* Click OK at every window to exit.
+
+{{% note "Path Editor in Windows 10"%}}
+The path editor in Windows 10 was added in the large [November 2015 Update](https://blogs.windows.com/windowsexperience/2015/11/12/first-major-update-for-windows-10-available-today/). You'll need to have that or a later update installed for the above steps to work. You can see what Windows 10 build you have by clicking on the <i class="fa fa-windows"></i>&nbsp;Start button → Settings → System → About. See [here](https://www.howtogeek.com/236195/how-to-find-out-which-build-and-version-of-windows-10-you-have/) for more.)
+{{% /note %}}
+
+#### For Windows 7 and 8.x users:
+
+Windows 7 and 8.1 do not include the easy path editor included in Windows 10, so non-technical users on those platforms are advised to install a free third-party path editor like [Windows Environment Variables Editor][Windows Environment Variables Editor] or [Path Editor](https://patheditor2.codeplex.com/).
+
+### Verify the Executable
+
+Run a few commands to verify that the executable is ready to run, and then build a sample site to get started.
+
+#### 1. Open a Command Prompt
+
+At the prompt, type `hugo help` and press the <kbd>Enter</kbd> key. You should see output that starts with:
+
+```
+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 https://gohugo.io/.
+```
+
+If you do, then the installation is complete. If you don't, double-check the path that you placed the `hugo.exe` file in and that you typed that path correctly when you added it to your `PATH` variable. If you're still not getting the output, search the [Hugo discussion forum][forum] to see if others have already figured out our problem. If not, add a note---in the "Support" category---and be sure to include your command and the output.
+
+At the prompt, change your directory to the `Sites` directory.
+
+```
+C:\Program Files> cd C:\Hugo\Sites
+C:\Hugo\Sites>
+```
+
+#### 2. Run the Command
+
+Run the command to generate a new site. I'm using `example.com` as the name of the site.
+
+```
+C:\Hugo\Sites> hugo new site example.com
+```
+
+You should now have a directory at `C:\Hugo\Sites\example.com`. Change into that directory and list the contents. You should get output similar to the following:
+
+```
+C:\Hugo\Sites> cd example.com
+C:\Hugo\Sites\example.com> dir
+Directory of C:\hugo\sites\example.com
+
+04/13/2015 10:44 PM <DIR> .
+04/13/2015 10:44 PM <DIR> ..
+04/13/2015 10:44 PM <DIR> archetypes
+04/13/2015 10:44 PM 83 config.toml
+04/13/2015 10:44 PM <DIR> content
+04/13/2015 10:44 PM <DIR> data
+04/13/2015 10:44 PM <DIR> layouts
+04/13/2015 10:44 PM <DIR> static
+ 1 File(s) 83 bytes
+ 7 Dir(s) 6,273,331,200 bytes free
+```
+
+### Troubleshoot Windows Installation
+
+[@dhersam][] has created a nice video on common issues:
+
+{{< youtube c8fJIRNChmU >}}
+
+## Linux
+
+### Snap Package
+
+In any of the [Linux distributions that support snaps][snaps], you may install the "extended" Sass/SCSS version with this command:
+
+ snap install hugo --channel=extended
+
+To install the non-extended version without Sass/SCSS support:
+
+ snap install hugo
+
+To switch between the two, use either `snap refresh hugo --channel=extended` or `snap refresh hugo --channel=stable`.
+
+{{% note %}}
+Hugo installed via Snap can write only inside the user’s `$HOME` directory---and gvfs-mounted directories owned by the user---because of Snaps’ confinement and security model. More information is also available [in this related GitHub issue](https://github.com/gohugoio/hugo/issues/3143).
+{{% /note %}}
+
+### Debian and Ubuntu
+
+[@anthonyfok](https://github.com/anthonyfok) and friends in the [Debian Go Packaging Team](https://go-team.pages.debian.net/) maintains an official hugo [Debian package](https://packages.debian.org/hugo) which is shared with [Ubuntu](https://packages.ubuntu.com/hugo) and is installable via `apt-get`:
+
+ sudo apt-get install hugo
+
+What this installs depends on your Debian/Ubuntu version. On Ubuntu bionic (18.04), this installs the non-extended version without Sass/SCSS support. On Ubuntu disco (19.04), this installs the extended version with Sass/SCSS support.
+
+This option is not recommended because the Hugo in Linux package managers for Debian and Ubuntu is usually a few versions behind as described [here](https://github.com/gcushen/hugo-academic/issues/703)
+
+### Arch Linux
+
+You can also install Hugo from the Arch Linux [community](https://www.archlinux.org/packages/community/x86_64/hugo/) repository. Applies also to derivatives such as Manjaro.
+
+```
+sudo pacman -Syu hugo
+```
+
+### Fedora, Red Hat and CentOS
+
+Fedora maintains an [official package for Hugo](https://apps.fedoraproject.org/packages/hugo) which may be installed with:
+
+ sudo dnf install hugo
+
+For the latest version, the Hugo package maintained by [@daftaupe](https://github.com/daftaupe) at Fedora Copr is recommended:
+
+* <https://copr.fedorainfracloud.org/coprs/daftaupe/hugo/>
+
+See the [related discussion in the Hugo forums][redhatforum].
+
+### openSUSE Tumbleweed
+
+openSUSE maintains an [official package](https://software.opensuse.org/package/hugo) for the Tumbleweed rolling release distribution, it may be installed with:
+
+````
+sudo zypper install hugo
+````
+
+### Solus
+
+Solus includes Hugo in its package repository, it may be installed with:
+
+```
+sudo eopkg install hugo
+```
+
+## OpenBSD
+
+OpenBSD provides a package for Hugo via `pkg_add`:
+
+ doas pkg_add hugo
+
+
+## Upgrade Hugo
+
+Upgrading Hugo is as easy as downloading and replacing the executable you’ve placed in your `PATH` or run `brew upgrade hugo` if using Homebrew.
+
+## Next Steps
+
+Now that you've installed Hugo, read the [Quick Start guide][quickstart] and explore the rest of the documentation. If you have questions, ask the Hugo community directly by visiting the [Hugo Discussion Forum][forum].
+
+[brew]: https://brew.sh/
+[macports]: https://www.macports.org/
+[Chocolatey]: https://chocolatey.org/
+[content]: /content-management/
+[@dhersam]: https://github.com/dhersam
+[forum]: https://discourse.gohugo.io
+[mage]: https://github.com/magefile/mage
+[dep]: https://github.com/golang/dep
+[highlight shortcode]: /content-management/shortcodes/#highlight
+[installgit]: https://git-scm.com/
+[installgo]: https://golang.org/dl/
+[linuxbrew]: https://docs.brew.sh/Homebrew-on-Linux
+[Path Editor]: https://patheditor2.codeplex.com/
+[quickstart]: /getting-started/quick-start/
+[redhatforum]: https://discourse.gohugo.io/t/solved-fedora-copr-repository-out-of-service/2491
+[releases]: https://github.com/gohugoio/hugo/releases
+[Scoop]: https://scoop.sh/
+[snaps]: https://snapcraft.io/docs/installing-snapd
+[windowsarch]: https://esupport.trendmicro.com/en-us/home/pages/technical-support/1038680.aspx
+[Windows Environment Variables Editor]: http://eveditor.com/
diff --git a/docs/content/en/getting-started/quick-start.md b/docs/content/en/getting-started/quick-start.md
new file mode 100644
index 000000000..662138ae6
--- /dev/null
+++ b/docs/content/en/getting-started/quick-start.md
@@ -0,0 +1,179 @@
+---
+title: Quick Start
+linktitle: Quick Start
+description: Create a Hugo site using the beautiful Ananke theme.
+date: 2013-07-01
+publishdate: 2013-07-01
+categories: [getting started]
+keywords: [quick start,usage]
+authors: [Shekhar Gulati, Ryan Watters]
+menu:
+ docs:
+ parent: "getting-started"
+ weight: 10
+weight: 10
+sections_weight: 10
+draft: false
+aliases: [/quickstart/,/overview/quickstart/]
+toc: true
+---
+
+{{% note %}}
+This quick start uses `macOS` in the examples. For instructions about how to install Hugo on other operating systems, see [install](/getting-started/installing).
+
+It is recommended to have [Git installed](https://git-scm.com/downloads) to run this tutorial.
+
+For other approaches to learning Hugo (like books or video tutorials), refer to the [external learning resources](/getting-started/external-learning-resources/) page.
+{{% /note %}}
+
+## Step 1: Install Hugo
+
+{{% note %}}
+`Homebrew` and `MacPorts`, package managers for `macOS`, can be installed from [brew.sh](https://brew.sh/) or [macports.org](https://www.macports.org/) respectively. See [install](/getting-started/installing) if you are running Windows etc.
+{{% /note %}}
+
+```bash
+brew install hugo
+# or
+port install hugo
+```
+
+To verify your new install:
+
+```bash
+hugo version
+```
+
+{{< asciicast ItACREbFgvJ0HjnSNeTknxWy9 >}}
+
+## Step 2: Create a New Site
+
+```bash
+hugo new site quickstart
+```
+
+The above will create a new Hugo site in a folder named `quickstart`.
+
+{{< asciicast 3mf1JGaN0AX0Z7j5kLGl3hSh8 >}}
+
+## Step 3: Add a Theme
+
+See [themes.gohugo.io](https://themes.gohugo.io/) for a list of themes to consider. This quickstart uses the beautiful [Ananke theme](https://themes.gohugo.io/gohugo-theme-ananke/).
+
+First, download the theme from GitHub and add it to your site's `themes` directory:
+
+```bash
+cd quickstart
+git init
+git submodule add https://github.com/theNewDynamic/gohugo-theme-ananke.git themes/ananke
+```
+
+*Note for non-git users:*
+ - If you do not have git installed, you can download the archive of the latest
+ version of this theme from:
+ https://github.com/theNewDynamic/gohugo-theme-ananke/archive/master.zip
+ - Extract that .zip file to get a "gohugo-theme-ananke-master" directory.
+ - Rename that directory to "ananke", and move it into the "themes/" directory.
+
+Then, add the theme to the site configuration:
+
+```bash
+echo theme = \"ananke\" >> config.toml
+```
+
+{{< asciicast 7naKerRYUGVPj8kiDmdh5k5h9 >}}
+
+## Step 4: Add Some Content
+
+You can manually create content files (for example as `content/<CATEGORY>/<FILE>.<FORMAT>`) and provide metadata in them, however you can use the `new` command to do a few things for you (like add title and date):
+
+```
+hugo new posts/my-first-post.md
+```
+
+{{< asciicast eUojYCfRTZvkEiqc52fUsJRBR >}}
+
+Edit the newly created content file if you want, it will start with something like this:
+
+```markdown
+---
+title: "My First Post"
+date: 2019-03-26T08:47:11+01:00
+draft: true
+---
+
+```
+
+{{% note %}}
+Drafts do not get deployed; once you finish a post, update the header of the post to say `draft: false`. More info [here](/getting-started/usage/#draft-future-and-expired-content).
+{{% /note %}}
+
+## Step 5: Start the Hugo server
+
+Now, start the Hugo server with [drafts](/getting-started/usage/#draft-future-and-expired-content) enabled:
+
+{{< asciicast BvJBsF6egk9c163bMsObhuNXj >}}
+
+```
+▶ hugo server -D
+
+ | EN
++------------------+----+
+ Pages | 10
+ Paginator pages | 0
+ Non-page files | 0
+ Static files | 3
+ Processed images | 0
+ Aliases | 1
+ Sitemaps | 1
+ Cleaned | 0
+
+Total in 11 ms
+Watching for changes in /Users/bep/quickstart/{content,data,layouts,static,themes}
+Watching for config changes in /Users/bep/quickstart/config.toml
+Environment: "development"
+Serving pages from memory
+Running in Fast Render Mode. For full rebuilds on change: hugo server --disableFastRender
+Web Server is available at http://localhost:1313/ (bind address 127.0.0.1)
+Press Ctrl+C to stop
+```
+
+**Navigate to your new site at [http://localhost:1313/](http://localhost:1313/).**
+
+Feel free to edit or add new content and simply refresh in browser to see changes quickly. (You might need to force refresh your web browser, something like Ctrl-R usually works.)
+
+## Step 6: Customize the Theme
+
+Your new site already looks great, but you will want to tweak it a little before you release it to the public.
+
+### Site Configuration
+
+Open up `config.toml` in a text editor:
+
+```
+baseURL = "https://example.org/"
+languageCode = "en-us"
+title = "My New Hugo Site"
+theme = "ananke"
+```
+
+Replace the `title` above with something more personal. Also, if you already have a domain ready, set the `baseURL`. Note that this value is not needed when running the local development server.
+
+{{% note %}}
+**Tip:** Make the changes to the site configuration or any other file in your site while the Hugo server is running, and you will see the changes in the browser right away, though you may need to [clear your cache](https://kb.iu.edu/d/ahic).
+{{% /note %}}
+
+For theme specific configuration options, see the [theme site](https://github.com/theNewDynamic/gohugo-theme-ananke).
+
+**For further theme customization, see [Customize a Theme](/themes/customizing/).**
+
+### Step 7: Build static pages
+
+It is simple. Just call:
+
+```
+hugo -D
+```
+
+Output will be in `./public/` directory by default (`-d`/`--destination` flag to change it, or set `publishdir` in the config file).
+
diff --git a/docs/content/en/getting-started/usage.md b/docs/content/en/getting-started/usage.md
new file mode 100644
index 000000000..96ecb930a
--- /dev/null
+++ b/docs/content/en/getting-started/usage.md
@@ -0,0 +1,213 @@
+---
+title: Basic Usage
+linktitle: Basic Usage
+description: Hugo's CLI is fully featured but simple to use, even for those who have very limited experience working from the command line.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [getting started]
+keywords: [usage,livereload,command line,flags]
+menu:
+ docs:
+ parent: "getting-started"
+ weight: 40
+weight: 40
+sections_weight: 40
+draft: false
+aliases: [/overview/usage/,/extras/livereload/,/doc/usage/,/usage/]
+toc: true
+---
+
+The following is a description of the most common commands you will use while developing your Hugo project. See the [Command Line Reference][commands] for a comprehensive view of Hugo's CLI.
+
+## Test Installation
+
+Once you have [installed Hugo][install], make sure it is in your `PATH`. You can test that Hugo has been installed correctly via the `help` command:
+
+```
+hugo help
+```
+
+The output you see in your console should be similar to the following:
+
+```
+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 https://gohugo.io/.
+
+Usage:
+ hugo [flags]
+ hugo [command]
+
+Available Commands:
+ check Contains some verification checks
+ config Print the site configuration
+ convert Convert your content to different formats
+ env Print Hugo version and environment info
+ gen A collection of several useful generators.
+ help Help about any command
+ import Import your site from others.
+ list Listing out various types of content
+ new Create new content for your site
+ server A high performance webserver
+ version Print the version number of Hugo
+
+Flags:
+ -b, --baseURL string hostname (and path) to the root, e.g. https://spf13.com/
+ -D, --buildDrafts include content marked as draft
+ -E, --buildExpired include expired content
+ -F, --buildFuture include content with publishdate in the future
+ --cacheDir string filesystem path to cache directory. Defaults: $TMPDIR/hugo_cache/
+ --cleanDestinationDir remove files from destination not found in static directories
+ --config string config file (default is path/config.yaml|json|toml)
+ --configDir string config dir (default "config")
+ -c, --contentDir string filesystem path to content directory
+ --debug debug output
+ -d, --destination string filesystem path to write files to
+ --disableKinds strings disable different kind of pages (home, RSS etc.)
+ --enableGitInfo add Git revision, date and author info to the pages
+ -e, --environment string build environment
+ --forceSyncStatic copy all files when static is changed.
+ --gc enable to run some cleanup tasks (remove unused cache files) after the build
+ -h, --help help for hugo
+ --i18n-warnings print missing translations
+ --ignoreCache ignores the cache directory
+ -l, --layoutDir string filesystem path to layout directory
+ --log enable Logging
+ --logFile string log File path (if set, logging enabled automatically)
+ --minify minify any supported output format (HTML, XML etc.)
+ --noChmod don't sync permission mode of files
+ --noTimes don't sync modification time of files
+ --path-warnings print warnings on duplicate target paths etc.
+ --quiet build in quiet mode
+ --renderToMemory render to memory (only useful for benchmark testing)
+ -s, --source string filesystem path to read files relative from
+ --templateMetrics display metrics about template executions
+ --templateMetricsHints calculate some improvement hints when combined with --templateMetrics
+ -t, --theme strings themes to use (located in /themes/THEMENAME/)
+ --themesDir string filesystem path to themes directory
+ --trace file write trace to file (not useful in general)
+ -v, --verbose verbose output
+ --verboseLog verbose logging
+ -w, --watch watch filesystem for changes and recreate as needed
+
+Use "hugo [command] --help" for more information about a command.
+```
+
+## The `hugo` Command
+
+The most common usage is probably to run `hugo` with your current directory being the input directory.
+
+This generates your website to the `public/` directory by default, although you can customize the output directory in your [site configuration][config] by changing the `publishDir` field.
+
+The command `hugo` renders your site into `public/` dir and is ready to be deployed to your web server:
+
+```
+hugo
+0 draft content
+0 future content
+99 pages created
+0 paginator pages created
+16 tags created
+0 groups created
+in 90 ms
+```
+
+## Draft, Future, and Expired Content
+
+Hugo allows you to set `draft`, `publishdate`, and even `expirydate` in your content's [front matter][]. By default, Hugo will not publish:
+
+1. Content with a future `publishdate` value
+2. Content with `draft: true` status
+3. Content with a past `expirydate` value
+
+All three of these can be overridden during both local development *and* deployment by adding the following flags to `hugo` and `hugo server`, respectively, or by changing the boolean values assigned to the fields of the same name (without `--`) in your [configuration][config]:
+
+1. `--buildFuture`
+2. `--buildDrafts`
+3. `--buildExpired`
+
+## LiveReload
+
+Hugo comes with [LiveReload](https://github.com/livereload/livereload-js) built in. There are no additional packages to install. A common way to use Hugo while developing a site is to have Hugo run a server with the `hugo server` command and watch for changes:
+
+```
+hugo server
+0 draft content
+0 future content
+99 pages created
+0 paginator pages created
+16 tags created
+0 groups created
+in 120 ms
+Watching for changes in /Users/yourname/sites/yourhugosite/{data,content,layouts,static}
+Serving pages from /Users/yourname/sites/yourhugosite/public
+Web Server is available at http://localhost:1313/
+Press Ctrl+C to stop
+```
+
+This will run a fully functioning web server while simultaneously watching your file system for additions, deletions, or changes within the following areas of your [project organization][dirs]:
+
+* `/static/*`
+* `/content/*`
+* `/data/*`
+* `/i18n/*`
+* `/layouts/*`
+* `/themes/<CURRENT-THEME>/*`
+* `config`
+
+Whenever you make changes, Hugo will simultaneously rebuild the site and continue to serve content. As soon as the build is finished, LiveReload tells the browser to silently reload the page.
+
+Most Hugo builds are so fast that you may not notice the change unless looking directly at the site in your browser. This means that keeping the site open on a second monitor (or another half of your current monitor) allows you to see the most up-to-date version of your website without the need to leave your text editor.
+
+{{% note "Closing `</body>` Tag"%}}
+Hugo injects the LiveReload `<script>` before the closing `</body>` in your templates and will therefore not work if this tag is not present..
+{{% /note %}}
+
+### Redirect automatically to the page you just saved
+
+When you are working with more than one document and want to see the markup as real-time as possible it's not ideal to keep jumping between them.
+Fortunately Hugo has an easy, embedded and simple solution for this. It's the flag `--navigateToChanged`.
+
+### Disable LiveReload
+
+LiveReload works by injecting JavaScript into the pages Hugo generates. The script creates a connection from the browser's web socket client to the Hugo web socket server.
+
+The following methods make it easy to disable LiveReload:
+
+```
+hugo server --watch=false
+```
+
+Or...
+
+```
+hugo server --disableLiveReload
+```
+
+The latter flag can be omitted by adding the following:
+
+{{< code-toggle file="config" >}}
+disableLiveReload = true
+{{< /code-toggle >}}
+
+## Deploy Your Website
+
+After running `hugo server` for local web development, you need to do a final `hugo` run *without the `server` part of the command* to rebuild your site. You may then deploy your site by copying the `public/` directory to your production web server.
+
+Since Hugo generates a static website, your site can be hosted *anywhere* using any web server. See [Hosting and Deployment][hosting] for methods for hosting and automating deployments contributed by the Hugo community.
+
+{{% warning "Generated Files are **NOT** Removed on Site Build" %}}
+Running `hugo` *does not* remove generated files before building. This means that you should delete your `public/` directory (or the publish directory you specified via flag or configuration file) before running the `hugo` command. If you do not remove these files, you run the risk of the wrong files (e.g., drafts or future posts) being left in the generated site.
+{{% /warning %}}
+
+
+[commands]: /commands/
+[config]: /getting-started/configuration/
+[dirs]: /getting-started/directory-structure/
+[front matter]: /content-management/front-matter/
+[hosting]: /hosting-and-deployment/
+[install]: /getting-started/installing/
diff --git a/docs/content/en/hosting-and-deployment/_index.md b/docs/content/en/hosting-and-deployment/_index.md
new file mode 100644
index 000000000..ea9f60f17
--- /dev/null
+++ b/docs/content/en/hosting-and-deployment/_index.md
@@ -0,0 +1,20 @@
+---
+title: Hosting & Deployment
+linktitle: Hosting & Deployment Overview
+description: Site builds, automated deployments, and popular hosting solutions.
+date: 2016-11-01
+publishdate: 2016-11-01
+lastmod: 2016-11-01
+categories: [hosting and deployment]
+keywords: []
+menu:
+ docs:
+ parent: "hosting-and-deployment"
+ weight: 01
+weight: 01 #rem
+draft: false
+aliases: []
+toc: false
+---
+
+Because Hugo renders *static* websites, you can host your new Hugo website virtually anywhere. The following represent only a few of the more popular hosting and automated deployment solutions used by the Hugo community.
diff --git a/docs/content/en/hosting-and-deployment/deployment-with-nanobox.md b/docs/content/en/hosting-and-deployment/deployment-with-nanobox.md
new file mode 100644
index 000000000..1ab77c401
--- /dev/null
+++ b/docs/content/en/hosting-and-deployment/deployment-with-nanobox.md
@@ -0,0 +1,249 @@
+---
+title: Host-Agnostic Deploys with Nanobox
+linktitle: Host-Agnostic Deploys with Nanobox
+description: Easily deploy Hugo to AWS, DigitalOcean, Google, Azure, and more...
+date: 2017-08-24
+publishdate: 2017-08-24
+lastmod: 2017-08-24
+categories: [hosting and deployment]
+keywords: [nanobox,deployment,hosting,aws,digitalocean,azure,google,linode]
+authors: [Steve Domino]
+menu:
+ docs:
+ parent: "hosting-and-deployment"
+ weight: 05
+weight: 05
+sections_weight: 05
+draft: false
+aliases: [/tutorials/deployment-with-nanobox/]
+toc: true
+---
+
+![hugo with nanobox](/images/hosting-and-deployment/deployment-with-nanobox/hugo-with-nanobox.png)
+
+Nanobox provides an entire end-to-end workflow for developing and deploying applications. Using Nanobox to deploy also means you'll use it to develop your application.
+
+{{% note %}}
+If you're already using Nanobox and just need deployment instructions, you can skip to [Deploying Hugo with Nanobox](#deploying-hugo-with-nanobox)
+{{% /note %}}
+
+
+## What You'll Need
+
+With Nanobox you don't need to worry about having Go or Hugo installed. They'll be installed as part of the development environment created for you.
+
+To get started you'll just need the following three items:
+
+* [A Nanobox Account](https://nanobox.io) - Signup is free
+* [Nanobox Desktop](https://dashboard.nanobox.io/download) - The free desktop development tool
+* An account with a hosting provider such as:
+ - [AWS](https://docs.nanobox.io/providers/hosting-accounts/aws/)
+ - [Google](https://docs.nanobox.io/providers/hosting-accounts/gcp/)
+ - [Azure](https://docs.nanobox.io/providers/hosting-accounts/azure/)
+ - [DigitalOcean](https://docs.nanobox.io/providers/hosting-accounts/digitalocean/)
+ - [Linode](https://docs.nanobox.io/providers/hosting-accounts/linode/)
+ - [More...](https://docs.nanobox.io/providers/hosting-accounts/)
+ - [Roll Your Own](https://docs.nanobox.io/providers/create/)
+
+### Before You Begin
+
+There are a few things to get out of the way before diving into the guide. To deploy, you'll need to make sure you have connected a host account to your Nanobox account, and launched a new application.
+
+#### Connect a Host Account
+
+Nanobox lets you choose where to host your application (AWS, DigitalOcean, Google, Azure, etc.). In the [Hosting Accounts](https://dashboard.nanobox.io/provider_accounts) section of your Nanobox dashboard [link your Nanobox account with your host](https://docs.nanobox.io/providers/hosting-accounts/).
+
+#### Launch a New Application on Nanobox
+
+[Launching a new app on Nanobox](https://docs.nanobox.io/workflow/launch-app/) is very simple. Navigate to [Launch New App](https://dashboard.nanobox.io/apps/new) in the dashboard, and follow the steps there. You'll be asked to name your app, and to select a host and region.
+
+With those out of the way you're ready to get started!
+
+
+## Getting Started
+
+{{% note %}}
+If you already have a functioning Hugo app, you can skip to [Configure Hugo to run with Nanobox](#configure-hugo-to-run-with-nanobox)
+{{% /note %}}
+
+To get started, all you'll need is an empty project directory. Create a directory wherever you want your application to live and `cd` into it:
+
+`mkdir path/to/project && cd path/to/project`
+
+### Configure Hugo to run with Nanobox
+
+Nanobox uses a simple config file known as a [boxfile.yml](https://docs.nanobox.io/boxfile/) to describe your application's infrastructure. In the root of your project add the following `boxfile.yml`:
+
+{{< code file="boxfile.yml" >}}
+run.config:
+
+ # use the static engine
+ engine: static
+ engine.config:
+
+ # tell the engine where to serve static assets from
+ rel_dir: public
+
+ # enable file watching for live reload
+ fs_watch: true
+
+ # install hugo
+ extra_steps:
+ - bash ./install.sh
+
+deploy.config:
+
+ # generate site on deploy
+ extra_steps:
+ - hugo
+
+{{< /code >}}
+
+{{% note %}}
+If you already have a functioning Hugo app, after adding the boxfile, you can skip to [Deploying Hugo with Nanobox](#deploying-hugo-with-nanobox).
+{{% /note %}}
+
+### Installing Hugo
+
+Nanobox uses Docker to create instant, isolated, development environments. Because of this, you'll need to make sure that during development you have Hugo available.
+
+Do this by adding a custom install script at the root of your project that will install Hugo automatically for you:
+
+{{< code file="install.sh" >}}
+
+#!/bin/bash
+
+if [[ ! -f /data/bin/hugo ]]; then
+ cd /tmp
+ wget https://github.com/gohugoio/hugo/releases/download/v0.31.1/hugo_0.31.1_Linux-64bit.tar.gz
+ tar -xzf hugo_0.31.1_Linux-64bit.tar.gz
+ mv hugo /data/bin/hugo
+ cd -
+ rm -rf /tmp/*
+fi
+
+{{< /code >}}
+
+{{% note %}}
+If the install script fails during `nanobox run` you may need to make it executable with `chmod +x install.sh`
+{{% /note %}}
+{{% note %}}
+Make sure to check the version of Hugo you have installed and update the install script to match.
+{{% /note %}}
+
+### Generating a New Hugo App
+
+You'll generate your new application from inside the Nanobox VM (this is why you don't need to worry about having Go or Hugo installed).
+
+Run the following command to drop into a Nanobox console (inside the VM) where your codebase is mounted:
+
+```
+nanobox run
+```
+
+![nanobox run](/images/hosting-and-deployment/deployment-with-nanobox/nanobox-run.png)
+
+Once inside the console use the following steps to create a new Hugo application:
+
+```
+# cd into the /tmp dir to create an app
+cd /tmp
+
+# generate the hugo app
+hugo new site app
+
+# cd back into the /app dir
+cd -
+
+# copy the generated app into the project
+shopt -s dotglob
+cp -a /tmp/app/* .
+```
+
+### Install a theme
+
+`cd` into the `themes` directory and clone the `nanobox-hugo-theme` repo:
+
+```
+cd themes
+git clone https://github.com/sdomino/nanobox-hugo-theme
+```
+
+To use the theme *either* copy the entire `config.toml` that comes with the theme, or just add the theme to your existing `config.toml`
+
+```
+# copy the config.toml that comes with the theme
+cp ./themes/nanobox-hugo-theme/config.toml config.toml
+
+# or, add it to your existing config.toml
+theme = "nanobox-hugo-theme"
+```
+
+{{% note %}}
+It is not intended that you use the `nanobox-hugo-theme` as your actual theme. It's simply a theme to start with and should be replaced.
+{{% /note %}}
+
+### View Your App
+
+To view your application simply run the following command from a Nanobox console:
+
+```
+hugo server --bind="0.0.0.0" --baseUrl=$APP_IP
+```
+
+![hugo server](/images/hosting-and-deployment/deployment-with-nanobox/hugo-server.png)
+
+With that you should be able to visit your app at the given IP:1313 address
+
+{{% note %}}
+You can [add a custom DNS alias](https://docs.nanobox.io/cli/dns/#add) to make it easier to access your app. Run `nanobox dns add local hugo.dev`. After starting your server, visit your app at [hugo.dev:1313](http://hugo.dev:1313)
+{{% /note %}}
+
+### Develop, Develop, Develop
+
+{{% note %}}
+IMPORTANT: One issue we are aware of, and actively investigating, is livereload. Currently, livereload does not work when developing Hugo applications with Nanobox.
+{{% /note %}}
+
+With Hugo installed you're ready to go. Develop Hugo like you would normally (using all the generators, etc.). Once your app is ready to deploy, run `hugo` to generate your static assets and get ready to deploy!
+
+
+## Deploying Hugo with Nanobox
+
+{{% note %}}
+If you haven't already, make sure to [connect a hosting account](#connect-a-host-account) to your Nanobox account, and [launch a new application](#launch-a-new-application-on-nanobox) in the Dashboard.
+{{% /note %}}
+
+To deploy your application to Nanobox you simply need to [link your local codebase](https://docs.nanobox.io/workflow/deploy-code/#add-your-live-app-as-a-remote) to an application you've created on Nanobox. That is done with the following command:
+
+```
+nanobox remote add <your-app-name>
+```
+
+{{% note %}}
+You may be prompted to login using your ***Nanobox credentials*** at this time
+{{% /note %}}
+
+### Stage Your Application (optional)
+
+Nanobox gives you the ability to [simulate your production environment locally](https://docs.nanobox.io/workflow/deploy-code/#preview-locally). While staging is optional it's always recommended, so there's no reason not to!
+
+To stage your app simply run:
+
+```
+nanobox deploy dry-run
+```
+
+Now visit your application with the IP address provided.
+
+![nanobox deploy dry-run](/images/hosting-and-deployment/deployment-with-nanobox/nanobox-deploy-dry-run.png)
+
+### Deploy Your Application
+
+Once everything checks out and you're [ready to deploy](https://docs.nanobox.io/workflow/deploy-code/#deploy-to-production), simply run:
+
+```
+nanobox deploy
+```
+
+Within minutes you're Hugo app will be deployed to your host and humming along smoothly. That's it!
diff --git a/docs/content/en/hosting-and-deployment/deployment-with-rsync.md b/docs/content/en/hosting-and-deployment/deployment-with-rsync.md
new file mode 100644
index 000000000..ed215eea5
--- /dev/null
+++ b/docs/content/en/hosting-and-deployment/deployment-with-rsync.md
@@ -0,0 +1,157 @@
+---
+title: Deployment with Rsync
+linktitle: Deployment with Rsync
+description: If you have access to your web host with SSH, you can use a simple rsync one-liner to incrementally deploy your entire Hugo website.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2019-10-03
+categories: [hosting and deployment]
+keywords: [rsync,deployment]
+authors: [Adrien Poupin]
+menu:
+ docs:
+ parent: "hosting-and-deployment"
+ weight: 70
+weight: 70
+sections_weight: 70
+draft: false
+aliases: [/tutorials/deployment-with-rsync/]
+toc: true
+notesforauthors:
+---
+
+## Assumptions
+
+* A web host running a web server. This could be a shared hosting environment or a VPS.
+* Access to your web host with SSH
+* A functional static website built with Hugo
+
+The spoiler is that you can deploy your entire website with a command that looks like the following:
+
+```
+hugo && rsync -avz --delete public/ www-data@ftp.topologix.fr:~/www/
+```
+
+As you will see, we'll put this command in a shell script file, which makes building and deployment as easy as executing `./deploy`.
+
+## Copy Your SSH Key to your Host
+
+To make logging in to your server more secure and less interactive, you can upload your SSH key. If you have already installed your SSH key to your server, you can move on to the next section.
+
+First, install the ssh client. On Debian/Ubuntu/derivates, use the following command:
+
+{{< code file="install-openssh.sh" >}}
+sudo apt-get install openssh-client
+{{< /code >}}
+
+Then generate your ssh key. First, create the `.ssh` directory in your home directory if it doesn't exist:
+
+```
+~$ cd && mkdir .ssh & cd .ssh
+```
+
+Next, execute this command to generate a new keypair called `rsa_id`:
+
+```
+~/.ssh/$ ssh-keygen -t rsa -q -C "For SSH" -f rsa_id
+```
+
+You'll be prompted for a passphrase, which is an extra layer of protection. Enter the passphrase you'd like to use, and then enter it again when prompted, or leave it blank if you don't want to have a passphrase. Not using a passphrase will let you transfer files non-interactively, as you won't be prompted for a password when you log in, but it is slightly less secure.
+
+To make logging in easier, add a definition for your web host to the file `~/.ssh/config` with the following command, replacing `HOST` with the IP address or hostname of your web host, and `USER` with the username you use to log in to your web host when transferring files:
+
+```
+~/.ssh/$ cat >> config <<EOF
+Host HOST
+ Hostname HOST
+ Port 22
+ User USER
+ IdentityFile ~/.ssh/rsa_id
+EOF
+```
+
+Then copy your ssh public key to the remote server with the `ssh-copy-id` command:
+
+```
+~/.ssh/$ ssh-copy-id -i rsa_id.pub USER@HOST.com
+```
+
+Now you can easily connect to the remote server:
+
+```
+~$ ssh user@host
+Enter passphrase for key '/home/mylogin/.ssh/rsa_id':
+```
+
+Now that you can log in with your SSH key, let's create a script to automate deployment of your Hugo site.
+
+## Shell Script
+
+Create a new script called `deploy` the root of your Hugo tree:
+
+```
+~/websites/topologix.fr$ editor deploy
+```
+
+Add the following content. Replace the `USER`, `HOST`, and `DIR` values with your own values:
+
+```
+#!/bin/sh
+USER=my-user
+HOST=my-server.com
+DIR=my/directory/to/topologix.fr/ # the directory where your web site files should go
+
+hugo && rsync -avz --delete public/ ${USER}@${HOST}:~/${DIR}
+
+exit 0
+```
+
+Note that `DIR` is the relative path from the remote user's home. If you have to specify a full path (for instance `/var/www/mysite/`) you must change `~/${DIR}` to `${DIR}` inside the command line. For most cases you should not have to.
+
+Save and close, and make the `deploy` file executable:
+
+```
+~/websites/topologix.fr$ chmod +x deploy
+```
+
+Now you only have to enter the following command to deploy and update your website:
+
+```
+~/websites/topologix.fr$ ./deploy
+```
+
+Your site builds and deploys:
+
+```
+Started building sites ...
+Built site for language en:
+0 draft content
+0 future content
+0 expired content
+5 pages created
+0 non-page files copied
+0 paginator pages created
+0 tags created
+0 categories created
+total in 56 ms
+sending incremental file list
+404.html
+index.html
+index.xml
+sitemap.xml
+cours-versailles/index.html
+exercices/index.html
+exercices/index.xml
+exercices/barycentre-et-carres-des-distances/index.html
+posts/
+posts/index.html
+sujets/index.html
+sujets/index.xml
+sujets/2016-09_supelec-jp/index.html
+tarifs-contact/index.html
+
+sent 9,550 bytes received 1,708 bytes 7,505.33 bytes/sec
+total size is 966,557 speedup is 85.86
+```
+
+You can incorporate other proprocessing tasks into this deployment script as well.
diff --git a/docs/content/en/hosting-and-deployment/hosting-on-aws-amplify.md b/docs/content/en/hosting-and-deployment/hosting-on-aws-amplify.md
new file mode 100644
index 000000000..34a21e9e9
--- /dev/null
+++ b/docs/content/en/hosting-and-deployment/hosting-on-aws-amplify.md
@@ -0,0 +1,57 @@
+---
+title: Host on AWS Amplify
+linktitle: Host on AWS Amplify
+description: Develop and deploy a cloud-powered web app with AWS Amplify.
+date: 2018-01-31
+publishdate: 2018-01-31
+lastmod: 2018-01-31
+categories: [hosting and deployment]
+keywords: [amplify,hosting,deployment]
+authors: [Nikhil Swaminathan]
+menu:
+ docs:
+ parent: "hosting-and-deployment"
+ weight: 10
+weight: 10
+sections_weight: 10
+draft: false
+aliases: []
+toc: true
+---
+
+In this guide we'll walk through how to deploy and host your Hugo site using the [AWS Amplify Console](https://console.amplify.aws).
+
+AWS Amplify is a combination of client library, CLI toolchain, and a Console for continuous deployment and hosting. The Amplify CLI and library allow developers to get up & running with full-stack cloud-powered applications with features like authentication, storage, serverless GraphQL or REST APIs, analytics, Lambda functions, & more. The Amplify Console provides continuous deployment and hosting for modern web apps (single page apps and static site generators). Continuous deployment allows developers to deploy updates to their web app on every code commit to their Git repository. Hosting includes features such as globally available CDNs, easy custom domain setup + HTTPS, feature branch deployments, and password protection.
+
+## Pre-requisites
+
+* [Sign up for an AWS Account](https://portal.aws.amazon.com/billing/signup?redirect_url=https%3A%2F%2Faws.amazon.com%2Fregistration-confirmation). There are no upfront charges or any term commitments to create an AWS account and signing up gives you immediate access to the AWS Free Tier.
+* You have an account with GitHub, GitLab, or Bitbucket.
+* You have completed the [Quick Start][] or have a Hugo website you are ready to deploy and share with the world.
+
+## Hosting
+
+1. Log in to the [AWS Amplify Console](https://console.aws.amazon.com/amplify/home) and choose Get Started under Deploy.
+ ![Hugo Amplify](/images/hosting-and-deployment/hosting-on-aws-amplify/amplify-gettingstarted.png)
+
+1. Connect a branch from your GitHub, Bitbucket, GitLab, or AWS CodeCommit repository. Connecting your repository allows Amplify to deploy updates on every code commit to a branch.
+ ![Hugo Amplify](/images/hosting-and-deployment/hosting-on-aws-amplify/amplify-connect-repo.gif)
+
+1. Accept the default build settings. The Amplify Console automatically detects your Hugo build settings and output directory.
+ ![Hugo Amplify](/images/hosting-and-deployment/hosting-on-aws-amplify/amplify-build-settings.png)
+
+1. Review your changes and then choose **Save and deploy**. The Amplify Console will pull code from your repository, build changes to the backend and frontend, and deploy your build artifacts at `https://master.unique-id.amplifyapp.com`. Bonus: Screenshots of your app on different devices to find layout issues.
+
+## Using a Newer Version of Hugo
+
+If you need to use a different, perhaps newer, version of Hugo than the version currently supported by AWS Amplify:
+
+1. Visit the [AWS Amplify Console](https://console.aws.amazon.com/amplify/home), and click the app you would like to modify
+1. In the side navigation bar, Under App Settings, click **Build settings**
+1. On the Build settings page, near the bottom, there is a section called **Build image settings**. Click **Edit**
+1. Under **Live package updates**, click **Add package version override**
+1. From the selection, click **Hugo** and ensure the version field says `latest`
+1. Click **Save** to save the changes.
+
+
+[Quick Start]: /getting-started/quick-start/
diff --git a/docs/content/en/hosting-and-deployment/hosting-on-bitbucket.md b/docs/content/en/hosting-and-deployment/hosting-on-bitbucket.md
new file mode 100644
index 000000000..9ab926751
--- /dev/null
+++ b/docs/content/en/hosting-and-deployment/hosting-on-bitbucket.md
@@ -0,0 +1,141 @@
+---
+title: Host on Bitbucket
+linktitle: Host on Bitbucket
+description: You can use Bitbucket in conjunction with Aerobatic to build, deploy, and host a Hugo website.
+date: 2017-02-04
+publishdate: 2017-02-04
+lastmod: 2017-02-04
+categories: [hosting and deployment]
+keywords: [hosting,bitbucket,deployment,aerobatic]
+authors: [Jason Gowans]
+menu:
+ docs:
+ parent: "hosting-and-deployment"
+ weight: 50
+weight: 50
+sections_weight: 50
+draft: false
+toc: true
+aliases: [/tutorials/hosting-on-bitbucket/]
+---
+
+You can use [Bitbucket](https://bitbucket.org/) and [Aerobatic](https://www.aerobatic.com) to build, deploy, and host a Hugo website. Aerobatic is a static hosting service that integrates with Bitbucket and provides a free hosting tier.
+
+## Assumptions
+
+* Working familiarity with Git for version control
+* A [Bitbucket account](https://bitbucket.org/account/signup/)
+
+## Install Aerobatic CLI
+
+If you haven't previously used Aerobatic, you'll first need to install the Command Line Interface (CLI) and create an account. For a list of all commands available, see the [Aerobatic CLI](https://www.aerobatic.com/docs/cli/) docs.
+
+```
+npm install aerobatic-cli -g
+aero register
+```
+
+## Create and Deploy Site
+
+```
+hugo new site my-new-hugo-site
+cd my-new-hugo-site
+cd themes; git clone https://github.com/eliasson/liquorice
+hugo -t liquorice
+aero create # create the Aerobatic site
+hugo --baseURL https://my-new-hugo-site.aerobatic.io # build the site overriding baseURL
+aero deploy -d public # deploy output to Aerobatic
+
+Version v1 deployment complete.
+View now at https://hugo-docs-test.aerobatic.io
+```
+
+In the rendered page response, the `https://__baseurl__` will be replaced with your actual site url (in this example, `https://my-new-hugo-site.aerobatic.io`). You can always rename your Aerobatic website with the `aero rename` command.
+
+## Push Hugo site to Bitbucket
+
+We will now create a git repository and then push our code to Bitbucket. In Bitbucket, create a repository.
+
+![Bitbucket Screenshot][1]
+
+[1]: /images/hosting-and-deployment/hosting-on-bitbucket/bitbucket-create-repo.png
+
+```
+# initialize new git repository
+git init
+
+# set up our .gitignore file
+echo -e "/public \n/themes \naero-deploy.tar.gz" >> .gitignore
+
+# commit and push code to master branch
+git add --all
+git commit -m "Initial commit"
+git remote add origin git@bitbucket.org:YourUsername/my-new-hugo-site.git
+git push -u origin master
+```
+
+## Continuous Deployment With Bitbucket Pipelines
+
+In the example above, we pushed the compiled assets in the `/public` folder to Aerobatic. In the following example, we use Bitbucket Pipelines to continuously create and deploy the compiled assets to Aerobatic.
+
+### Step 1: Configure Bitbucket Pipelines
+
+In your Hugo website's Bitbucket repo;
+
+1. Click the Pipelines link in the left nav menu of your Bitbucket repository.
+2. Click the Enable Pipelines button.
+3. On the next screen, leave the default template and click Next.
+4. In the editor, paste in the yaml contents below and click Commit.
+
+```
+image: beevelop/nodejs-python
+pipelines:
+ branches:
+ master:
+ - step:
+ script:
+ - apt-get update -y && apt-get install wget
+ - apt-get -y install git
+ - wget https://github.com/gohugoio/hugo/releases/download/v0.18/hugo_0.18-64bit.deb
+ - dpkg -i hugo*.deb
+ - git clone https://github.com/eliasson/liquorice themes/liquorice
+ - hugo --theme=liquorice --baseURL https://__baseurl__ --buildDrafts
+ - npm install -g aerobatic-cli
+ - aero deploy
+```
+
+### Step 2: Create `AEROBATIC_API_KEY` environment variable.
+
+This step only needs to be done once per account. From the command line;
+
+```
+aero apikey
+```
+
+1. Navigate to the Bitbucket account settings for the account that the website repo belongs to.
+2. Scroll down to the bottom of the left nav and click the Environment variables link in the PIPELINES section.
+3. Create a new environment variable called AEROBATIC_API_KEY with the value you got by running the `aero apikey` command. Be sure to click the Secured checkbox.
+
+### Step 3: Edit and Commit Code
+
+```
+hugo new posts/good-to-great.md
+hugo server --buildDrafts -t liquorice #Check that all looks good
+
+# commit and push code to master branch
+git add --all
+git commit -m "New blog post"
+git push -u origin master
+```
+
+Your code will be committed to Bitbucket, Bitbucket Pipelines will run your build, and a new version of your site will be deployed to Aerobatic.
+
+At this point, you can now create and edit blog posts directly in the Bitbucket UI.
+
+![Bitbucket blog Screenshot][2]
+
+[2]: /images/hosting-and-deployment/hosting-on-bitbucket/bitbucket-blog-post.png
+
+## Suggested next steps
+
+The code for this example can be found in this Bitbucket [repository](https://bitbucket.org/dundonian/hugo-docs-test). Aerobatic also provides a number of additional [plugins](https://www.aerobatic.com/docs) such as auth and redirects that you can use for your Hugo site.
diff --git a/docs/content/en/hosting-and-deployment/hosting-on-firebase.md b/docs/content/en/hosting-and-deployment/hosting-on-firebase.md
new file mode 100644
index 000000000..3a4039f90
--- /dev/null
+++ b/docs/content/en/hosting-and-deployment/hosting-on-firebase.md
@@ -0,0 +1,89 @@
+---
+title: Host on Firebase
+linktitle: Host on Firebase
+description: You can use Firebase's free tier to host your static website; this also gives you access to Firebase's NOSQL API.
+date: 2017-03-12
+publishdate: 2017-03-12
+lastmod: 2017-03-15
+categories: [hosting and deployment]
+keywords: [hosting,firebase]
+authors: [Michel Racic]
+menu:
+ docs:
+ parent: "hosting-and-deployment"
+ weight: 20
+weight: 20
+sections_weight: 20
+draft: false
+toc: true
+aliases: []
+---
+
+## Assumptions
+
+1. You have an account with [Firebase][signup]. (If you don't, you can sign up for free using your Google account.)
+2. You have completed the [Quick Start][] or have a completed Hugo website ready for deployment.
+
+## Initial setup
+
+Go to the [Firebase console][console] and create a new project (unless you already have a project). You will need to globally install `firebase-tools` (node.js):
+
+```
+npm install -g firebase-tools
+```
+
+Log in to Firebase (setup on your local machine) using `firebase login`, which opens a browser where you can select your account. Use `firebase logout` in case you are already logged in but to the wrong account.
+
+
+```
+firebase login
+```
+In the root of your Hugo project, initialize the Firebase project with the `firebase init` command:
+
+```
+firebase init
+```
+From here:
+
+1. Choose Hosting in the feature question
+2. Choose the project you just set up
+3. Accept the default for your database rules file
+4. Accept the default for the publish directory, which is `public`
+5. Choose "No" in the question if you are deploying a single-page app
+
+## Deploy
+
+To deploy your Hugo site, execute the `firebase deploy` command, and your site will be up in no time:
+
+```
+hugo && firebase deploy
+```
+
+## CI Setup
+
+You can generate a deploy token using
+
+
+```
+firebase login:ci
+```
+
+You can also set up your CI (e.g., with [Wercker][]) and add the token to a private variable like `$FIREBASE_DEPLOY_TOKEN`.
+
+{{% note %}}
+This is a private secret and it should not appear in a public repository. Make sure you understand your chosen CI and that it's not visible to others.
+{{% /note %}}
+
+You can then add a step in your build to do the deployment using the token:
+
+```
+firebase deploy --token $FIREBASE_DEPLOY_TOKEN
+```
+
+## Reference links
+
+* [Firebase CLI Reference](https://firebase.google.com/docs/cli/#administrative_commands)
+
+[console]: https://console.firebase.google.com
+[Quick Start]: /getting-started/quick-start/
+[signup]: https://console.firebase.google.com/
diff --git a/docs/content/en/hosting-and-deployment/hosting-on-github.md b/docs/content/en/hosting-and-deployment/hosting-on-github.md
new file mode 100644
index 000000000..675a696d3
--- /dev/null
+++ b/docs/content/en/hosting-and-deployment/hosting-on-github.md
@@ -0,0 +1,114 @@
+---
+title: Host on GitHub
+linktitle: Host on GitHub
+description: Deploy Hugo as a GitHub Pages project or personal/organizational site and automate the whole process with Github Action Workflow
+date: 2014-03-21
+publishdate: 2014-03-21
+categories: [hosting and deployment]
+keywords: [github,git,deployment,hosting]
+authors: [Spencer Lyon, Gunnar Morling]
+menu:
+ docs:
+ parent: "hosting-and-deployment"
+ weight: 30
+weight: 30
+sections_weight: 30
+toc: true
+aliases: [/tutorials/github-pages-blog/]
+---
+
+GitHub provides free and fast static hosting over SSL for personal, organization, or project pages directly from a GitHub repository via its [GitHub Pages service][] and automating development workflows and build with [GitHub Actions].
+
+## Assumptions
+
+1. You have Git 2.8 or greater [installed on your machine][installgit].
+2. You have a GitHub account. [Signing up][ghsignup] for GitHub is free.
+3. You have a ready-to-publish Hugo website or have at least completed the [Quick Start][].
+
+## Types of GitHub Pages
+
+There are two types of GitHub Pages:
+
+- User/Organization Pages (`https://<USERNAME|ORGANIZATION>.github.io/`)
+- Project Pages (`https://<USERNAME|ORGANIZATION>.github.io/<PROJECT>/`)
+
+Please refer to the [GitHub Pages documentation][ghorgs] to decide which type of site you would like to create as it will determine which of the below methods to use.
+
+## GitHub User or Organization Pages
+
+As mentioned in the [GitHub Pages documentation][ghorgs], you can host a user/organization page in addition to project pages. Here are the key differences in GitHub Pages websites for Users and Organizations:
+
+1. You must use a `<USERNAME>.github.io` to host your **generated** content
+2. Content from the `main` branch will be used to publish your GitHub Pages site
+
+This is a much simpler setup as your Hugo files and generated content are published into two different repositories.
+
+## Build Hugo With GitHub Action
+
+GitHub executes your software development workflows. Everytime you push your code on the Github repository, Github Actions will build the site automatically.
+
+Create a file in `.github/workflows/gh-pages.yml` containing the following content (based on [actions-hugo](https://github.com/marketplace/actions/hugo-setup)):
+
+```yml
+name: github pages
+
+on:
+ push:
+ branches:
+ - main # Set a branch to deploy
+ pull_request:
+
+jobs:
+ deploy:
+ runs-on: ubuntu-20.04
+ steps:
+ - uses: actions/checkout@v2
+ with:
+ submodules: true # Fetch Hugo themes (true OR recursive)
+ fetch-depth: 0 # Fetch all history for .GitInfo and .Lastmod
+
+ - name: Setup Hugo
+ uses: peaceiris/actions-hugo@v2
+ with:
+ hugo-version: 'latest'
+ # extended: true
+
+ - name: Build
+ run: hugo --minify
+
+ - name: Deploy
+ uses: peaceiris/actions-gh-pages@v3
+ if: github.ref == 'refs/heads/main'
+ with:
+ github_token: ${{ secrets.GITHUB_TOKEN }}
+ publish_dir: ./public
+```
+
+For more advanced settings [actions-hugo](https://github.com/marketplace/actions/hugo-setup) and [actions-gh-pages](https://github.com/marketplace/actions/github-pages-action).
+
+## Github pages setting
+By default, the GitHub action pushes the generated content to the `gh-pages` branch. This means GitHub has to serve your `gh-pages` branch as a GitHub Pages branch. You can change this setting by going to Settings > GitHub Pages, and change the source branch to `gh-pages`.
+
+## Change baseURL in config.toml
+Don't forget to rename your `baseURL` in `config.toml` with the value `https://<USERNAME>.github.io` for your user repository or `https://<USERNAME>.github.io/<REPOSITORY_NAME>` for a project repository.
+
+Unless this is present in your `config.toml`, your website won't work.
+
+## Use a Custom Domain
+
+If you'd like to use a custom domain for your GitHub Pages site, create a file `static/CNAME`. Your custom domain name should be the only contents inside `CNAME`. Since it's inside `static`, the published site will contain the CNAME file at the root of the published site, which is a requirement of GitHub Pages.
+
+Refer to the [official documentation for custom domains][domains] for further information.
+
+[config]: /getting-started/configuration/
+[domains]: https://help.github.com/articles/using-a-custom-domain-with-github-pages/
+[ghorgs]: https://help.github.com/articles/user-organization-and-project-pages/#user--organization-pages
+[ghpfromdocs]: https://help.github.com/articles/configuring-a-publishing-source-for-github-pages/
+[ghsignup]: https://github.com/join
+[GitHub Pages service]: https://help.github.com/articles/what-is-github-pages/
+[installgit]: https://git-scm.com/downloads
+[orphan branch]: https://git-scm.com/docs/git-checkout/#Documentation/git-checkout.txt---orphanltnewbranchgt
+[Quick Start]: /getting-started/quick-start/
+[submodule]: https://github.com/blog/2104-working-with-submodules
+[worktree feature]: https://git-scm.com/docs/git-worktree
+[GitHub Actions]: https://docs.github.com/en/actions
diff --git a/docs/content/en/hosting-and-deployment/hosting-on-gitlab.md b/docs/content/en/hosting-and-deployment/hosting-on-gitlab.md
new file mode 100644
index 000000000..6634dbbe7
--- /dev/null
+++ b/docs/content/en/hosting-and-deployment/hosting-on-gitlab.md
@@ -0,0 +1,92 @@
+---
+title: Host on GitLab
+linktitle: Host on GitLab
+description: GitLab makes it incredibly easy to build, deploy, and host your Hugo website via their free GitLab Pages service, which provides native support for Hugo.
+date: 2016-06-23
+publishdate: 2016-06-23
+lastmod: 2017-11-16
+categories: [hosting and deployment]
+keywords: [hosting,deployment,git,gitlab]
+authors: [Riku-Pekka Silvola]
+menu:
+ docs:
+ parent: "hosting-and-deployment"
+ weight: 40
+weight: 40
+sections_weight: 40
+draft: false
+toc: true
+wip: false
+aliases: [/tutorials/hosting-on-gitlab/]
+---
+
+[GitLab](https://gitlab.com/) makes it incredibly easy to build, deploy, and host your Hugo website via their free GitLab Pages service, which provides [native support for Hugo, as well as numerous other static site generators](https://gitlab.com/pages/hugo).
+
+## Assumptions
+
+* Working familiarity with Git for version control
+* Completion of the Hugo [Quick Start][]
+* A [GitLab account](https://gitlab.com/users/sign_in)
+* A Hugo website on your local machine that you are ready to publish
+
+## Create .gitlab-ci.yml
+
+```
+cd your-hugo-site
+```
+
+In the root directory of your Hugo site, create a `.gitlab-ci.yml` file. The `.gitlab-ci.yml` configures the GitLab CI on how to build your page. Simply add the content below.
+
+{{< code file=".gitlab-ci.yml" >}}
+image: registry.gitlab.com/pages/hugo:latest
+
+variables:
+ GIT_SUBMODULE_STRATEGY: recursive
+
+pages:
+ script:
+ - hugo
+ artifacts:
+ paths:
+ - public
+ only:
+ - master
+{{< /code >}}
+
+{{% note %}}
+All available Hugo versions are listed [here](https://gitlab.com/pages/hugo/container_registry)
+{{% /note %}}
+
+## Push Your Hugo Website to GitLab
+
+Next, create a new repository on GitLab. It is *not* necessary to make the repository public. In addition, you might want to add `/public` to your .gitignore file, as there is no need to push compiled assets to GitLab or keep your output website in version control.
+
+```
+# initialize new git repository
+git init
+
+# add /public directory to our .gitignore file
+echo "/public" >> .gitignore
+
+# commit and push code to master branch
+git add .
+git commit -m "Initial commit"
+git remote add origin https://gitlab.com/YourUsername/your-hugo-site.git
+git push -u origin master
+```
+
+## Wait for Your Page to Build
+
+That's it! You can now follow the CI agent building your page at `https://gitlab.com/<YourUsername>/<your-hugo-site>/pipelines`.
+
+After the build has passed, your new website is available at `https://<YourUsername>.gitlab.io/<your-hugo-site>/`.
+
+{{% note %}}
+Make sure your `baseURL` key-value in your [site configuration](/getting-started/configuration/) reflects the full URL of your GitLab pages repository if you're using the default GitLab Pages URL (e.g., `https://<YourUsername>.gitlab.io/<your-hugo-site>/`) and not a custom domain.
+{{% /note %}}
+
+## Next Steps
+
+GitLab supports using custom CNAME's and TLS certificates. For more details on GitLab Pages, see the [GitLab Pages setup documentation](https://about.gitlab.com/2016/04/07/gitlab-pages-setup/).
+
+[Quick Start]: /getting-started/quick-start/
diff --git a/docs/content/en/hosting-and-deployment/hosting-on-keycdn.md b/docs/content/en/hosting-and-deployment/hosting-on-keycdn.md
new file mode 100644
index 000000000..8d9cb0e63
--- /dev/null
+++ b/docs/content/en/hosting-and-deployment/hosting-on-keycdn.md
@@ -0,0 +1,94 @@
+---
+title: "Hosting on KeyCDN"
+date: 2017-09-12
+description: "Accelerate your Hugo site globally with a KeyCDN integration. This tutorial shows you how to setup your static site as a GitLab page behind a KeyCDN pull zone."
+categories: [hosting and deployment]
+keywords: [keycdn,hosting,deployment,cdn]
+menu:
+ docs:
+ parent: "hosting-and-deployment"
+ weight: 40
+slug: ""
+aliases: []
+toc: false
+draft: false
+---
+
+[KeyCDN](https://www.keycdn.com/) provides a multitude of features to help accelerate and secure your Hugo site globally including Brotli compression, Let's Encrypt support, Origin Shield, and more.
+
+## Assumptions
+
+- You already have a Hugo page configured
+- You have a GitLab account
+- You have a KeyCDN account
+
+## Create a KeyCDN Pull Zone
+
+The first step will be to login to your KeyCDN account and create a new zone. Name this whatever you like and select the [Pull Zone](https://www.keycdn.com/support/create-a-pull-zone/) option. As for the origin URL, your site will be running on [GitLab Pages](https://docs.gitlab.com/ee/user/project/pages/getting_started_part_one.html) with a URL of `https://youruser.gitlab.io/reponame/`. Use this as the Origin URL.
+
+![Screenshot of KeyCDN's pull zone creation page](/images/hosting-and-deployment/hosting-on-keycdn/keycdn-pull-zone.png)
+
+While the origin location doesn’t exist yet, you will need to use your new Zone URL address (or [Zone Alias](https://www.keycdn.com/support/create-a-zone-alias/)) in the `.gitlab-ci.yml` file that will be uploaded to your GitLab project.
+
+Ensure that you use your Zone URL or Zone alias as the `BASEURL` variable in the example below. This will be the user-visible website address.
+
+## Configure Your .gitlab-ci.yml File
+
+Your `.gitlab-ci.yml` file should look similar to the example below. Be sure to modify any variables that are specific to your setup.
+
+```
+image: alpine:latest
+
+variables:
+ BASEURL: "https://cipull-7bb7.kxcdn.com/"
+ HUGO_VERSION: "0.26"
+ HUGO_CHECKSUM: "67e4ba5ec2a02c8164b6846e30a17cc765b0165a5b183d5e480149baf54e1a50"
+ KEYCDN_ZONE_ID: "75544"
+
+before_script:
+ - apk update
+ - apk add curl
+
+pages:
+ stage: deploy
+ script:
+ - apk add git
+ - git submodule update --init
+ - curl -sSL https://github.com/gohugoio/hugo/releases/download/v${HUGO_VERSION}/hugo_${HUGO_VERSION}_Linux-64bit.tar.gz -o /tmp/hugo.tar.gz
+ - echo "${HUGO_CHECKSUM} /tmp/hugo.tar.gz" | sha256sum -c
+ - tar xf /tmp/hugo.tar.gz hugo -C /tmp/ && cp /tmp/hugo /usr/bin
+ - hugo --baseURL ${BASEURL}
+ - curl "https://api.keycdn.com/zones/purge/${KEYCDN_ZONE_ID}.json" -u "${KEYCDN_API_KEY}:"
+ artifacts:
+ paths:
+ - public
+ only:
+ - master
+
+```
+Using this integration method, you will have to specify the Zone ID and your [KeyCDN API](https://www.keycdn.com/api) key as secret variables. To do this, navigate to the top-left menu bar in GitLab and select Projects. Then, select your project and click on the Settings page. Finally, select Pipelines from the sub-menu and scroll down to the Secret Variable section.
+
+The Secret Variable for your Zone ID should look similar to:
+
+![Screenshot of setting the Zone ID secret variable](/images/hosting-and-deployment/hosting-on-keycdn/secret-zone-id.png)
+
+While the Secret Variable for your API Key will look similar to:
+
+![Screenshot of setting the API Key secret variable](/images/hosting-and-deployment/hosting-on-keycdn/secret-api-key.png)
+
+The Zone ID and API key are used to purge your zone – it’s not strictly needed but otherwise, the CDN might deliver older versions of your assets for quite a while.
+
+## Push Your Changes to GitLab
+
+Now it’s time to push the newly created repository to GitLab:
+
+```
+git remote add origin git@gitlab.com:youruser/ciexample.git
+git push -u origin master
+```
+
+You can watch the progress and CI job output in your Gitlab project under “Pipelines”.
+
+After verifying your CI job ran without issues, first check that your GitLab page shows up under `https://youruser.gitlab.io/reponame/` (it might look broken depending on your browser settings as all links point to your KeyCDN zone – don’t worry about that) and then by heading to whatever Zone alias / Zone URL you defined.
+
+To learn more about Hugo hosting options with KeyCDN, check out the complete [Hugo hosting with KeyCDN integration guide](https://www.keycdn.com/support/hugo-hosting/).
diff --git a/docs/content/en/hosting-and-deployment/hosting-on-netlify.md b/docs/content/en/hosting-and-deployment/hosting-on-netlify.md
new file mode 100644
index 000000000..1e2da8466
--- /dev/null
+++ b/docs/content/en/hosting-and-deployment/hosting-on-netlify.md
@@ -0,0 +1,159 @@
+---
+title: Host on Netlify
+linktitle: Host on Netlify
+description: Netlify can host your Hugo site with CDN, continuous deployment, 1-click HTTPS, an admin GUI, and its own CLI.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-03-11
+categories: [hosting and deployment]
+keywords: [netlify,hosting,deployment]
+authors: [Ryan Watters, Seth MacLeod]
+menu:
+ docs:
+ parent: "hosting-and-deployment"
+ weight: 10
+weight: 10
+sections_weight: 10
+draft: false
+aliases: []
+toc: true
+---
+
+[Netlify][netlify] provides continuous deployment services, global CDN, ultra-fast DNS, atomic deploys, instant cache invalidation, one-click SSL, a browser-based interface, a CLI, and many other features for managing your Hugo website.
+
+## Assumptions
+
+* You have an account with GitHub, GitLab, or Bitbucket.
+* You have completed the [Quick Start][] or have a Hugo website you are ready to deploy and share with the world.
+* You do not already have a Netlify account.
+
+## Create a Netlify account
+
+Go to [app.netlify.com][] and select your preferred signup method. This will likely be a hosted Git provider, although you also have the option to sign up with an email address.
+
+The following examples use GitHub, but other git providers will follow a similar process.
+
+![Screenshot of the homepage for app.netlify.com, containing links to the most popular hosted git solutions.](/images/hosting-and-deployment/hosting-on-netlify/netlify-signup.jpg)
+
+Selecting GitHub will bring up an authorization modal for authentication. Select "Authorize application."
+
+![Screenshot of the authorization popup for Netlify and GitHub.](/images/hosting-and-deployment/hosting-on-netlify/netlify-first-authorize.jpg)
+
+## Create a New Site with Continuous Deployment
+
+You're now already a Netlify member and should be brought to your new dashboard. Select "New site from git."
+
+![Screenshot of the blank Netlify admin panel with no sites and highlighted 'add new site' button'](/images/hosting-and-deployment/hosting-on-netlify/netlify-add-new-site.jpg)
+
+Netlify will then start walking you through the steps necessary for continuous deployment. First, you'll need to select your git provider again, but this time you are giving Netlify added permissions to your repositories.
+
+![Screenshot of step 1 of create a new site for Netlify: selecting the git provider](/images/hosting-and-deployment/hosting-on-netlify/netlify-create-new-site-step-1.jpg)
+
+And then again with the GitHub authorization modal:
+
+![Screenshot of step 1 of create a new site for Netlify: selecting the git provider](/images/hosting-and-deployment/hosting-on-netlify/netlify-authorize-added-permissions.jpg)
+
+Select the repo you want to use for continuous deployment. If you have a large number of repositories, you can filter through them in real time using repo search:
+
+![Screenshot of step 1 of create a new site for Netlify: selecting the git provider](/images/hosting-and-deployment/hosting-on-netlify/netlify-create-new-site-step-2.jpg)
+
+Once selected, you'll be brought to a screen for basic setup. Here you can select the branch you wanted published, your [build command][], and your publish (i.e. deploy) directory. The publish directory should mirror that of what you've set in your [site configuration][config], the default of which is `public`. The following steps assume you are publishing from the `master` branch.
+
+## Configure Hugo Version in Netlify
+
+You can [set Hugo version](https://www.netlify.com/blog/2017/04/11/netlify-plus-hugo-0.20-and-beyond/) for your environments in `netlify.toml` file or set `HUGO_VERSION` as a build environment variable in the Netlify console.
+
+For production:
+
+{{< code file="netlify.toml" codeLang="toml" >}}
+[context.production.environment]
+ HUGO_VERSION = "0.83.1"
+{{< /code >}}
+
+For testing:
+
+{{< code file="netlify.toml" codeLang="toml" >}}
+[context.deploy-preview.environment]
+ HUGO_VERSION = "0.83.1"
+{{< /code >}}
+
+The Netlify configuration file can be a little hard to understand and get right for the different environment, and you may get some inspiration and tips from this site's `netlify.toml`:
+
+{{< code file="netlify.toml" nocode="true" >}}
+{{< readfile file="netlify.toml" highlight="toml" >}}
+{{< /code >}}
+
+## Build and Deploy Site
+
+In the Netlify console, selecting "Deploy site" will immediately take you to a terminal for your build:.
+
+![Animated gif of deploying a site to Netlify, including the terminal read out for the build.](/images/hosting-and-deployment/hosting-on-netlify/netlify-deploying-site.gif)
+
+Once the build is finished---this should only take a few seconds--you should now see a "Hero Card" at the top of your screen letting you know the deployment is successful. The Hero Card is the first element that you see in most pages. It allows you to see a quick summary of the page and gives access to the most common/pertinent actions and information. You'll see that the URL is automatically generated by Netlify. You can update the URL in "Settings."
+
+![Screenshot of successful deploy badge at the top of a deployments screen from within the Netlify admin.](/images/hosting-and-deployment/hosting-on-netlify/netlify-deploy-published.jpg)
+
+![Screenshot of homepage to https://hugo-netlify-example.netlify.com, which is mostly dummy text](/images/hosting-and-deployment/hosting-on-netlify/netlify-live-site.jpg)
+
+[Visit the live site][visit].
+
+Now every time you push changes to your hosted git repository, Netlify will rebuild and redeploy your site.
+
+See [this blog post](https://www.netlify.com/blog/2017/04/11/netlify-plus-hugo-0.20-and-beyond/) for more details about how Netlify handles Hugo versions.
+
+## Use Hugo Themes with Netlify
+
+The [`git clone` method for installing themes][installthemes] is not supported by Netlify. If you were to use `git clone`, it would require you to recursively remove the `.git` subdirectory from the theme folder and would therefore prevent compatibility with future versions of the theme.
+
+A *better* approach is to install a theme as a proper git submodule. You can [read the GitHub documentation for submodules][ghsm] or those found on [Git's website][gitsm] for more information, but the command is similar to that of `git clone`:
+
+```
+cd themes
+git submodule add https://github.com/<THEMECREATOR>/<THEMENAME>
+```
+
+It is recommended to only use stable versions of a theme (if it’s versioned) and always check the changelog. This can be done by checking out a specific release within the theme's directory.
+
+Switch to the theme's directory and list all available versions:
+
+```
+cd themes/<theme>
+git tag
+# exit with q
+```
+
+You can checkout a specific version as follows:
+
+```
+git checkout tags/<version-name>
+```
+
+You can update a theme to the latest version by executing the following command in the *root* directory of your project:
+
+```
+git submodule update --rebase --remote
+```
+
+## Next Steps
+
+You now have a live website served over https, distributed through CDN, and configured for continuous deployment. Dig deeper into the Netlify documentation:
+
+1. [Using a Custom Domain][]
+2. [Setting up HTTPS on Custom Domains][httpscustom]
+3. [Redirects and Rewrite Rules][]
+
+
+[app.netlify.com]: https://app.netlify.com
+[build command]: /getting-started/usage/#the-hugo-command
+[config]: /getting-started/configuration/
+[ghsm]: https://github.com/blog/2104-working-with-submodules
+[gitsm]: https://git-scm.com/book/en/v2/Git-Tools-Submodules
+[httpscustom]: https://www.netlify.com/docs/ssl/
+[hugoversions]: https://github.com/netlify/build-image/blob/master/Dockerfile#L216
+[installthemes]: /themes/installing/
+[netlify]: https://www.netlify.com/
+[netlifysignup]: https://app.netlify.com/signup
+[Quick Start]: /getting-started/quick-start/
+[Redirects and Rewrite Rules]: https://www.netlify.com/docs/redirects/
+[Using a Custom Domain]: https://www.netlify.com/docs/custom-domains/
+[visit]: https://hugo-netlify-example.netlify.com
diff --git a/docs/content/en/hosting-and-deployment/hosting-on-render.md b/docs/content/en/hosting-and-deployment/hosting-on-render.md
new file mode 100644
index 000000000..7a77742e2
--- /dev/null
+++ b/docs/content/en/hosting-and-deployment/hosting-on-render.md
@@ -0,0 +1,92 @@
+---
+title: Host on Render
+linktitle: Host on Render
+description: Host your Hugo site for free with Render's global CDN, fully-managed SSL and auto deploys from GitHub.
+date: 2019-06-06
+publishdate: 2019-06-06
+lastmod: 2020-01-01
+categories: [hosting and deployment]
+keywords: [hosting,deployment]
+authors: [Anurag Goel]
+menu:
+ docs:
+ parent: "hosting-and-deployment"
+ weight: 10
+weight: 10
+sections_weight: 10
+draft: false
+aliases: []
+toc: true
+---
+
+## Introduction
+
+[Render](https://render.com) is a fully-managed cloud platform where you can host static sites, backend APIs, databases, cron jobs, and all your other apps in one place.
+
+Static sites are **completely free** on Render and include the following:
+
+- Continuous, automatic builds & deploys from [GitHub](https://render.com/docs/github) and [GitLab](https://render.com/docs/gitlab).
+- Automatic SSL certificates through [Let's Encrypt](https://letsencrypt.org).
+- Instant cache invalidation with a lightning fast, global CDN.
+- Unlimited collaborators.
+- Unlimited [custom domains](https://render.com/docs/custom-domains).
+- Automatic [Brotli compression](https://en.wikipedia.org/wiki/Brotli) for faster sites.
+- Native HTTP/2 support.
+- [Pull Request Previews](https://render.com/docs/pull-request-previews).
+- Automatic HTTP → HTTPS redirects.
+- Custom URL redirects and rewrites.
+
+## Assumptions
+
+* You have an account with GitHub or GitLab.
+* You have completed the [Quick Start][] or have a Hugo website you are ready to deploy and share with the world.
+* You have a Render account. You can sign up at https://render.com/register.
+
+## Deployment
+
+You can set up a Hugo site on Render in two quick steps:
+
+1. Create a new **Static Site** on Render, and give Render permission to access your GitHub/Gitlab repo.
+2. Use the following values during creation:
+
+ Field | Value
+ ------------------- | -------------------
+ **Build Command** | `hugo --gc --minify` (or your own build command)
+ **Publish Directory** | `public` (or your own output directory)
+
+That's it! Your site will be live on your Render URL (which looks like `yoursite.onrender.com`) as soon as the build is done.
+
+## Continuous Deploys
+
+Now that Render is connected to your repo, it will **automatically build and publish your site** any time you push to your GitHub/Gitlab.
+
+You can choose to disable auto deploys under the **Settings** section for your site and deploy it manually from the Render dashboard.
+
+## CDN and Cache Invalidation
+
+Render hosts your site on a global, lightning fast CDN which ensures the fastest possible download times for all your users across the globe.
+
+Every deploy automatically and instantly invalidates the CDN cache, so your users can always access the latest content on your site.
+
+## Custom Domains
+
+Add your own domains to your site easily using Render's [custom domains](https://render.com/docs/custom-domains) guide.
+
+## Pull Request Previews
+
+With Pull Request (PR) previews, you can visualize changes introduced in a pull request instead of simply relying on code reviews.
+
+Once enabled, every PR for your site will automatically generate a new static site based on the code in the PR. It will have its own URL, and it will be deleted automatically when the PR is closed.
+
+Read more about [Pull Request Previews](https://render.com/docs/pull-request-previews) on Render.
+
+## Hugo Themes
+
+Render automatically downloads all Git submodules defined in your Git repo on every build. This way Hugo themes added as submodules work as expected.
+
+## Support
+
+Chat with Render developers at https://render.com/chat or email `support@render.com` if you need help.
+
+
+[Quick Start]: /getting-started/quick-start/
diff --git a/docs/content/en/hosting-and-deployment/hugo-deploy.md b/docs/content/en/hosting-and-deployment/hugo-deploy.md
new file mode 100644
index 000000000..da7f77c61
--- /dev/null
+++ b/docs/content/en/hosting-and-deployment/hugo-deploy.md
@@ -0,0 +1,143 @@
+---
+title: Hugo Deploy
+linktitle: Hugo Deploy
+description: You can upload your site to GCS, S3, or Azure using the Hugo CLI.
+date: 2019-05-30
+publishdate: 2019-05-30
+lastmod: 2021-05-03
+categories: [hosting and deployment]
+keywords: [s3,gcs,azure,hosting,deployment]
+authors: [Robert van Gent]
+menu:
+ docs:
+ parent: "hosting-and-deployment"
+ weight: 2
+weight: 2
+sections_weight: 2
+draft: false
+aliases: []
+toc: true
+---
+
+You can use the "hugo deploy" command to upload your site directly to a Google Cloud Storage (GCS) bucket, an AWS S3 bucket, and/or an Azure Storage container.
+
+## Assumptions
+
+* You have completed the [Quick Start][] or have a Hugo website you are ready to deploy and share with the world.
+* You have an account with the service provider ([Google Cloud](https://cloud.google.com/), [AWS](https://aws.amazon.com), or [Azure](https://azure.microsoft.com)) that you want to deploy to.
+* You have authenticated.
+ * Google Cloud: [Install the CLI](https://cloud.google.com/sdk) and run [`gcloud auth login`](https://cloud.google.com/sdk/gcloud/reference/auth/login).
+ * AWS: [Install the CLI](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html) and run [`aws configure`](https://docs.aws.amazon.com/cli/latest/userguide/cli-chap-configure.html).
+ * Azure: [Install the CLI](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli) and run [`az login`](https://docs.microsoft.com/en-us/cli/azure/authenticate-azure-cli).
+ * NOTE: Each service supports alternatives for authentication, including using environment variables. See [here](https://gocloud.dev/howto/blob/#services) for more details.
+
+## Create a bucket to deploy to
+
+Create a storage bucket to deploy your site to. If you want your site to be
+public, be sure to configure the bucket to be publicly readable.
+
+### Google Cloud Storage (GCS)
+
+Follow the [GCS instructions for how to create a bucket](https://cloud.google.com/storage/docs/creating-buckets).
+
+### AWS S3
+
+Follow the [AWS instructions for how to create a bucket](https://docs.aws.amazon.com/AmazonS3/latest/gsg/CreatingABucket.html).
+
+### Azure Storage
+
+Follow the [Azure instructions for how to create a storage container](https://docs.microsoft.com/en-us/azure/storage/blobs/storage-quickstart-blobs-portal).
+
+## Configure the deployment
+
+In the configuration file for your site, add a `[deployment]` section with one
+or more `[[deployment.targets]]` section, one for each deployment target. Here's
+a detailed example:
+
+```toml
+[deployment]
+# By default, files are uploaded in an arbitrary order.
+# Files that match the regular expressions in the "Order" list
+# will be uploaded first, in the listed order.
+order = [".jpg$", ".gif$"]
+
+
+[[deployment.targets]]
+# An arbitrary name for this target.
+name = "mydeployment"
+# The Go Cloud Development Kit URL to deploy to. Examples:
+# GCS; see https://gocloud.dev/howto/blob/#gcs
+# URL = "gs://<Bucket Name>"
+
+# S3; see https://gocloud.dev/howto/blob/#s3
+# For S3-compatible endpoints, see https://gocloud.dev/howto/blob/#s3-compatible
+# URL = "s3://<Bucket Name>?region=<AWS region>"
+
+# Azure Blob Storage; see https://gocloud.dev/howto/blob/#azure
+# URL = "azblob://$web"
+
+# You can use a "prefix=" query parameter to target a subfolder of the bucket:
+# URL = "gs://<Bucket Name>?prefix=a/subfolder/"
+
+# If you are using a CloudFront CDN, deploy will invalidate the cache as needed.
+cloudFrontDistributionID = <ID>
+
+# Optionally, you can include or exclude specific files.
+# See https://godoc.org/github.com/gobwas/glob#Glob for the glob pattern syntax.
+# If non-empty, the pattern is matched against the local path.
+# All paths are matched against in their filepath.ToSlash form.
+# If exclude is non-empty, and a local or remote file's path matches it, that file is not synced.
+# If include is non-empty, and a local or remote file's path does not match it, that file is not synced.
+# As a result, local files that don't pass the include/exclude filters are not uploaded to remote,
+# and remote files that don't pass the include/exclude filters are not deleted.
+# include = "**.html" # would only include files with ".html" suffix
+# exclude = "**.{jpg, png}" # would exclude files with ".jpg" or ".png" suffix
+
+
+# [[deployment.matchers]] configure behavior for files that match the Pattern.
+# See https://golang.org/pkg/regexp/syntax/ for pattern syntax.
+# Pattern searching is stopped on first match.
+
+# Samples:
+
+[[deployment.matchers]]
+# Cache static assets for 1 year.
+pattern = "^.+\\.(js|css|svg|ttf)$"
+cacheControl = "max-age=31536000, no-transform, public"
+gzip = true
+
+[[deployment.matchers]]
+pattern = "^.+\\.(png|jpg)$"
+cacheControl = "max-age=31536000, no-transform, public"
+gzip = false
+
+[[deployment.matchers]]
+# Set custom content type for /sitemap.xml
+pattern = "^sitemap\\.xml$"
+contentType = "application/xml"
+gzip = true
+
+[[deployment.matchers]]
+pattern = "^.+\\.(html|xml|json)$"
+gzip = true
+```
+
+## Deploy
+
+To deploy to a target:
+
+```bash
+hugo deploy [--target=<target name>, defaults to first target]
+```
+
+Hugo will identify and apply any local changes that need to be reflected to the
+remote target. You can use `--dryRun` to see the changes without applying them,
+or `--confirm` to be prompted before making changes.
+
+See `hugo help deploy` for more command-line options.
+
+[Quick Start]: /getting-started/quick-start/
+[Google Cloud]: [https://cloud.google.com]
+[AWS]: [https://aws.amazon.com]
+[Azure]: [https://azure.microsoft.com]
+
diff --git a/docs/content/en/hugo-modules/_index.md b/docs/content/en/hugo-modules/_index.md
new file mode 100644
index 000000000..2b02a559e
--- /dev/null
+++ b/docs/content/en/hugo-modules/_index.md
@@ -0,0 +1,32 @@
+---
+title: Hugo Modules
+linktitle: Hugo Modules Overview
+description: How to use Hugo Modules.
+date: 2017-02-01
+publishdate: 2017-02-01
+menu:
+ docs:
+ parent: "modules"
+ weight: 01
+weight: 01
+sections_weight: 01
+categories: [hugo modules]
+keywords: [themes,modules]
+draft: false
+aliases: [/themes/overview/,/themes/]
+toc: true
+---
+
+**Hugo Modules** are the core building blocks in Hugo. A _module_ can be your main project or a smaller module providing one or more of the 7 component types defined in Hugo: **static**, **content**, **layouts**, **data**, **assets**, **i18n**, and **archetypes**.
+
+You can combine modules in any combination you like, and even mount directories from non-Hugo projects, forming a big, virtual union file system.
+
+Hugo Modules are powered by Go Modules. For more information about Go Modules, see:
+
+- [https://github.com/golang/go/wiki/Modules](https://github.com/golang/go/wiki/Modules)
+- [https://blog.golang.org/using-go-modules](https://blog.golang.org/using-go-modules)
+
+This is all very much brand new and there are only a few example projects around:
+
+- [https://github.com/bep/docuapi](https://github.com/bep/docuapi) is a theme that has been ported to Hugo Modules while testing this feature. It is a good example of a non-Hugo-project mounted into Hugo’s folder structure. It even shows a JS Bundler implementation in regular Go templates.
+- [https://github.com/bep/my-modular-site](https://github.com/bep/my-modular-site) is a very simple site used for testing.
diff --git a/docs/content/en/hugo-modules/configuration.md b/docs/content/en/hugo-modules/configuration.md
new file mode 100644
index 000000000..9b94061e5
--- /dev/null
+++ b/docs/content/en/hugo-modules/configuration.md
@@ -0,0 +1,169 @@
+---
+title: Configure Modules
+linktitle: Configure Modules
+description: This page describes the configuration options for a module.
+date: 2019-07-24
+categories: [hugo modules]
+keywords: [themes, source, organization, directories]
+menu:
+ docs:
+ parent: "modules"
+ weight: 10
+weight: 10
+sections_weight: 10
+toc: true
+---
+
+## Module Config: Top level
+
+{{< code-toggle file="config">}}
+[module]
+noVendor = ""
+proxy = "direct"
+noProxy = "none"
+private = "*.*"
+replacements = ""
+{{< /code-toggle >}}
+
+
+noVendor {{< new-in "0.75.0" >}}
+: A optional Glob pattern matching module paths to skip when vendoring, e.g. "github.com/**"
+
+vendorClosest {{< new-in "0.81.0" >}}
+: When enabled, we will pick the vendored module closest to the module using it. The default behaviour is to pick the first. Note that there can still be only one dependency of a given module path, so once it is in use it cannot be redefined.
+
+proxy
+: Defines the proxy server to use to download remote modules. Default is `direct`, which means "git clone" and similar.
+
+noProxy
+: Comma separated glob list matching paths that should not use the proxy configured above.
+
+private
+: Comma separated glob list matching paths that should be treated as private.
+
+replacements {{< new-in "0.77.0" >}}
+: A comma separated (or a slice) list of module path to directory replacement mapping, e.g. `"github.com/bep/myprettytheme -> ../..,github.com/bep/shortcodes -> /some/path`. This is mostly useful for temporary locally development of a module, and then it makes sense to set it as an OS environment variable, e.g: `env HUGO_MODULE_REPLACEMENTS="github.com/bep/myprettytheme -> ../.."`. Any relative path is relate to [themesDir](https://gohugo.io/getting-started/configuration/#all-configuration-settings), and absolute paths are allowed.
+
+Note that the above terms maps directly to their counterparts in Go Modules. Some of these setting may be natural to set as OS environment variables. To set the proxy server to use, as an example:
+
+```
+env HUGO_MODULE_PROXY=https://proxy.example.org hugo
+```
+
+{{< gomodules-info >}}
+
+## Module Config: hugoVersion
+
+If your module requires a particular version of Hugo to work, you can indicate that in the `module` section and the user will be warned if using a too old/new version.
+
+{{< code-toggle file="config">}}
+[module]
+[module.hugoVersion]
+ min = ""
+ max = ""
+ extended = false
+
+{{< /code-toggle >}}
+
+Any of the above can be omitted.
+
+min
+: The minimum Hugo version supported, e.g. `0.55.0`
+
+max
+: The maximum Hugo version supported, e.g. `0.55.0`
+
+extended
+: Whether the extended version of Hugo is required.
+
+## Module Config: imports
+
+{{< code-toggle file="config">}}
+[module]
+[[module.imports]]
+ path = "github.com/gohugoio/hugoTestModules1_linux/modh1_2_1v"
+ ignoreConfig = false
+ ignoreImports = false
+ disable = false
+[[module.imports]]
+ path = "my-shortcodes"
+{{< /code-toggle >}}
+
+path
+: Can be either a valid Go Module module path, e.g. `github.com/gohugoio/myShortcodes`, or the directory name for the module as stored in your themes folder.
+
+ignoreConfig
+: If enabled, any module configuration file, e.g. `config.toml`, will not be loaded. Note that this will also stop the loading of any transitive module dependencies.
+
+ignoreImports {{< new-in "0.80.0" >}}
+: If enabled, module imports will not be followed.
+
+disable
+: Set to `true` to disable the module while keeping any version info in the `go.*` files.
+
+noMounts {{< new-in "0.84.2" >}}
+: Do not mount any folder in this import.
+
+noVendor
+: Never vendor this import (only allowed in main project).
+
+{{< gomodules-info >}}
+
+
+## Module Config: mounts
+
+{{% note %}}
+When the `mounts` config was introduced in Hugo 0.56.0, we were careful to preserve the existing `staticDir` and similar configuration to make sure all existing sites just continued to work. But you should not have both: if you add a `mounts` section you should remove the old `staticDir` etc. settings.
+{{% /note %}}
+
+{{% warning %}}
+When you add a mount, the default mount for the concerned target root is ignored: be sure to explicitly add it.
+{{% /warning %}}
+
+**Default mounts**
+{{< code-toggle file="config">}}
+[module]
+[[module.mounts]]
+ source="content"
+ target="content"
+[[module.mounts]]
+ source="static"
+ target="static"
+[[module.mounts]]
+ source="layouts"
+ target="layouts"
+[[module.mounts]]
+ source="data"
+ target="data"
+[[module.mounts]]
+ source="assets"
+ target="assets"
+[[module.mounts]]
+ source="i18n"
+ target="i18n"
+[[module.mounts]]
+ source="archetypes"
+ target="archetypes"
+{{< /code-toggle >}}
+
+source
+: The source directory of the mount. For the main project, this can be either project-relative or absolute and even a symbolic link. For other modules it must be project-relative.
+
+target
+: Where it should be mounted into Hugo's virtual filesystem. It must start with one of Hugo's component folders: `static`, `content`, `layouts`, `data`, `assets`, `i18n`, or `archetypes`. E.g. `content/blog`.
+
+lang
+: The language code, e.g. "en". Only relevant for `content` mounts, and `static` mounts when in multihost mode.
+
+includeFiles (string or slice)
+: One or more [glob](https://github.com/gobwas/glob) patterns matching files or directories to include. If `excludeFiles` is not set, the files matching `includeFiles` will be the files mounted.
+
+The glob patterns are matched to the filenames starting from the `source` root, they should have Unix styled slashes even on Windows, `/` matches the mount root and `**` can be used as a super-asterisk to match recursively down all directories, e.g `/posts/**.jpg`.
+
+The search is case-insensitive.
+
+{{< new-in "0.89.0" >}}
+
+excludeFiles (string or slice)
+: One or more glob patterns matching files to exclude.
+
diff --git a/docs/content/en/hugo-modules/theme-components.md b/docs/content/en/hugo-modules/theme-components.md
new file mode 100644
index 000000000..f1feb636a
--- /dev/null
+++ b/docs/content/en/hugo-modules/theme-components.md
@@ -0,0 +1,54 @@
+---
+title: Theme Components
+linktitle: Theme Components
+description: Hugo provides advanced theming support with Theme Components.
+date: 2017-02-01
+categories: [hugo modules]
+keywords: [themes, theme, source, organization, directories]
+menu:
+ docs:
+ parent: "modules"
+ weight: 50
+weight: 50
+sections_weight: 50
+draft: false
+aliases: [/themes/customize/,/themes/customizing/]
+toc: true
+---
+
+{{% note %}}
+This section contain information that may be outdated and is in the process of being rewritten.
+{{% /note %}}
+Since Hugo `0.42` a project can configure a theme as a composite of as many theme components you need:
+
+{{< code-toggle file="config">}}
+theme = ["my-shortcodes", "base-theme", "hyde"]
+{{< /code-toggle >}}
+
+
+You can even nest this, and have the theme component itself include theme components in its own `config.toml` (theme inheritance).[^1]
+
+The theme definition example above in `config.toml` creates a theme with 3 theme components with precedence from left to right.
+
+For any given file, data entry, etc., Hugo will look first in the project and then in `my-shortcode`, `base-theme`, and lastly `hyde`.
+
+Hugo uses two different algorithms to merge the filesystems, depending on the file type:
+
+* For `i18n` and `data` files, Hugo merges deeply using the translation id and data key inside the files.
+* For `static`, `layouts` (templates), and `archetypes` files, these are merged on file level. So the left-most file will be chosen.
+
+The name used in the `theme` definition above must match a folder in `/your-site/themes`, e.g. `/your-site/themes/my-shortcodes`. There are plans to improve on this and get a URL scheme so this can be resolved automatically.
+
+Also note that a component that is part of a theme can have its own configuration file, e.g. `config.toml`. There are currently some restrictions to what a theme component can configure:
+
+* `params` (global and per language)
+* `menu` (global and per language)
+* `outputformats` and `mediatypes`
+
+The same rules apply here: The left-most param/menu etc. with the same ID will win. There are some hidden and experimental namespace support in the above, which we will work to improve in the future, but theme authors are encouraged to create their own namespaces to avoid naming conflicts.
+
+
+[^1]: For themes hosted on the [Hugo Themes Showcase](https://themes.gohugo.io/) components need to be added as git submodules that point to the directory `exampleSite/themes`
+
+
+
diff --git a/docs/content/en/hugo-modules/use-modules.md b/docs/content/en/hugo-modules/use-modules.md
new file mode 100644
index 000000000..e0d73957a
--- /dev/null
+++ b/docs/content/en/hugo-modules/use-modules.md
@@ -0,0 +1,143 @@
+---
+title: Use Hugo Modules
+linktitle: Use Hugo Modules
+description: How to use Hugo Modules to build and manage your site.
+date: 2019-07-24
+categories: [hugo modules]
+keywords: [install, themes, source, organization, directories,usage,modules]
+menu:
+ docs:
+ parent: "modules"
+ weight: 20
+weight: 20
+sections_weight: 20
+draft: false
+aliases: [/themes/usage/,/themes/installing/,/installing-and-using-themes/]
+toc: true
+---
+
+## Prerequisite
+
+{{< gomodules-info >}}
+
+
+
+## Initialize a New Module
+
+Use `hugo mod init` to initialize a new Hugo Module. If it fails to guess the module path, you must provide it as an argument, e.g.:
+
+```bash
+hugo mod init github.com/gohugoio/myShortcodes
+```
+
+Also see the [CLI Doc](/commands/hugo_mod_init/).
+
+## Use a Module for a Theme
+The easiest way to use a Module for a theme is to import it in the config.
+
+1. Initialize the hugo module system: `hugo mod init github.com/<your_user>/<your_project>`
+2. Import the theme:
+
+{{< code-toggle file="config" >}}
+[module]
+ [[module.imports]]
+ path = "github.com/spf13/hyde"
+{{< /code-toggle >}}
+
+## Update Modules
+
+Modules will be downloaded and added when you add them as imports to your configuration, see [Module Imports](/hugo-modules/configuration/#module-config-imports).
+
+To update or manage versions, you can use `hugo mod get`.
+
+Some examples:
+
+### Update All Modules
+
+```bash
+hugo mod get -u
+```
+
+### Update All Modules Recursively
+
+{{< new-in "0.65.0" >}}
+
+```bash
+hugo mod get -u ./...
+```
+
+### Update One Module
+
+```bash
+hugo mod get -u github.com/gohugoio/myShortcodes
+```
+### Get a Specific Version
+
+```bash
+hugo mod get github.com/gohugoio/myShortcodes@v1.0.7
+```
+
+Also see the [CLI Doc](/commands/hugo_mod_get/).
+
+## Make and test changes in a module
+
+One way to do local development of a module imported in a project is to add a replace directive to a local directory with the source in `go.mod`:
+
+```bash
+replace github.com/bep/hugotestmods/mypartials => /Users/bep/hugotestmods/mypartials
+```
+
+If you have the `hugo server` running, the configuration will be reloaded and `/Users/bep/hugotestmods/mypartials` put on the watch list.
+
+Note that since v.0.77.0 you can use modules config [`replacements`](https://gohugo.io/hugo-modules/configuration/#module-config-top-level) option. {{< new-in "0.77.0" >}}
+
+## Print Dependency Graph
+
+
+Use `hugo mod graph` from the relevant module directory and it will print the dependency graph, including vendoring, module replacement or disabled status.
+
+E.g.:
+
+```
+hugo mod graph
+
+github.com/bep/my-modular-site github.com/bep/hugotestmods/mymounts@v1.2.0
+github.com/bep/my-modular-site github.com/bep/hugotestmods/mypartials@v1.0.7
+github.com/bep/hugotestmods/mypartials@v1.0.7 github.com/bep/hugotestmods/myassets@v1.0.4
+github.com/bep/hugotestmods/mypartials@v1.0.7 github.com/bep/hugotestmods/myv2@v1.0.0
+DISABLED github.com/bep/my-modular-site github.com/spf13/hyde@v0.0.0-20190427180251-e36f5799b396
+github.com/bep/my-modular-site github.com/bep/hugo-fresh@v1.0.1
+github.com/bep/my-modular-site in-themesdir
+
+```
+
+Also see the [CLI Doc](/commands/hugo_mod_graph/).
+
+## Vendor Your Modules
+
+`hugo mod vendor` will write all the module dependencies to a `_vendor` folder, which will then be used for all subsequent builds.
+
+Note that:
+
+* You can run `hugo mod vendor` on any level in the module tree.
+* Vendoring will not store modules stored in your `themes` folder.
+* Most commands accept a `--ignoreVendorPaths` flag, which will then not use the vendored modules in `_vendor` for the module paths matching the [Glob](https://github.com/gobwas/glob) pattern given. Note that before Hugo 0.75 this flag was named `--ignoreVendor` and was a "all or nothing". {{< new-in "0.75.0" >}}
+
+Also see the [CLI Doc](/commands/hugo_mod_vendor/).
+
+
+## Tidy go.mod, go.sum
+
+Run `hugo mod tidy` to remove unused entries in `go.mod` and `go.sum`.
+
+Also see the [CLI Doc](/commands/hugo_mod_clean/).
+
+## Clean Module Cache
+
+Run `hugo mod clean` to delete the entire modules cache.
+
+Note that you can also configure the `modules` cache with a `maxAge`, see [File Caches](/hugo-modules/configuration/#configure-file-caches).
+
+
+
+Also see the [CLI Doc](/commands/hugo_mod_clean/).
diff --git a/docs/content/en/hugo-pipes/_index.md b/docs/content/en/hugo-pipes/_index.md
new file mode 100755
index 000000000..47411072a
--- /dev/null
+++ b/docs/content/en/hugo-pipes/_index.md
@@ -0,0 +1,15 @@
+---
+title: Hugo Pipes Overview
+date: 2018-07-14
+publishdate: 2018-07-14
+lastmod: 2018-07-14
+categories: [asset management]
+keywords: []
+menu:
+ docs:
+ parent: "pipes"
+ weight: 10
+weight: 10
+sections_weight: 10
+draft: false
+--- \ No newline at end of file
diff --git a/docs/content/en/hugo-pipes/babel.md b/docs/content/en/hugo-pipes/babel.md
new file mode 100755
index 000000000..76a1d441d
--- /dev/null
+++ b/docs/content/en/hugo-pipes/babel.md
@@ -0,0 +1,79 @@
+---
+title: Babel
+description: Hugo Pipes can process JS files with Babel.
+date: 2019-03-21
+publishdate: 2019-03-21
+lastmod: 2019-03-21
+categories: [asset management]
+keywords: []
+menu:
+ docs:
+ parent: "pipes"
+ weight: 48
+weight: 48
+sections_weight: 48
+draft: false
+---
+
+Any JavaScript resource file can be transpiled to another JavaScript version using `resources.Babel` which takes for argument the resource object and an optional dict of options listed below. Babel uses the [babel cli](https://babeljs.io/docs/en/babel-cli).
+
+
+{{% note %}}
+Hugo Pipe's Babel requires the `@babel/cli` and `@babel/core` JavaScript packages to be installed in the project or globally (`npm install -g @babel/cli @babel/core`) along with any Babel plugin(s) or preset(s) used (e.g., `npm install @babel/preset-env --save-dev`).
+
+If you are using the Hugo Snap package, Babel and plugin(s) need to be installed locally within your Hugo site directory, e.g., `npm install @babel/cli @babel/core --save-dev` without the `-g` flag.
+{{% /note %}}
+
+
+### Config
+
+{{< new-in "v0.75.0" >}}
+
+In Hugo `v0.75` we improved the way we resolve JS configuration and dependencies. One of them is that we now add the main project's `node_modules` to `NODE_PATH` when running Babel and similar tools. There are some known [issues](https://github.com/babel/babel/issues/5618) with Babel in this area, so if you have a `babel.config.js` living in a Hugo Module (and not in the project itself), we recommend using `require` to load the presets/plugins, e.g.:
+
+
+```js
+module.exports = {
+ presets: [
+ [
+ require('@babel/preset-env'),
+ {
+ useBuiltIns: 'entry',
+ corejs: 3
+ }
+ ]
+ ]
+};
+```
+
+
+
+### Options
+
+config [string]
+: Path to the Babel configuration file. Hugo will, by default, look for a `babel.config.js` in your project. More information on these configuration files can be found here: [babel configuration](https://babeljs.io/docs/en/configuration).
+
+minified [bool]
+: Save as much bytes as possible when printing
+
+noComments [bool]
+: Write comments to generated output (true by default)
+
+compact [bool]
+: Do not include superfluous whitespace characters and line terminators. Defaults to `auto` if not set.
+
+verbose [bool]
+: Log everything
+
+### Examples
+
+```go-html-template
+{{- $transpiled := resources.Get "scripts/main.js" | babel -}}
+```
+
+Or with options:
+
+```go-html-template
+{{ $opts := dict "noComments" true }}
+{{- $transpiled := resources.Get "scripts/main.js" | babel $opts -}}
+```
diff --git a/docs/content/en/hugo-pipes/bundling.md b/docs/content/en/hugo-pipes/bundling.md
new file mode 100755
index 000000000..79b866c93
--- /dev/null
+++ b/docs/content/en/hugo-pipes/bundling.md
@@ -0,0 +1,24 @@
+---
+title: Asset bundling
+description: Hugo Pipes can bundle any number of assets together.
+date: 2018-07-14
+publishdate: 2018-07-14
+lastmod: 2018-07-14
+categories: [asset management]
+keywords: []
+menu:
+ docs:
+ parent: "pipes"
+ weight: 60
+weight: 60
+sections_weight: 60
+draft: false
+---
+
+Asset files of the same MIME type can be bundled into one resource using `resources.Concat` which takes two arguments, a target path and a slice of resource objects.
+
+```go-html-template
+{{ $plugins := resources.Get "js/plugins.js" }}
+{{ $global := resources.Get "js/global.js" }}
+{{ $js := slice $plugins $global | resources.Concat "js/bundle.js" }}
+```
diff --git a/docs/content/en/hugo-pipes/fingerprint.md b/docs/content/en/hugo-pipes/fingerprint.md
new file mode 100755
index 000000000..b58b577db
--- /dev/null
+++ b/docs/content/en/hugo-pipes/fingerprint.md
@@ -0,0 +1,29 @@
+---
+title: Fingerprinting and SRI
+description: Hugo Pipes allows Fingerprinting and Subresource Integrity.
+date: 2018-07-14
+publishdate: 2018-07-14
+lastmod: 2018-07-14
+categories: [asset management]
+keywords: []
+menu:
+ docs:
+ parent: "pipes"
+ weight: 70
+weight: 70
+sections_weight: 70
+draft: false
+---
+
+
+Fingerprinting and [SRI](https://developer.mozilla.org/en-US/docs/Web/Security/Subresource_Integrity) can be applied to any asset file using `resources.Fingerprint` which takes two arguments, the resource object and a [hash function](https://en.wikipedia.org/wiki/Cryptographic_hash_function).
+
+The default hash function is `sha256`. Other available functions are `sha384` (from Hugo `0.55`), `sha512` and `md5`.
+
+Any so processed asset will bear a `.Data.Integrity` property containing an integrity string, which is made up of the name of the hash function, one hyphen and the base64-encoded hash sum.
+
+```go-html-template
+{{ $js := resources.Get "js/global.js" }}
+{{ $secureJS := $js | resources.Fingerprint "sha512" }}
+<script type="text/javascript" src="{{ $secureJS.Permalink }}" integrity="{{ $secureJS.Data.Integrity }}"></script>
+```
diff --git a/docs/content/en/hugo-pipes/introduction.md b/docs/content/en/hugo-pipes/introduction.md
new file mode 100755
index 000000000..d097dec6b
--- /dev/null
+++ b/docs/content/en/hugo-pipes/introduction.md
@@ -0,0 +1,101 @@
+---
+title: Hugo Pipes Introduction
+description: Hugo Pipes is Hugo's asset processing set of functions.
+date: 2018-07-14
+publishdate: 2018-07-14
+lastmod: 2018-07-14
+categories: [asset management]
+keywords: []
+menu:
+ docs:
+ parent: "pipes"
+ weight: 20
+weight: 01
+sections_weight: 01
+draft: false
+aliases: [/assets/]
+---
+
+### Asset directory
+
+Asset files must be stored in the asset directory. This is `/assets` by default, but can be configured via the configuration file's `assetDir` key.
+
+### From file or URL to resource
+
+In order to process an asset with Hugo Pipes, it must be retrieved as a resource using `resources.Get`. The first argument can be the filepath of the file relative to the asset directory or the URL of the file.
+
+```go-html-template
+{{ $style := resources.Get "sass/main.scss" }}
+{{ $remoteStyle := resources.Get "https://www.example.com/styles.scss" }}
+```
+
+#### Request options
+
+When using an URL, the `resources.Get` function takes an optional options map as the last argument, e.g.:
+
+```
+{{ $resource := resources.Get "https://example.org/api" (dict "headers" (dict "Authorization" "Bearer abcd")) }}
+```
+
+If you need multiple values for the same header key, use a slice:
+
+```
+{{ $resource := resources.Get "https://example.org/api" (dict "headers" (dict "X-List" (slice "a" "b" "c"))) }}
+```
+
+You can also change the request method and set the request body:
+
+```
+{{ $postResponse := resources.Get "https://example.org/api" (dict
+ "method" "post"
+ "body" `{"complete": true}`
+ "headers" (dict
+ "Content-Type" "application/json"
+ )
+)}}
+```
+
+#### Cache of remote resources
+
+Each downloaded URL will be cached in the default folder `$TMPDIR/hugo_cache/`. The variable `$TMPDIR` will be resolved to your system-dependent temporary directory.
+
+With the command-line flag `--cacheDir`, you can specify any folder on your system as a caching directory.
+
+You can also set `cacheDir` or `caches.getresource` in the [main configuration file][config].
+
+If you don't like caching at all, you can fully disable caching with the command line flag `--ignoreCache`.
+
+### Asset publishing
+
+Assets will only be published (to `/public`) if `.Permalink` or `.RelPermalink` is used.
+
+### Go Pipes
+
+For improved readability, the Hugo Pipes examples of this documentation will be written using [Go Pipes](/templates/introduction/#pipes):
+```go-html-template
+{{ $style := resources.Get "sass/main.scss" | resources.ToCSS | resources.Minify | resources.Fingerprint }}
+<link rel="stylesheet" href="{{ $style.Permalink }}">
+```
+
+### Method aliases
+
+Each Hugo Pipes `resources` transformation method uses a __camelCased__ alias (`toCSS` for `resources.ToCSS`).
+Non-transformation methods deprived of such aliases are `resources.Get`, `resources.FromString`, `resources.ExecuteAsTemplate` and `resources.Concat`.
+
+The example above can therefore also be written as follows:
+```go-html-template
+{{ $style := resources.Get "sass/main.scss" | toCSS | minify | fingerprint }}
+<link rel="stylesheet" href="{{ $style.Permalink }}">
+```
+
+### Caching
+
+Hugo Pipes invocations are cached based on the entire _pipe chain_.
+
+An example of a pipe chain is:
+
+```go-html-template
+{{ $mainJs := resources.Get "js/main.js" | js.Build "main.js" | minify | fingerprint }}
+```
+
+The pipe chain is only invoked the first time it is encountered in a site build, and results are otherwise loaded from cache. As such, Hugo Pipes can be used in templates which are executed thousands or millions of times without negatively impacting the build performance.
diff --git a/docs/content/en/hugo-pipes/js.md b/docs/content/en/hugo-pipes/js.md
new file mode 100644
index 000000000..63bd8bdd9
--- /dev/null
+++ b/docs/content/en/hugo-pipes/js.md
@@ -0,0 +1,171 @@
+---
+title: JavaScript Building
+description: Hugo Pipes can process JavaScript files with [ESBuild](https://github.com/evanw/esbuild).
+date: 2020-07-20
+publishdate: 2020-07-20
+lastmod: 2020-07-20
+categories: [asset management]
+keywords: []
+menu:
+ docs:
+ parent: "pipes"
+ weight: 45
+weight: 45
+sections_weight: 45
+draft: false
+---
+
+Any JavaScript resource file can be transpiled and "tree shaken" using `js.Build` which takes for argument either a string for the filepath or a dict of options listed below.
+
+### Options
+
+targetPath [string]
+: If not set, the source path will be used as the base target path.
+Note that the target path's extension may change if the target MIME type is different, e.g. when the source is TypeScript.
+
+params [map or slice] {{< new-in "0.78.0" >}}
+: Params that can be imported as JSON in your JS files, e.g.:
+
+```go-html-template
+{{ $js := resources.Get "js/main.js" | js.Build (dict "params" (dict "api" "https://example.org/api")) }}
+```
+And then in your JS file:
+
+```js
+import * as params from '@params';
+```
+
+Note that this is meant for small data sets, e.g. config settings. For larger data, please put/mount the files into `/assets` and import them directly.
+
+minify [bool]
+: Let `js.Build` handle the minification.
+
+inject [slice] {{< new-in "0.81.0" >}}
+: This option allows you to automatically replace a global variable with an import from another file. The path names must be relative to `assets`. See https://esbuild.github.io/api/#inject
+
+shims {{< new-in "0.81.0" >}}
+: This option allows swapping out a component with another. A common use case is to load dependencies like React from a CDN (with _shims_) when in production, but running with the full bundled `node_modules` dependency during development:
+
+```
+{{ $shims := dict "react" "js/shims/react.js" "react-dom" "js/shims/react-dom.js" }}
+{{ $js = $js | js.Build dict "shims" $shims }}
+```
+
+The _shim_ files may look like these:
+
+```js
+// js/shims/react.js
+module.exports = window.React;
+```
+
+```js
+// js/shims/react-dom.js
+module.exports = window.ReactDOM;
+```
+
+
+With the above, these imports should work in both scenarios:
+
+```js
+import * as React from 'react'
+import * as ReactDOM from 'react-dom';
+```
+
+target [string]
+: The language target.
+ One of: `es5`, `es2015`, `es2016`, `es2017`, `es2018`, `es2019`, `es2020` or `esnext`.
+ Default is `esnext`.
+
+externals [slice]
+: External dependencies. Use this to trim dependencies you know will never be executed. See https://esbuild.github.io/api/#external
+
+
+defines [map]
+: Allow to define a set of string replacement to be performed when building. Should be a map where each key is to be replaced by its value.
+
+```go-html-template
+{{ $defines := dict "process.env.NODE_ENV" `"development"` }}
+```
+
+format [string] {{< new-in "0.74.3" >}}
+: The output format.
+ One of: `iife`, `cjs`, `esm`.
+ Default is `iife`, a self-executing function, suitable for inclusion as a <script> tag.
+
+sourceMap
+: Whether to generate source maps. Enum, currently only `inline` (we will improve that).
+
+### Import JS code from /assets
+
+{{< new-in "0.78.0" >}}
+
+Since Hugo `v0.78.0` `js.Build` has full support for the virtual union file system in [Hugo Modules](/hugo-modules/). You can see some simple examples in this [test project](https://github.com/gohugoio/hugoTestProjectJSModImports), but in short this means that you can do this:
+
+```js
+import { hello } from 'my/module';
+```
+
+And it will resolve to the top-most `index.{js,ts,tsx,jsx}` inside `assets/my/module` in the layered file system.
+
+```js
+import { hello3 } from 'my/module/hello3';
+```
+
+Will resolve to `hello3.{js,ts,tsx,jsx}` inside `assets/my/module`.
+
+Any imports starting with `.` is resolved relative to the current file:
+
+```js
+import { hello4 } from './lib';
+```
+
+For other files (e.g. `JSON`, `CSS`) you need to use the relative path including any extension, e.g:
+
+```js
+import * as data from 'my/module/data.json';
+```
+
+Any imports in a file outside `/assets` or that does not resolve to a component inside `/assets` will be resolved by [ESBuild](https://esbuild.github.io/) with the **project directory** as the resolve directory (used as the starting point when looking for `node_modules` etc.). Also see [hugo mod npm pack](/commands/hugo_mod_npm_pack/). If you have any imported NPM dependencies in your project, you need to make sure to run `npm install` before you run `hugo`.
+
+Also note the new `params` option that can be passed from template to your JS files, e.g.:
+
+```go-html-template
+{{ $js := resources.Get "js/main.js" | js.Build (dict "params" (dict "api" "https://example.org/api")) }}
+```
+And then in your JS file:
+
+```js
+import * as params from '@params';
+```
+
+Hugo will, by default, generate a `assets/jsconfig.json` file that maps the imports. This is useful for navigation/intellisense help inside code editors, but if you don't need/want it, you can [turn it off](/getting-started/configuration/#configure-build).
+
+
+
+### Include Dependencies In package.json / node_modules
+
+Any imports in a file outside `/assets` or that does not resolve to a component inside `/assets` will be resolved by [ESBuild](https://esbuild.github.io/) with the **project directory** as the resolve directory (used as the starting point when looking for `node_modules` etc.). Also see [hugo mod npm pack](/commands/hugo_mod_npm_pack/). If you have any imported NPM dependencies in your project, you need to make sure to run `npm install` before you run `hugo`.
+
+{{< new-in "0.78.1" >}} From Hugo `0.78.1` the start directory for resolving NPM packages (aka. packages that live inside a `node_modules` folder) is always the main project folder.
+
+**Note:** If you're developing a theme/component that is supposed to be imported and depends on dependencies inside `package.json`, we recommend reading about [hugo mod npm pack](/commands/hugo_mod_npm_pack/), a tool to consolidate all the NPM dependencies in a project.
+
+
+### Examples
+
+```go-html-template
+{{ $built := resources.Get "js/index.js" | js.Build "main.js" }}
+```
+
+Or with options:
+
+```go-html-template
+{{ $externals := slice "react" "react-dom" }}
+{{ $defines := dict "process.env.NODE_ENV" `"development"` }}
+
+{{ $opts := dict "targetPath" "main.js" "externals" $externals "defines" $defines }}
+{{ $built := resources.Get "scripts/main.js" | js.Build $opts }}
+<script type="text/javascript" src="{{ $built.RelPermalink }}" defer></script>
+```
+
+
diff --git a/docs/content/en/hugo-pipes/minification.md b/docs/content/en/hugo-pipes/minification.md
new file mode 100755
index 000000000..d11ee58a9
--- /dev/null
+++ b/docs/content/en/hugo-pipes/minification.md
@@ -0,0 +1,27 @@
+---
+title: Asset minification
+description: Hugo Pipes allows the minification of any CSS, JS, JSON, HTML, SVG or XML resource.
+date: 2018-07-14
+publishdate: 2018-07-14
+lastmod: 2018-07-14
+categories: [asset management]
+keywords: []
+menu:
+ docs:
+ parent: "pipes"
+ weight: 50
+weight: 50
+sections_weight: 50
+draft: false
+---
+
+
+Any resource of the aforementioned types can be minified using `resources.Minify` which takes for argument the resource object.
+
+
+```go-html-template
+{{ $css := resources.Get "css/main.css" }}
+{{ $style := $css | resources.Minify }}
+```
+
+Note that you can also minify the final HTML output to `/public` by running `hugo --minify`.
diff --git a/docs/content/en/hugo-pipes/postcss.md b/docs/content/en/hugo-pipes/postcss.md
new file mode 100755
index 000000000..fddc7e9cf
--- /dev/null
+++ b/docs/content/en/hugo-pipes/postcss.md
@@ -0,0 +1,84 @@
+---
+title: PostCSS
+description: Hugo Pipes can process CSS files with PostCSS.
+date: 2018-07-14
+publishdate: 2018-07-14
+lastmod: 2018-07-14
+categories: [asset management]
+keywords: []
+menu:
+ docs:
+ parent: "pipes"
+ weight: 40
+weight: 40
+sections_weight: 40
+draft: false
+---
+
+Any asset file can be processed using `resources.PostCSS` which takes for argument the resource object and a slice of options listed below.
+
+The resource will be processed using the project's or theme's own `postcss.config.js` or any file set with the `config` option.
+
+```go-html-template
+{{ $css := resources.Get "css/main.css" }}
+{{ $style := $css | resources.PostCSS }}
+```
+
+{{% note %}}
+Hugo Pipe's PostCSS requires the `postcss-cli` JavaScript package to be installed in the environment (`npm install -g postcss postcss-cli`) along with any PostCSS plugin(s) used (e.g., `npm install -g autoprefixer`).
+
+If you are using the Hugo Snap package, PostCSS and plugin(s) need to be installed locally within your Hugo site directory, e.g., `npm install postcss-cli` without the `-g` flag.
+{{% /note %}}
+
+### Options
+
+config [string]
+: Path to the PostCSS configuration file
+
+noMap [bool]
+: Default is `false`. Disable the default inline sourcemaps
+
+inlineImports [bool] {{< new-in "0.66.0" >}}
+: Default is `false`. Enable inlining of @import statements. It does so recursively, but will only import a file once.
+URL imports (e.g. `@import url('https://fonts.googleapis.com/css?family=Open+Sans&display=swap');`) and imports with media queries will be ignored.
+Note that this import routine does not care about the CSS spec, so you can have @import anywhere in the file.
+Hugo will look for imports relative to the module mount and will respect theme overrides.
+
+_If no configuration file is used:_
+
+use [string]
+: Space-delimited list of PostCSS plugins to use
+
+parser [string]
+: Custom PostCSS parser
+
+stringifier [string]
+: Custom PostCSS stringifier
+
+syntax [string]
+: Custom postcss syntax
+
+```go-html-template
+{{ $options := dict "config" "customPostCSS.js" "noMap" true }}
+{{ $style := resources.Get "css/main.css" | resources.PostCSS $options }}
+
+{{ $options := dict "use" "autoprefixer postcss-color-alpha" }}
+{{ $style := resources.Get "css/main.css" | resources.PostCSS $options }}
+```
+
+## Check Hugo Environment from postcss.config.js
+
+{{< new-in "0.66.0" >}}
+
+The current Hugo environment name (set by `--environment` or in config or OS environment) is available in the Node context, which allows constructs like this:
+
+```js
+module.exports = {
+ plugins: [
+ require('autoprefixer'),
+ ...process.env.HUGO_ENVIRONMENT === 'production'
+ ? [purgecss]
+ : []
+ ]
+}
+```
diff --git a/docs/content/en/hugo-pipes/postprocess.md b/docs/content/en/hugo-pipes/postprocess.md
new file mode 100755
index 000000000..aafb786a4
--- /dev/null
+++ b/docs/content/en/hugo-pipes/postprocess.md
@@ -0,0 +1,70 @@
+---
+title: PostProcess
+description: Allows delaying of resource transformations to after the build.
+date: 2020-04-09
+categories: [asset management]
+keywords: []
+menu:
+ docs:
+ parent: "pipes"
+ weight: 39
+weight: 39
+sections_weight: 39
+---
+
+Marking a resource with `resources.PostProcess` delays any transformations to after the build, typically because one or more of the steps in the transformation chain depends on the result of the build (e.g. files in `public`).{{< new-in "0.69.0" >}}
+
+A prime use case for this is [CSS purging with PostCSS](#css-purging-with-postcss).
+
+There are currently two limitations to this:
+
+1. This only works in `*.html` templates (i.e. templates that produces HTML files).
+2. You cannot manipulate the values returned from the resource's methods. E.g. the `upper` in this example will not work as expected:
+
+ ```go-html-template
+ {{ $css := resources.Get "css/main.css" }}
+ {{ $css = $css | resources.PostCSS | minify | fingerprint | resources.PostProcess }}
+ {{ $css.RelPermalink | upper }}
+ ```
+
+## CSS purging with PostCSS
+
+{{% note %}}
+There are several ways to set up CSS purging with PostCSS in Hugo. If you have a simple project, you should consider going the simpler route and drop the use of `resources.PostProcess` and just extract keywords from the templates. See the [Tailwind documentation](https://tailwindcss.com/docs/controlling-file-size/#app) for some examples.
+{{% /note %}}
+
+The below configuration will write a `hugo_stats.json` file to the project root as part of the build. If you're only using this for the production build, you should consider placing it below [config/production](/getting-started/configuration/#configuration-directory).
+
+{{< code-toggle file="config" >}}
+[build]
+ writeStats = true
+{{< /code-toggle >}}
+
+`postcss.config.js`
+
+```js
+const purgecss = require('@fullhuman/postcss-purgecss')({
+ content: [ './hugo_stats.json' ],
+ defaultExtractor: (content) => {
+ let els = JSON.parse(content).htmlElements;
+ return els.tags.concat(els.classes, els.ids);
+ }
+});
+
+module.exports = {
+ plugins: [
+ ...(process.env.HUGO_ENVIRONMENT === 'production' ? [ purgecss ] : [])
+ ]
+ };
+```
+
+Note that in the example above, the "CSS purge step" will only be applied to the production build. This means that you need to do something like this in your head template to build and include your CSS:
+
+```go-html-template
+{{ $css := resources.Get "css/main.css" }}
+{{ $css = $css | resources.PostCSS }}
+{{ if hugo.IsProduction }}
+{{ $css = $css | minify | fingerprint | resources.PostProcess }}
+{{ end }}
+<link href="{{ $css.RelPermalink }}" rel="stylesheet" />
+```
diff --git a/docs/content/en/hugo-pipes/resource-from-string.md b/docs/content/en/hugo-pipes/resource-from-string.md
new file mode 100755
index 000000000..8b942d2f3
--- /dev/null
+++ b/docs/content/en/hugo-pipes/resource-from-string.md
@@ -0,0 +1,31 @@
+---
+title: Creating a resource from a string
+linkTitle: Resource from String
+description: Hugo Pipes allows the creation of a resource from a string.
+date: 2018-07-14
+publishdate: 2018-07-14
+lastmod: 2018-07-14
+categories: [asset management]
+keywords: []
+menu:
+ docs:
+ parent: "pipes"
+ weight: 90
+weight: 90
+sections_weight: 90
+draft: false
+---
+
+It is possible to create a resource directly from the template using `resources.FromString` which takes two arguments, the given string and the resource target path.
+
+The following example creates a resource file containing localized variables for every project's languages.
+
+```go-html-template
+{{ $string := (printf "var rootURL = '%s'; var apiURL = '%s';" (absURL "/") (.Param "API_URL")) }}
+{{ $targetPath := "js/vars.js" }}
+{{ $vars := $string | resources.FromString $targetPath }}
+{{ $global := resources.Get "js/global.js" | resources.Minify }}
+
+<script type="text/javascript" src="{{ $vars.Permalink }}"></script>
+<script type="text/javascript" src="{{ $global.Permalink }}"></script>
+```
diff --git a/docs/content/en/hugo-pipes/resource-from-template.md b/docs/content/en/hugo-pipes/resource-from-template.md
new file mode 100755
index 000000000..9bc8c7e9d
--- /dev/null
+++ b/docs/content/en/hugo-pipes/resource-from-template.md
@@ -0,0 +1,38 @@
+---
+title: Creating a resource from template
+linkTitle: Resource from Template
+description: Hugo Pipes allows the creation of a resource from an asset file using Go Template.
+date: 2018-07-14
+publishdate: 2018-07-14
+lastmod: 2018-07-14
+categories: [asset management]
+keywords: []
+menu:
+ docs:
+ parent: "pipes"
+ weight: 80
+weight: 80
+sections_weight: 80
+draft: false
+---
+
+In order to use Hugo Pipes function on an asset file containing Go Template magic the function `resources.ExecuteAsTemplate` must be used.
+
+The function takes three arguments: the resource target path, the template context, and the resource object.
+
+```go-html-template
+// assets/sass/template.scss
+$backgroundColor: {{ .Param "backgroundColor" }};
+$textColor: {{ .Param "textColor" }};
+body{
+ background-color:$backgroundColor;
+ color: $textColor;
+}
+// [...]
+```
+
+
+```go-html-template
+{{ $sassTemplate := resources.Get "sass/template.scss" }}
+{{ $style := $sassTemplate | resources.ExecuteAsTemplate "main.scss" . | resources.ToCSS }}
+```
diff --git a/docs/content/en/hugo-pipes/scss-sass.md b/docs/content/en/hugo-pipes/scss-sass.md
new file mode 100755
index 000000000..12cebc014
--- /dev/null
+++ b/docs/content/en/hugo-pipes/scss-sass.md
@@ -0,0 +1,54 @@
+---
+title: SASS / SCSS
+description: Hugo Pipes allows the processing of SASS and SCSS files.
+date: 2018-07-14
+publishdate: 2018-07-14
+lastmod: 2018-07-14
+categories: [asset management]
+keywords: []
+menu:
+ docs:
+ parent: "pipes"
+ weight: 30
+weight: 02
+sections_weight: 02
+draft: false
+---
+
+
+Any SASS or SCSS file can be transformed into a CSS file using `resources.ToCSS` which takes two arguments, the resource object and a map of options listed below.
+
+```go-html-template
+{{ $sass := resources.Get "sass/main.scss" }}
+{{ $style := $sass | resources.ToCSS }}
+```
+
+### Options
+
+transpiler [string] {{< new-in "0.80.0" >}}
+
+: The `transpiler` to use, valid values are `libsass` (default) and `dartsass`. Note that the Embedded Dart Sass project is still in beta. We will try to improve the installation process when it has stable releases, but if you want to use Hugo with Dart Sass you need to download a release binary from [Embedded Dart Sass](https://github.com/sass/dart-sass-embedded/releases) (Hugo after 0.81.0 requires beta 6 or newer) and make sure it's in your PC's `$PATH` (or `%PATH%` on Windows).
+
+targetPath [string]
+: If not set, the resource's target path will be the asset file original path with its extension replaced by `.css`.
+
+outputStyle [string]
+: Default is `nested` (LibSass) and `expanded` (Dart Sass). Other available output styles for LibSass are `expanded`, `compact` and `compressed`. Dart Sass only supports `expanded` and `compressed`.
+
+precision [int]
+: Precision of floating point math. **Note:** This option is not supported by Dart Sass.
+
+enableSourceMap [bool]
+: When enabled, a source map will be generated.
+
+includePaths [string slice]
+: Additional SCSS/SASS include paths. Paths must be relative to the project directory.
+
+```go-html-template
+{{ $options := (dict "targetPath" "style.css" "outputStyle" "compressed" "enableSourceMap" true "includePaths" (slice "node_modules/myscss")) }}
+{{ $style := resources.Get "sass/main.scss" | resources.ToCSS $options }}
+```
+
+{{% note %}}
+Setting `outputStyle` to `compressed` will handle SASS/SCSS files minification better than the more generic [`resources.Minify`]({{< ref "minification">}}).
+{{% /note %}}
diff --git a/docs/content/en/maintenance/_index.md b/docs/content/en/maintenance/_index.md
new file mode 100644
index 000000000..691a5d47c
--- /dev/null
+++ b/docs/content/en/maintenance/_index.md
@@ -0,0 +1,14 @@
+---
+title: Maintenance
+description: Some lists useful for the maintenance of the Hugo docs site.
+date: 2018-02-09
+categories: [maintenance]
+keywords: [maintenance]
+menu:
+ docs:
+ weight: 200
+slug:
+aliases: []
+toc: true
+---
+
diff --git a/docs/content/en/myshowcase/bio.md b/docs/content/en/myshowcase/bio.md
new file mode 100644
index 000000000..7d1b30895
--- /dev/null
+++ b/docs/content/en/myshowcase/bio.md
@@ -0,0 +1,8 @@
+
+Add some **general info** about Myshowcase here.
+
+The site is built by:
+
+* [Person 1](https://example.com)
+* [Person 1](https://example.com)
+
diff --git a/docs/content/en/myshowcase/featured.png b/docs/content/en/myshowcase/featured.png
new file mode 100644
index 000000000..4f390132e
--- /dev/null
+++ b/docs/content/en/myshowcase/featured.png
Binary files differ
diff --git a/docs/content/en/myshowcase/index.md b/docs/content/en/myshowcase/index.md
new file mode 100644
index 000000000..08ea1e55f
--- /dev/null
+++ b/docs/content/en/myshowcase/index.md
@@ -0,0 +1,37 @@
+---
+
+title: Myshowcase
+date: 2021-01-14
+
+description: "A short description of this page."
+
+# The URL to the site on the internet.
+siteURL: https://gohugo.io/
+
+# Link to the site's Hugo source code if public and you can/want to share.
+# Remove or leave blank if not needed/wanted.
+siteSource: https://github.com/gohugoio/hugoDocs
+
+# Add credit to the article author. Leave blank or remove if not needed/wanted.
+byline: "[bep](https://github.com/bep), Hugo Lead"
+
+---
+
+To complete this showcase:
+
+1. Write the story about your site in this file.
+2. Add a summary to the `bio.md` file in this folder.
+3. Replace the `featured-template.png` with a screenshot of your site. You can rename it, but it must contain the word `featured`.
+4. Create a new pull request in https://github.com/gohugoio/hugoDocs/pulls
+
+The content of this bundle explained:
+
+index.md
+: The main content file. Fill in required front matter metadata and write your story. I does not have to be a novel. It can even be self-promotional, but it should include Hugo in some form.
+
+bio.md
+: A short summary of the website. Site credits (who built it) fits nicely here.
+
+featured.png
+: A reasonably sized screenshot of your website. It can be named anything, but the name must start with "featured". The sample image is `1500x750` (2:1 aspect ratio).
+
diff --git a/docs/content/en/news/0.10-relnotes/index.md b/docs/content/en/news/0.10-relnotes/index.md
new file mode 100644
index 000000000..060998ba0
--- /dev/null
+++ b/docs/content/en/news/0.10-relnotes/index.md
@@ -0,0 +1,21 @@
+---
+date: 2014-03-01T17:21:33Z
+description: "Hugo 0.10 brings syntax highlighting (powered by Pygments), automatic table of contents generation, support for Unicode, and a lot more!"
+title: "Hugo 0.10"
+categories: ["Releases"]
+---
+
+- [Syntax highlighting](http://hugo.spf13.com/extras/highlighting) powered by pygments (**slow**)
+- Ability to [sort content](http://hugo.spf13.com/content/ordering) many more ways
+- Automatic [table of contents](http://hugo.spf13.com/extras/toc) generation
+- Support for unicode URLs, aliases and indexes
+- Configurable per-section [permalink](http://hugo.spf13.com/extras/permalinks) pattern support
+- Support for [paired shortcodes](http://hugo.spf13.com/extras/shortcodes)
+- Shipping with some [shortcodes](http://hugo.spf13.com/extras/shortcodes) (highlight & figure)
+- Adding [canonify](http://hugo.spf13.com/extras/urls) option to keep URLs relative
+- A bunch of [additional template functions](http://hugo.spf13.com/layouts/templatefunctions)
+- Watching very large sites now works on mac
+- RSS generation improved. Limited to 50 items by default, can limit further in [template](http://hugo.spf13.com/layout/rss)
+- Boolean params now supported in [frontmatter](http://hugo.spf13.com/content/front-matter)
+- Launched website [showcase](http://hugo.spf13.com/showcase). Show off your own hugo site!
+- A bunch of [bug fixes](https://github.com/spf13/hugo/commits/master)
diff --git a/docs/content/en/news/0.11-relnotes/index.md b/docs/content/en/news/0.11-relnotes/index.md
new file mode 100644
index 000000000..dc4115fe0
--- /dev/null
+++ b/docs/content/en/news/0.11-relnotes/index.md
@@ -0,0 +1,23 @@
+---
+date: 2014-05-29T22:53:22Z
+description: "Now 3–4 times faster, Hugo 0.11 brings live reload, theme engine, menu system, XML sitemap, and more!"
+title: "Hugo 0.11"
+categories: ["Releases"]
+---
+
+- Considerably faster... about 3 - 4x faster on average
+- [Live Reload](/getting-started/usage/#livereload). Hugo will automatically reload the browser when the build is complete
+- Theme engine w/[Theme Repository](http://github.com/spf13/hugoThemes)
+- [Menu system](/content-management/menus/) with support for active page
+- [Builders](/extras/builders) to quickly create a new site, content or theme
+- [XML sitemap](/templates/sitemap) generation
+- [Integrated Disqus](/extras/comments) support
+- Streamlined [template organization](/templates/overview)
+- Brand new docs site
+- Support for publishDate which allows for posts to be dated in the future
+- More [sort](/functions/sort/#readout) options
+- Logging support
+- Much better error handling
+- More informative verbose output
+- Renamed Indexes > [Taxonomies](/taxonomies/overview)
+- Renamed Chrome > [Partials](/templates/partials)
diff --git a/docs/content/en/news/0.12-relnotes/index.md b/docs/content/en/news/0.12-relnotes/index.md
new file mode 100644
index 000000000..4401b5efc
--- /dev/null
+++ b/docs/content/en/news/0.12-relnotes/index.md
@@ -0,0 +1,29 @@
+---
+date: 2015-01-21T20:35:00Z
+description: "Hugo 0.12 focused on polishing the theme engine and adding critical functionality to the templates."
+title: "Hugo 0.12"
+categories: ["Releases"]
+---
+
+A lot has happened since Hugo v0.11.0 was released. Most of the work has been
+focused on polishing the theme engine and adding critical functionality to the
+templates.
+
+This release represents over 90 code commits from 28 different contributors.
+
+- 10 [new themes](https://github.com/spf13/hugoThemes) created by the community
+- fully themable [partials](/templates/partials/)
+- [404 template](/templates/404/) support in themes
+- [shortcode](/extras/shortcodes/) support in themes
+- [views](/templates/views/) support in themes
+- inner [shortcode](/extras/shortcodes/) content now treated as markdown
+- support for header ids in markdown (# header {#myid})
+- [where](/templates/lists/#where) template function to filter lists of content, taxonomies, etc
+- [groupby](/templates/list) & [groupbydate](/templates/list) methods to group pages
+- taxonomy [pages list](/taxonomies/methods/) now sortable, filterable, limitable & groupable
+- general cleanup to taxonomies & documentation to make it more clear and consistent
+- [showcase](/showcase/) returned and has been expanded
+- pretty links now always have trailing slashes
+- [baseurl](/overview/configuration/) can now include a subdirectory
+- better feedback about draft & future post rendering
+- a variety of improvements to [the website](/)
diff --git a/docs/content/en/news/0.13-relnotes/index.md b/docs/content/en/news/0.13-relnotes/index.md
new file mode 100644
index 000000000..198f5fe7b
--- /dev/null
+++ b/docs/content/en/news/0.13-relnotes/index.md
@@ -0,0 +1,95 @@
+---
+date: 2015-02-22T04:10:06Z
+description: "Hugo 0.13 is the largest Hugo release to date. The release introduced some long sought after features (pagination, sequencing, data loading, tons of template improvements) as well as major internal improvements. In addition to the code changes, the Hugo community has grown significantly and now has over 3000 stars on GitHub, 134 contributors, 24 themes and 1000s of happy users."
+title: "Hugo 0.13"
+categories: ["Releases"]
+---
+
+The v0.13.0 release is the largest Hugo release to date. The release introduced
+some long sought after features (pagination, sequencing, data loading, tons of
+template improvements) as well as major internal improvements. In addition to
+the code changes, the Hugo community has grown significantly and now has over
+3000 stars on GitHub, 134 contributors, 24 themes and 1000s of happy users.
+
+This release represents **448 contributions by 65 contributors**
+
+A special shout out to [@bep](https://github.com/bep) and
+[@anthonyfok](https://github.com/anthonyfok) for their new role as Hugo
+maintainers and their tremendous contributions this release.
+
+### New major features
+- Support for [data files](http://gohugo.io/extras/datafiles/) in [YAML](http://yaml.org/),
+ [JSON](http://www.json.org/), or [TOML](https://github.com/toml-lang/toml)
+ located in the `data` directory ([#885](https://github.com/spf13/hugo/issues/885))
+- Support for [dynamic content](http://gohugo.io/extras/dynamiccontent/) by loading JSON & CSV
+ from remote sources via GetJson and GetCsv in short codes or other layout
+ files ([#748](https://github.com/spf13/hugo/issues/748))
+- [Pagination support](http://gohugo.io/extras/pagination/) for home page, sections and
+ taxonomies ([#750](https://github.com/spf13/hugo/issues/750))
+- Universal sequencing support
+ - A new, generic Next/Prev functionality is added to all lists of pages
+ (sections, taxonomies, etc.)
+ - Add in-section [Next/Prev](http://gohugo.io/templates/variables/) content pointers
+- `Scratch` -- [a "scratchpad"](http://gohugo.io/extras/scratch) for your node- and page-scoped
+ variables
+- [Cross Reference](http://gohugo.io/extras/crossreferences/) support to easily link documents
+ together with the ref and relref shortcodes.
+- [Ace](http://ace.yoss.si/) template engine support ([#541](https://github.com/spf13/hugo/pull/541))
+- A new [shortcode](http://gohugo.io/extras/shortcodes/) token of `{{</* */>}}` (raw HTML)
+ alongside the existing `{{%/* */%}}` (Markdown)
+- A top level `Hugo` variable (on Page & Node) is added with various build
+ information
+- Several new ways to order and group content:
+ - `ByPublishDate`
+ - `GroupByPublishDate(format, order)`
+ - `GroupByParam(key, order)`
+ - `GroupByParamDate(key, format, order)`
+- Hugo has undergone a major refactoring, with a new handler system and a
+ generic file system. This sounds and is technical, but will pave the way for
+ new features and make Hugo even speedier
+
+### Notable enhancements to existing features
+- The [shortcode](http://gohugo.io/extras/shortcodes/) handling is rewritten for speed and
+ better error messages.
+- Several improvements to the [template functions](http://gohugo.io/templates/functions/):
+ - `where` is now even more powerful and accepts SQL-like syntax with the
+ operators `==`, `eq`; `!=`, `<>`, `ne`; `>=`, `ge`; `>`, `gt`; `<=`,
+ `le`; `<`, `lt`; `in`, `not in`
+ - `where` template function now also accepts dot chaining key argument
+ (e.g. `"Params.foo.bar"`)
+- New template functions:
+ - `apply`
+ - `chomp`
+ - `delimit`
+ - `sort`
+ - `markdownify`
+ - `in` and `intersect`
+ - `trim`
+ - `replace`
+ - `dateFormat`
+- Several [configurable improvements related to Markdown
+ rendering](http://gohugo.io/overview/configuration/#configure-blackfriday-rendering:a66b35d20295cb764719ac8bd35837ec):
+ - Configuration of footnote rendering
+ - Optional support for smart angled quotes, e.g. `"Hugo"` → «Hugo»
+ - Enable descriptive header IDs
+- URLs in XML output is now correctly canonified ([#725](https://github.com/spf13/hugo/issues/725), [#728](https://github.com/spf13/hugo/issues/728), and part
+ of [#789](https://github.com/spf13/hugo/issues/789))
+
+### Other improvements
+- Internal change to use byte buffer pool significantly lowering memory usage
+ and providing measurable performance improvements overall
+- Changes to docs:
+ - A new [Troubleshooting](http://gohugo.io/troubleshooting/overview/) section is added
+ - It's now searchable through Google Custom Search ([#753](https://github.com/spf13/hugo/issues/753))
+ - Some new great tutorials:
+ - [Automated deployments with
+ Wercker](http://gohugo.io/tutorials/automated-deployments/)
+ - [Creating a new theme](http://gohugo.io/tutorials/creating-a-new-theme/)
+- [`hugo new`](http://gohugo.io/content/archetypes/) now copies the content in addition to the front matter
+- Improved unit test coverage
+- Fixed a lot of Windows-related path issues
+- Improved error messages for template and rendering errors
+- Enabled soft LiveReload of CSS and images ([#490](https://github.com/spf13/hugo/pull/490))
+- Various fixes in RSS feed generation ([#789](https://github.com/spf13/hugo/issues/789))
+- `HasMenuCurrent` and `IsMenuCurrent` is now supported on Nodes
+- A bunch of [bug fixes](https://github.com/spf13/hugo/commits/master)
diff --git a/docs/content/en/news/0.14-relnotes/index.md b/docs/content/en/news/0.14-relnotes/index.md
new file mode 100644
index 000000000..9b7928b47
--- /dev/null
+++ b/docs/content/en/news/0.14-relnotes/index.md
@@ -0,0 +1,54 @@
+---
+date: 2015-05-26T01:32:45Z
+description: "The v0.14.0 Hugo release brings of the most demanded features to Hugo. The foundation of Hugo is stabilizing nicely and a lot of polish has been added. We’ve expanded support for additional content types with support for AsciiDoc, Restructured Text, HTML and Markdown."
+title: "Hugo 0.14"
+categories: ["Releases"]
+---
+
+The v0.14.0 Hugo release brings of the most demanded features to Hugo. The foundation of Hugo is stabilizing nicely and a lot of polish has been added. We’ve expanded support for additional content types with support for AsciiDoc, Restructured Text, HTML and Markdown. Some of these types depend on external libraries as there does not currently exist native support in Go. We’ve tried to make the experience as seamless as possible. Look for more improvements here in upcoming releases.
+
+A lot of work has been done to improve the user experience, with extra polish to the Windows experience. Hugo errors are more helpful overall and Hugo now can detect if it’s being run in Windows Explorer and provide additional instructions to run it via the command prompt.
+
+The Hugo community continues to grow. Hugo has over 4000 stars on github, 165 contributors, 35 themes and 1000s of happy users. It is now the 5th most popular static site generator (by Stars) and has the 3rd largest contributor community.
+
+This release represents over **240 contributions by 36 contributors** to the main Hugo codebase.
+
+Big shout out to [@bep](https://github.com/bep) who led the development of Hugo this release, [@anthonyfok](https://github.com/anthonyfok), [@eparis](https://github.com/eparis), [@SchumacherFM](https://github.com/SchumacherFM), [@RickCogley](https://github.com/RickCogley) & [@mdhender](https://github.com/mdhender) for their significant contributions and [@tatsushid](https://github.com/tatsushid) for his continuous improvements to the templates. Also a big thanks to all the theme creators. 11 new themes have been added since last release and the [hugoThemes repo now has previews of all of them](https://github.com/spf13/hugoThemes/blob/master/README.md#theme-list).
+
+Hugo also depends on a lot of other great projects. A big thanks to all of our dependencies inclding:
+[cobra](https://github.com/spf13/cobra), [viper](https://github.com/spf13/viper), [blackfriday](https://github.com/russross/blackfriday), [pflag](https://github.com/spf13/pflag), [HugoThemes](https://github.com/spf13/hugothemes), [BurntSushi/Toml](github.com/BurntSushi/toml), [goYaml](https://github.com/go-yaml/yaml/tree/v2), and the Go standard library.
+
+## New features
+- Support for all file types in content directory.
+ - If dedicated file type handler isn’t found it will be copied to the destination.
+- Add `AsciiDoc` support using external helpers.
+- Add experimental support for [`Mmark`](https://github.com/miekg/mmark) markdown processor
+- Bash autocomplete support via `genautocomplete` command
+- Add section menu support for a [Section Menu for Lazy Bloggers](https://gohugo.io/templates/menu-templates/#section-menu-for-lazy-bloggers)
+- Add support for `Ace` base templates
+- Adding `RelativeURLs = true` to site config will now make all the relative URLs relative to the content root.
+- New template functions:
+ - `getenv`
+ - The string functions `substr` and `slicestr`
+ *`seq`, a sequence generator very similar to its Gnu counterpart
+ - `absURL` and `relURL`, both of which takes the `BaseURL` setting into account
+
+## Improvements
+- Highlighting with `Pygments` is now cached to disk -- expect a major speed boost if you use it!
+- More Pygments highlighting options, including `line numbers`
+- Show help information to Windows users who try to double click on `hugo.exe`.
+- Add `bind` flag to `hugo server` to set the interface to which the server will bind
+- Add support for `canonifyurls` in `srcset`
+- Add shortcode support for HTML (content) files
+- Allow the same `shortcode` to be used with or without inline content
+- Configurable RSS output filename
+
+## Bugfixes
+- Fix panic with paginator and zero pages in result set.
+- Fix crossrefs on Windows.
+- Fix `eq` and `ne` template functions when used with a raw number combined with the result of `add`, `sub` etc.
+- Fix paginator with uglyurls
+- Fix [#998](https://github.com/spf13/hugo/issues/988), supporting UTF8 characters in Permalinks.
+
+## Notices
+- To get variable and function names in line with the rest of the Go community, a set of variable and function names has been deprecated: These will still work in 0.14, but will be removed in 0.15. What to do should be obvious by the build log; `getJson` to `getJSON`, `getCsv` to `getCSV`, `safeHtml` to `safeHTML`, `safeCss` to `safeCSS`, `safeUrl` to `safeURL`, `Url` to `URL`, `UrlPath` to `URLPath`, `BaseUrl` to `BaseURL`, `Recent` to `Pages`, `Indexes` to `Taxonomies`.
diff --git a/docs/content/en/news/0.15-relnotes/index.md b/docs/content/en/news/0.15-relnotes/index.md
new file mode 100644
index 000000000..5053e3fb2
--- /dev/null
+++ b/docs/content/en/news/0.15-relnotes/index.md
@@ -0,0 +1,97 @@
+---
+date: 2015-12-19T09:45:24Z
+description: "The v0.15.0 Hugo release brings a lot of polish to Hugo. Exactly 6 months after the 0.14 release, Hugo has seen massive growth and changes. Most notably, this is Hugo's first release under the Apache 2.0 license."
+title: "Hugo 0.15"
+categories: ["Releases"]
+---
+
+The v0.15.0 Hugo release brings a lot of polish to Hugo. Exactly 6 months after the 0.14 release, Hugo has seen massive growth and changes. Most notably, this is Hugo's first release under the Apache 2.0 license. With this license change we hope to expand the great community around Hugo and make it easier for our many users to contribute. This release represents over **377 contributions by 87 contributors** to the main Hugo repo and hundreds of improvements to the libraries Hugo uses. Hugo also launched a [new theme showcase](http://themes.gohugo.io) and participated in [Hacktoberfest](https://hacktoberfest.digitalocean.com).
+
+Hugo now has:
+- 6700 (+2700) stars on GitHub
+- 235 (+75) contributors
+- 65 (+30) themes
+
+**Template Improvements:** This release takes Hugo to a new level of speed and usability. Considerable work has been done adding features and performance to the template system which now has full support of Ace, Amber and Go Templates.
+
+**Hugo Import:** Have a Jekyll site, but dreaming of porting it to Hugo? This release introduces a new `hugo import jekyll`command that makes this easier than ever.
+
+**Performance Improvements:** Just when you thought Hugo couldn't get any faster, Hugo continues to improve in speed while adding features. Notably Hugo 0.15 introduces the ability to render and serve directly from memory resulting in 30%+ lower render times.
+
+Huge thanks to all who participated in this release. A special thanks to [@bep](https://github.com/bep) who led the development of Hugo this release again, [@anthonyfok](https://github.com/anthonyfok), [@eparis](https://github.com/eparis), [@tatsushid](https://github.com/tatsushid) and [@DigitalCraftsman](https://github.com/digitalcraftsman/).
+
+## New features
+- new `hugo import jekyll` command. [#1469](https://github.com/spf13/hugo/pull/1469)
+- The new `Param` convenience method on `Page` and `Node` can be used to get the most specific parameter value for a given key. [#1462](https://github.com/spf13/hugo/issues/1462)
+- Several new information elements have been added to `Page` and `Node`:
+ - `RuneCount`: The number of [runes](http://blog.golang.org/strings) in the content, excluding any whitespace. This may be a good alternative to `.WordCount` for Japanese and other CJK languages where a word-split by spaces makes no sense. [#1266](https://github.com/spf13/hugo/issues/1266)
+ - `RawContent`: Raw Markdown as a string. One use case may be of embedding remarkjs.com slides.
+ - `IsHome`: tells the truth about whether you're on the home page or not.
+
+## Improvements
+- `hugo server` now builds ~30%+ faster by rendering to memory instead of disk. To get the old behavior, start the server with `--renderToDisk=true`.
+- Hugo now supports dynamic reloading of the config file when watching.
+- We now use a custom-built `LazyFileReader` for reading file contents, which means we don't read media files in `/content` into memory anymore -- and file reading is now performed in parallel on multicore PCs. [#1181](https://github.com/spf13/hugo/issues/1181)
+- Hugo is now built with `Go 1.5` which, among many other improvements, have fixed the last known data race in Hugo. [#917](https://github.com/spf13/hugo/issues/917)
+- Paginator now also supports page groups. [#1274](https://github.com/spf13/hugo/issues/1274)
+- Markdown improvements:
+ - Hugo now supports GitHub-flavoured markdown code fences for highlighting for `md`-files (Blackfriday rendered markdown) and `mmark` files (MMark rendered markdown). [#362](https://github.com/spf13/hugo/issues/362) [#1258](https://github.com/spf13/hugo/issues/1258)
+ - Several new Blackfriday options are added:
+ - Option to disable Blackfriday's `Smartypants`.
+ - Option for Blackfriday to open links in a new window/tab. [#1220](https://github.com/spf13/hugo/issues/1220)
+ - Option to disable Blackfriday's LaTeX style dashes [#1231](https://github.com/spf13/hugo/issues/1231)
+ - Definition lists extension support.
+- `Scratch` now has built-in `map` support.
+- We now fall back to `link title` for the default page sort. [#1299](https://github.com/spf13/hugo/issues/1299)
+- Some notable new configuration options:
+ - `IgnoreFiles` can be set with a list of Regular Expressions that matches files to be ignored during build. [#1189](https://github.com/spf13/hugo/issues/1189)
+ - `PreserveTaxonomyNames`, when set to `true`, will preserve what you type as the taxonomy name both in the folders created and the taxonomy `key`, but it will be normalized for the URL. [#1180](https://github.com/spf13/hugo/issues/1180)
+- `hugo gen` can now generate man files, bash auto complete and markdown documentation
+- Hugo will now make suggestions when a command is mistyped
+- Shortcodes now have a boolean `.IsNamedParams` property. [#1597](https://github.com/spf13/hugo/pull/1597)
+
+## New Template Features
+- All template engines:
+ - The new `dict` function that could be used to pass maps into a template. [#1463](https://github.com/spf13/hugo/pull/1463)
+ - The new `pluralize` and `singularize` template funcs.
+ - The new `base64Decode` and `base64Encode` template funcs.
+ - The `sort` template func now accepts field/key chaining arguments and pointer values. [#1330](https://github.com/spf13/hugo/issues/1330)
+ - Several fixes for `slicestr` and `substr`, most importantly, they now have full `utf-8`-support. [#1190](https://github.com/spf13/hugo/issues/1190) [#1333](https://github.com/spf13/hugo/issues/1333) [#1347](https://github.com/spf13/hugo/issues/1347)
+ - The new `last` template function allows the user to select the last `N` items of a slice. [#1148](https://github.com/spf13/hugo/issues/1148)
+ - The new `after` func allows the user to select the items after the `Nth` item. [#1200](https://github.com/spf13/hugo/pull/1200)
+ - Add `time.Time` type support to the `where`, `ge`, `gt`, `le`, and `lt` template functions.
+ - It is now possible to use constructs like `where Values ".Param.key" nil` to filter pages that doesn't have a particular parameter. [#1232](https://github.com/spf13/hugo/issues/1232)
+ - `getJSON`/`getCSV`: Add retry on invalid content. [#1166](https://github.com/spf13/hugo/issues/1166)
+ - The new `readDir` func lists local files. [#1204](https://github.com/spf13/hugo/pull/1204)
+ - The new `safeJS` function allows the embedding of content into JavaScript contexts in Go templates.
+ - Get the main site RSS link from any page by accessing the `.Site.RSSLink` property. [#1566](https://github.com/spf13/hugo/pull/1566)
+- Ace templates:
+ - Base templates now also works in themes. [#1215](https://github.com/spf13/hugo/issues/1215).
+ - And now also on Windows. [#1178](https://github.com/spf13/hugo/issues/1178)
+- Full support for Amber templates including all template functions.
+- A built-in template for Google Analytics. [#1505](https://github.com/spf13/hugo/pull/1505)
+- Hugo is now shipped with new built-in shortcodes: [#1576](https://github.com/spf13/hugo/issues/1576)
+ - `youtube` for YouTube videos
+ - `vimeo` for Vimeo videos
+ - `gist` for GitHub gists
+ - `tweet` for Twitter Tweets
+ - `speakerdeck` for Speakerdeck slides
+
+## Bugfixes
+- Fix data races in page sorting and page reversal. These operations are now also cached. [#1293](https://github.com/spf13/hugo/issues/1293)
+- `page.HasMenuCurrent()` and `node.HasMenuCurrent()` now work correctly in multi-level nested menus.
+- Support `Fish and Chips` style section titles. Previously, this would end up as `Fish And Chips`. Now, the first character is made toupper, but the rest are preserved as-is. [#1176](https://github.com/spf13/hugo/issues/1176)
+- Hugo now removes superfluous p-tags around shortcodes. [#1148](https://github.com/spf13/hugo/issues/1148)
+
+## Notices
+- `hugo server` will watch by default now.
+- Some fields and methods were deprecated in `0.14`. These are now removed, so the error message isn't as friendly if you still use the old values. So please change:
+ - `getJson` to `getJSON`, `getCsv` to `getCSV`, `safeHtml` to
+ `safeHTML`, `safeCss` to `safeCSS`, `safeUrl` to `safeURL`, `Url` to `URL`,
+ `UrlPath` to `URLPath`, `BaseUrl` to `BaseURL`, `Recent` to `Pages`.
+
+## Known Issues
+
+Using the Hugo v0.15 32-bit Windows or ARM binary, running `hugo server` would crash or hang due to a [memory alignment issue](https://golang.org/pkg/sync/atomic/#pkg-note-BUG) in [Afero](https://github.com/spf13/afero). The bug was discovered shortly after the v0.15.0 release and has since been [fixed](https://github.com/spf13/afero/pull/23) by @tpng. If you encounter this bug, you may either compile Hugo v0.16-DEV from source, or use the following solution/workaround:
+- **64-bit Windows users: Please use [hugo_0.15_windows_amd64.zip](https://github.com/spf13/hugo/releases/download/v0.15/hugo_0.15_windows_amd64.zip)** (amd64 == x86-64). It is only the 32-bit hugo_0.15_windows_386.zip that crashes/hangs (see #1621 and #1628).
+- **32-bit Windows and ARM users: Please run `hugo server --renderToDisk` as a workaround** until Hugo v0.16 is released (see [“hugo server” returns runtime error on armhf](https://discuss.gohugo.io/t/hugo-server-returns-runtime-error-on-armhf/2293) and #1716).
diff --git a/docs/content/en/news/0.16-relnotes/index.md b/docs/content/en/news/0.16-relnotes/index.md
new file mode 100644
index 000000000..92f6e54a0
--- /dev/null
+++ b/docs/content/en/news/0.16-relnotes/index.md
@@ -0,0 +1,248 @@
+---
+date: 2016-06-06T13:54:06-04:00
+description: "Hugo 0.16 is our best and biggest release ever. The Hugo community has outdone itself with continued performance improvements, beautiful themes and increased stability."
+title: "Hugo 0.16"
+categories: ["Releases"]
+aliases: [/0-16/]
+---
+
+Hugo 0.16 is our best and biggest release ever. The Hugo community has
+outdone itself with continued performance improvements,
+[beautiful themes](http://themes.gohugo.io) for all types of sites from project
+sites to documentation to blogs to portfolios, and increased stability.
+
+This release represents **over 550 contributions by over 110 contributors** to
+the main Hugo code base. Since last release Hugo has **gained 3500 stars, 90
+contributors and 23 additional themes.**
+
+This release celebrates 3 years since {{< gh "@spf13" >}} wrote the first lines
+of Hugo. During those 3 years Hugo has accomplished some major milestones
+including...
+
+* 10,000+ stars on GitHub
+* 320+ contributors
+* 90+ themes
+* 1000s of happy websites
+* Many subprojects like {{< gh "@spf13/cobra">}}, {{< gh "@spf13/viper">}} and
+ {{< gh "@spf13/afero">}} which have experienced broad usage across the Go
+ ecosystem.
+
+{{< gh "@bep" >}} led the development of Hugo for the 3rd consecutive release
+with nearly half of the contributions to 0.16 in addition to his considerable
+contributions as lead maintainer. {{< gh "@anthonyfok" >}}, {{< gh
+"@DigitalCraftsman" >}}, {{< gh "@MooreReason" >}} all made significant
+contributions. A special thanks to {{< gh "@abourget" >}} for his considerable
+work on multilingual support. Due to its broad impact we wanted to spend more
+time testing it and it will be included in Hugo's next release.
+
+### Highlights
+
+**Partial Builds:** Prior to this release Hugo would always reread and rebuild
+the entire site. This release introduces support for reactive site building
+while watching (`hugo server`). Hugo will watch the filesystem for changes and
+only re-read the changed files. Depending on the files change Hugo will
+intelligently re-render only the needed portion of the site. Performance gains
+depend on the operation performed and size of the site. In our testing build
+times decreased anywhere from 10% to 99%.
+
+**Template Improvements:** Template improvements continue to be a mainstay of each Hugo release. Hugo 0.16 adds support for the new `block` keyword introduced in Go 1.6 -- think base templates with default sections -- as well as many new template functions.
+
+**Polish:** As Hugo matures releases will inevitably contain fewer huge new features. This release represents hundreds of small improvements across ever facet of Hugo which will make for a much better experience for all of our users. Worth mentioning here is the curious bug where live reloading didn't work in some editors on OS X, including the popular TextMate 2. This is now fixed. Oh, and now any error will exit with an error code, a big thing for automated deployments.
+
+### New Features
+* Support reading configuration variables from the OS environment {{<gh 2090 >}}
+* Add emoji support {{<gh 1892>}}
+* Add `themesDir` option to configuration {{<gh 1556>}}
+* Add support for Go 1.6 `block` keyword in templates {{<gh 1832>}}
+* Partial static sync {{<gh 1644>}}
+* Source file based relative linking (à la GitHub) {{<gh 0x0f6b334b6715253b030c4e783b88e911b6e53e56>}}
+* Add `ByLastmod` sort function to pages. {{<gh 0xeb627ca16de6fb5e8646279edd295a8bf0f72bf1 >}}
+* New templates functions:
+ * `readFile` {{<gh 1551 >}}
+ * `countwords` and `countrunes` {{<gh 1440>}}
+ * `default` {{<gh 1943>}}
+ * `hasPrefix` {{<gh 1243>}}
+ * `humanize` {{<gh 1818>}}
+ * `jsonify` {{<gh 0x435e996c4fd48e9009ffa9f83a19fb55f0777dbd>}}
+ * `md5` and `sha1` {{<gh 1932>}}
+ * `replaceRE` {{<gh 1845>}}
+ * `findRE` {{<gh 2048>}}
+ * `shuffle` {{<gh 1942>}}
+ * `slice` {{<gh 1902>}}
+ * `plainify` {{<gh 1915>}}
+
+### Enhancements
+
+* Hugo now exits with error code on any error. This is a big thing for
+ automated deployments. {{<gh 740 >}}
+* Print error when `/index.html` is zero-length {{<gh 947>}}
+* Enable dirname and filename bash autocompletion for more flags {{<gh
+ 0x666ddd237791b56fd048992dca9a27d1af50a10e>}}
+* Improve error handling in commands {{<gh 1502>}}
+* Add sanity checks for `hugo import jekyll` {{<gh 1625 >}}
+* Add description to `Page.Params` {{<gh 1484>}}
+* Add async version of Google Analytics internal template {{<gh 1711>}}
+* Add autostart option to YouTube shortcode {{<gh 1784>}}
+* Set Date and Lastmod for main home page {{<gh 1903>}}
+* Allow URL with extension in front matter {{<gh 1923>}}
+* Add list support in Scratch {{<gh
+ 0xeaba04e82bdfc5d4c29e970f11b4aab9cc0efeaa>}}
+* Add file option to gist shortcode {{<gh 1955>}}
+* Add config layout and content directory CLI options {{<gh 1698>}}
+* Add boolean value comparison to `where` template function {{<gh
+ 0xf3c74c9db484c8961e70cb3458f9e41e7832fa12>}}
+* Do not write to cache when `ignoreCache` is set {{<gh 2067>}}
+* Add option to disable rendering of 404 page {{<gh 2037>}}
+* Mercurial is no longer needed to build Hugo {{<gh 2062 >}}
+* Do not create `robots.txt` by default {{<gh 2049>}}
+* Disable syntax guessing for PygmentsCodeFences by default. To enable syntax
+ guessing again, add the following to your config file:
+ `PygmentsCodeFencesGuessSyntax = true` {{<gh 2034>}}
+* Make `ByCount` sort consistently {{<gh 1930>}}
+* Add `Scratch` to shortcode {{<gh 2000>}}
+* Add support for symbolic links for content, layout, static, theme {{<gh 1855 >}}
+* Add '+' as one of the valid characters in URLs specified in the front matter {{<gh 1290 >}}
+* Make alias redirect output URLs relative when `RelativeURLs = true` {{<gh 2093 >}}
+* Hugo injects meta generator tag on homepage if missing {{<gh 2182 >}}
+
+### Fixes
+
+* Fix file change watcher for TextMate 2 and friends on OS X {{<gh 1053 >}}
+* Make dynamic reloading of config file reliable on all platform {{<gh 1684 >}}
+* Hugo now works on Linux/arm64 {{<gh 1772 >}}
+* `plainIDAnchors` now defaults to `true` {{<gh 2057>}}
+* Win32 and ARM builds fixed {{<gh 1716>}}
+* Copy static dir files without theme's static dir {{<gh 1656>}}
+* Make `noTimes` command flag work {{<gh 1657>}}
+* Change most global CLI flags into local ones {{<gh 1624>}}
+* Remove transformation of menu URLs {{<gh 1239>}}
+* Do not fail on unknown Jekyll file {{<gh 1705>}}
+* Use absolute path when editing with editor {{<gh 1589>}}
+* Fix hugo server "Watching for changes" path display {{<gh 1721>}}
+* Do not strip special characters out of URLs {{<gh 1292>}}
+* Fix `RSSLink` when uglyURLs are enabled {{<gh 175>}}
+* Get BaseURL from viper in server mode {{<gh 1821>}}
+* Fix shortcode handling in RST {{<gh 1904>}}
+* Use default sitemap configuration for homepage {{<gh 1304>}}
+* Exit if specific port is unavailable in server mode {{<gh 1901>}}
+* Fix regression in "section menus for lazy blogger" {{<gh 2065>}}
+
+****
+
+## **0.15.0** November 25, 2015
+
+The v0.15.0 Hugo release brings a lot of polish to Hugo. Exactly 6 months after
+the 0.14 release, Hugo has seen massive growth and changes. Most notably, this
+is Hugo's first release under the Apache 2.0 license. With this license change
+we hope to expand the great community around Hugo and make it easier for our
+many users to contribute. This release represents over **377 contributions by
+87 contributors** to the main Hugo repo and hundreds of improvements to the
+libraries Hugo uses. Hugo also launched a [new theme
+showcase](http://themes.gohugo.io) and participated in
+[Hacktoberfest](https://hacktoberfest.digitalocean.com).
+
+Hugo now has:
+
+* 6700 (+2700) stars on GitHub
+* 235 (+75) contributors
+* 65 (+30) themes
+
+
+**Template Improvements:** This release takes Hugo to a new level of speed and
+usability. Considerable work has been done adding features and performance to
+the template system which now has full support of Ace, Amber and Go Templates.
+
+**Hugo Import:** Have a Jekyll site, but dreaming of porting it to Hugo? This
+release introduces a new `hugo import jekyll`command that makes this easier
+than ever.
+
+**Performance Improvements:** Just when you thought Hugo couldn't get any faster,
+Hugo continues to improve in speed while adding features. Notably Hugo 0.15
+introduces the ability to render and serve directly from memory resulting in
+30%+ lower render times.
+
+Huge thanks to all who participated in this release. A special thanks to
+{{< gh "@bep" >}} who led the development of Hugo this release again,
+{{< gh "@anthonyfok" >}},
+{{< gh "@eparis" >}},
+{{< gh "@tatsushid" >}} and
+{{< gh "@DigitalCraftsman" >}}.
+
+
+### New features
+* new `hugo import jekyll` command. {{< gh 1469 >}}
+* The new `Param` convenience method on `Page` and `Node` can be used to get the most specific parameter value for a given key. {{< gh 1462 >}}
+* Several new information elements have been added to `Page` and `Node`:
+ * `RuneCount`: The number of [runes](http://blog.golang.org/strings) in the content, excluding any whitespace. This may be a good alternative to `.WordCount` for Japanese and other CJK languages where a word-split by spaces makes no sense. {{< gh 1266 >}}
+ * `RawContent`: Raw Markdown as a string. One use case may be of embedding remarkjs.com slides.
+ * `IsHome`: tells the truth about whether you're on the home page or not.
+
+### Improvements
+* `hugo server` now builds ~30%+ faster by rendering to memory instead of disk. To get the old behavior, start the server with `--renderToDisk=true`.
+* Hugo now supports dynamic reloading of the config file when watching.
+* We now use a custom-built `LazyFileReader` for reading file contents, which means we don't read media files in `/content` into memory anymore -- and file reading is now performed in parallel on multicore PCs. {{< gh 1181 >}}
+* Hugo is now built with `Go 1.5` which, among many other improvements, have fixed the last known data race in Hugo. {{< gh 917 >}}
+* Paginator now also supports page groups. {{< gh 1274 >}}
+* Markdown improvements:
+ * Hugo now supports GitHub-flavoured markdown code fences for highlighting for `md`-files (Blackfriday rendered markdown) and `mmark` files (MMark rendered markdown). {{< gh 362 1258 >}}
+ * Several new Blackfriday options are added:
+ * Option to disable Blackfriday's `Smartypants`.
+ * Option for Blackfriday to open links in a new window/tab. {{< gh 1220 >}}
+ * Option to disable Blackfriday's LaTeX style dashes {{< gh 1231 >}}
+ * Definition lists extension support.
+* `Scratch` now has built-in `map` support.
+* We now fall back to `link title` for the default page sort. {{< gh 1299 >}}
+* Some notable new configuration options:
+ * `IgnoreFiles` can be set with a list of Regular Expressions that matches files to be ignored during build. {{< gh 1189 >}}
+ * `PreserveTaxonomyNames`, when set to `true`, will preserve what you type as the taxonomy name both in the folders created and the taxonomy `key`, but it will be normalized for the URL. {{< gh 1180 >}}
+* `hugo gen` can now generate man files, bash auto complete and markdown documentation
+* Hugo will now make suggestions when a command is mistyped
+* Shortcodes now have a boolean `.IsNamedParams` property. {{< gh 1597 >}}
+
+### New Template Features
+* All template engines:
+ * The new `dict` function that could be used to pass maps into a template. {{< gh 1463 >}}
+ * The new `pluralize` and `singularize` template funcs.
+ * The new `base64Decode` and `base64Encode` template funcs.
+ * The `sort` template func now accepts field/key chaining arguments and pointer values. {{< gh 1330 >}}
+ * Several fixes for `slicestr` and `substr`, most importantly, they now have full `utf-8`-support. {{< gh 1190 1333 1347 >}}
+ * The new `last` template function allows the user to select the last `N` items of a slice. {{< gh 1148 >}}
+ * The new `after` func allows the user to select the items after the `Nth` item. {{< gh 1200 >}}
+ * Add `time.Time` type support to the `where`, `ge`, `gt`, `le`, and `lt` template functions.
+ * It is now possible to use constructs like `where Values ".Param.key" nil` to filter pages that doesn't have a particular parameter. {{< gh 1232 >}}
+ * `getJSON`/`getCSV`: Add retry on invalid content. {{< gh 1166 >}}
+ * The new `readDir` func lists local files. {{< gh 1204 >}}
+ * The new `safeJS` function allows the embedding of content into JavaScript contexts in Go templates.
+ * Get the main site RSS link from any page by accessing the `.Site.RSSLink` property. {{< gh 1566 >}}
+* Ace templates:
+ * Base templates now also works in themes. {{< gh 1215 >}}.
+ * And now also on Windows. {{< gh 1178 >}}
+* Full support for Amber templates including all template functions.
+* A built-in template for Google Analytics. {{< gh 1505 >}}
+* Hugo is now shipped with new built-in shortcodes: {{< gh 1576 >}}
+ * `youtube` for YouTube videos
+ * `vimeo` for Vimeo videos
+ * `gist` for GitHub gists
+ * `tweet` for Twitter Tweets
+ * `speakerdeck` for Speakerdeck slides
+
+
+### Bugfixes
+* Fix data races in page sorting and page reversal. These operations are now also cached. {{< gh 1293 >}}
+* `page.HasMenuCurrent()` and `node.HasMenuCurrent()` now work correctly in multi-level nested menus.
+* Support `Fish and Chips` style section titles. Previously, this would end up as `Fish And Chips`. Now, the first character is made toupper, but the rest are preserved as-is. {{< gh 1176 >}}
+* Hugo now removes superfluous p-tags around shortcodes. {{< gh 1148 >}}
+
+### Notices
+* `hugo server` will watch by default now.
+* Some fields and methods were deprecated in `0.14`. These are now removed, so the error message isn't as friendly if you still use the old values. So please change:
+ * `getJson` to `getJSON`, `getCsv` to `getCSV`, `safeHtml` to
+ `safeHTML`, `safeCss` to `safeCSS`, `safeUrl` to `safeURL`, `Url` to `URL`,
+ `UrlPath` to `URLPath`, `BaseUrl` to `BaseURL`, `Recent` to `Pages`.
+
+### Known Issues
+
+Using the Hugo v0.15 32-bit Windows or ARM binary, running `hugo server` would crash or hang due to a [memory alignment issue](https://golang.org/pkg/sync/atomic/#pkg-note-BUG) in [Afero](https://github.com/spf13/afero). The bug was discovered shortly after the v0.15.0 release and has since been [fixed](https://github.com/spf13/afero/pull/23) by {{< gh "@tpng" >}}. If you encounter this bug, you may either compile Hugo v0.16-DEV from source, or use the following solution/workaround:
+
+* **64-bit Windows users: Please use [hugo_0.15_windows_amd64.zip](https://github.com/gohugoio/hugo/releases/download/v0.15/hugo_0.15_windows_amd64.zip)** (amd64 == x86-64). It is only the 32-bit hugo_0.15_windows_386.zip that crashes/hangs (see {{< gh 1621 >}} and {{< gh 1628 >}}).
+* **32-bit Windows and ARM users: Please run `hugo server --renderToDisk` as a workaround** until Hugo v0.16 is released (see [“hugo server” returns runtime error on armhf](https://discourse.gohugo.io/t/hugo-server-returns-runtime-error-on-armhf/2293) and {{< gh 1716 >}}).
diff --git a/docs/content/en/news/0.17-relnotes/index.md b/docs/content/en/news/0.17-relnotes/index.md
new file mode 100644
index 000000000..034e8e891
--- /dev/null
+++ b/docs/content/en/news/0.17-relnotes/index.md
@@ -0,0 +1,93 @@
+---
+author: bep
+categories: ["Releases"]
+date: 2016-10-07T13:54:06-04:00
+description: "Hugo now supports multilingual sites with the most simple and elegant experience."
+link: ""
+title: "0.17: Hugo is going global"
+draft: false
+aliases: [/0-17/]
+---
+Hugo is going global with our 0.17 release. We put a lot of thought into how we could extend Hugo
+to support multilingual websites with the most simple and elegant experience. Hugo's multilingual
+capabilities rival the best web and documentation software, but Hugo's experience is unmatched.
+If you have a single language website, the simple Hugo experience you already love is unchanged.
+Adding additional languages to your website is simple and straightforward. Hugo has been completely
+internally rewritten to be multilingual aware with translation and internationalization features
+embedded throughout Hugo.
+
+Hugo continues its trend of each release being faster than the last. It's quite a challenge to consistently add
+significant new functionality and simultaneously dramatically improve performance. {{<gh "@bep">}} has made it
+his personal mission to apply the Go mantra of "Enable more. Do less" to Hugo. Hugo's consistent improvement
+is a testament to his brilliance and his dedication to his craft. Hugo additionally benefits from the
+performance improvements from the Go team in the Go 1.7 release.
+
+This release represents **over 300 contributions by over 70 contributors** to
+the main Hugo code base. Since last release Hugo has **gained 2000 stars, 50 new
+contributors and 20 additional themes.**
+
+Hugo now has:
+
+* 12,000 stars on GitHub
+* 370+ contributors
+* 110+ themes
+
+{{<gh "@bep" >}} continues to lead the project with the lionshare of contributions
+and reviews. A special thanks to {{<gh "@bep" >}} and {{<gh "@abourget" >}} for their
+considerable work on multilingual support.
+
+A big welcome to newcomers {{<gh "@MarkDBlackwell" >}}, {{<gh "@bogem" >}} and
+{{<gh "@g3wanghc" >}} for their critical contributions.
+
+### Highlights
+
+**Multilingual Support:**
+Hugo now supports multiple languages side-by-side. A single site can now have multiple languages rendered with
+full support for translation and i18n.
+
+**Performance:**
+Hugo is faster than ever! Hugo 0.17 is not only our fastest release, it's also the most efficient.
+Hugo 0.17 is **nearly twice as fast as Hugo 0.16** and uses about 10% less memory.
+This means that the same site will build in nearly half the time it took with Hugo 0.16.
+For the first time Hugo sites are averaging well under 1ms per rendered content.
+
+**Docs overhaul:**
+This release really focused on improving the documentation. [Gohugo.io](http://gohugo.io) is
+more accurate and complete than ever.
+
+**Support for macOS Sierra**
+
+### New Features
+* Multilingual support {{<gh 2303>}}
+* Allow content expiration {{<gh 2137 >}}
+* New templates functions:
+ * `querify` function to generate query strings inside templates {{<gh 2257>}}
+ * `htmlEscape` and `htmlUnescape` template functions {{<gh 2287>}}
+ * `time` converts a timestamp string into a time.Time structure {{<gh 2329>}}
+
+### Enhancements
+
+* Render the shortcodes as late as possible {{<gh 0xed0985404db4630d1b9d3ad0b7e41fb186ae0112>}}
+* Remove unneeded casts in page.getParam {{<gh 2186 >}}
+* Automatic page date fallback {{<gh 2239>}}
+* Enable safeHTMLAttr {{<gh 2234>}}
+* Add TODO list support for markdown {{<gh 2296>}}
+* Make absURL and relURL accept any type {{<gh 2352>}}
+* Suppress 'missing static' error {{<gh 2344>}}
+* Make summary, wordcount etc. more efficient {{<gh 2378>}}
+* Better error reporting in `hugo convert` {{<gh 2440>}}
+* Reproducible builds thanks to govendor {{<gh 2461>}}
+
+### Fixes
+
+* Fix shortcode in markdown headers {{<gh 2210 >}}
+* Explicitly bind livereload to hugo server port {{<gh 2205>}}
+* Fix Emojify for certain text patterns {{<gh 2198>}}
+* Normalize file name to NFC {{<gh 2259>}}
+* Ignore emacs temp files {{<gh 2266>}}
+* Handle symlink change event {{<gh 2273>}}
+* Fix panic when using URLize {{<gh 2274>}}
+* `hugo import jekyll`: Fixed target path location check {{<gh 2293>}}
+* Return all errors from casting in templates {{<gh 2356>}}
+* Fix paginator counter on x86-32 {{<gh 2420>}}
+* Fix half-broken self-closing shortcodes {{<gh 2499>}}
diff --git a/docs/content/en/news/0.18-relnotes/index.md b/docs/content/en/news/0.18-relnotes/index.md
new file mode 100644
index 000000000..5aaab9ffe
--- /dev/null
+++ b/docs/content/en/news/0.18-relnotes/index.md
@@ -0,0 +1,114 @@
+---
+date: 2016-12-30T13:54:02-04:00
+categories: ["Releases"]
+description: "The primary new feature in Hugo 0.18 is that every piece of content is now a Page."
+link: ""
+title: "Hugo 0.18"
+draft: false
+author: bep
+aliases: [/0-18/]
+---
+
+Hugo 0.18.1 is a bug fix release fixing some issues introduced in Hugo 0.18:
+
+* Fix 32-bit binaries {{<gh 2847 >}}
+* Fix issues with `preserveTaxonomyNames` {{<gh 2809 >}}
+* Fix `.URL` for taxonomy pages when `uglyURLs=true` {{<gh 2819 >}}
+* Fix `IsTranslated` and `Translations` for node pages {{<gh 2812 >}}
+* Make template error messages more verbose {{<gh 2820 >}}
+
+## **0.18.0** December 19th 2016
+
+Today, we're excited to release the much-anticipated Hugo 0.18!
+
+We're heading towards the end of the year 2016, and we can look back on three releases and a steady growing community around the project.
+This release includes **over 220 contributions by nearly 50 contributors** to the main codebase.
+Since the last release, Hugo has **gained 1750 stars and 27 additional themes**.
+
+Hugo now has:
+
+- 13750+ stars
+- 408+ contributors
+- 137+ themes
+
+{{< gh "@bep" >}} once again took the lead of Hugo and contributed a significant amount of additions.
+Also a big shoutout to {{< gh "@digitalcraftsman" >}} for his relentless work on keeping the documentation and the themes site in pristine condition,
+and also a big thanks to {{< gh "@moorereason" >}} and {{< gh "@bogem" >}} for their contributions.
+
+We wish you all a Merry Christmas and a Happy New Year.<br>
+*The Hugo team*
+
+### Highlights
+
+The primary new feature in Hugo 0.18 is that every piece of content is now a `Page` ({{<gh 2297>}}). This means that every page, including the homepage, can have a content file with front matter.
+
+Not only is this a much simpler model to understand, it is also faster and paved the way for several important new features:
+
+* Enable proper titles for Nodes {{<gh 1051>}}
+* Sitemap.xml should include nodes, as well as pages {{<gh 1303>}}
+* Document homepage content workaround {{<gh 2240>}}
+* Allow home page to be easily authored in markdown {{<gh 720>}}
+* Minimalist website with homepage as content {{<gh 330>}}
+
+Hugo again continues its trend of each release being faster than the last. It's quite a challenge to consistently add significant new functionality and simultaneously dramatically improve performance. Running [this benchmark]( https://github.com/bep/hugo-benchmark) with [these sites](https://github.com/bep/hugo-benchmark/tree/master/sites) (renders to memory) shows about 60% reduction in time spent and 30% reduction in memory usage compared to Hugo 0.17.
+
+### Other New Features
+
+* Every `Page` now has a `Kind` property. Since everything is a `Page` now, the `Kind` is used to differentiate different kinds of pages.
+ Possible values are `page`, `home`, `section`, `taxonomy`, and `taxonomyTerm`.
+ (Internally, we also define `RSS`, `sitemap`, `robotsTXT`, and `404`, but those have no practical use for end users at the moment since they are not included in any collections.)
+* Add a `GitInfo` object to `Page` if `enableGitInfo` is set. It then also sets `Lastmod` for the given `Page` to the author date provided by Git. {{<gh 2291>}}
+* Implement support for alias templates {{<gh 2533 >}}
+* New template functions:
+ * Add `imageConfig` function {{<gh 2677>}}
+ * Add `sha256` function {{<gh 2762>}}
+ * Add `partialCached` template function {{<gh 1368>}}
+* Add shortcode to display Instagram images {{<gh 2690>}}
+* Add `noChmod` option to disable perm sync {{<gh 2749>}}
+* Add `quiet` build mode {{<gh 1218>}}
+
+
+### Notices
+
+* `.Site.Pages` will now contain *several kinds of pages*, including regular pages, sections, taxonomies, and the home page.
+ If you want a specific kind of page, you can filter it with `where` and `Kind`.
+ `.Site.RegularPages` is a shortcut to the page collection you have been used to getting.
+* `RSSlink` is now deprecated. Use `RSSLink` instead.
+ Note that in Hugo 0.17 both of them existed, so there is a fifty-fifty chance you will not have to do anything
+ (if you use a theme, the chance is close to 0), and `RSSlink` will still work for two Hugo versions.
+
+### Fixes
+
+* Revise the `base` template lookup logic so it now better matches the behavior of regular templates, making it easier to override the master templates from the theme {{<gh 2783>}}
+* Add workaround for `block` template crash.
+ Block templates are very useful, but there is a bug in Go 1.6 and 1.7 which makes the template rendering crash if you use the block template in more complex scenarios.
+ This is fixed in the upcoming Go 1.8, but Hugo adds a temporary workaround in Hugo 0.18. {{<gh 2549>}}
+* All the `Params` configurations are now case insensitive {{<gh 1129>}} {{<gh 2590>}} {{<gh 2615>}}
+* Make RawContent raw again {{<gh 2601>}}
+* Fix archetype title and date handling {{<gh 2750>}}
+* Fix TOML archetype parsing in `hugo new` {{<gh 2745>}}
+* Fix page sorting when weight is zero {{<gh 2673>}}
+* Fix page names that contain dot {{<gh 2555>}}
+* Fix RSS Title regression {{<gh 2645>}}
+* Handle ToC before handling shortcodes {{<gh 2433>}}
+* Only watch relevant themes dir {{<gh 2602>}}
+* Hugo new content creates TOML slices with closing bracket on new line {{<gh 2800>}}
+
+### Improvements
+
+* Add page information to error logging in rendering {{<gh 2570>}}
+* Deprecate `RSSlink` in favor of `RSSLink`
+* Make benchmark command more useful {{<gh 2432>}}
+* Consolidate the `Param` methods {{<gh 2590>}}
+* Allow to set cache dir in config file
+* Performance improvements:
+ * Avoid repeated Viper loads of `sectionPagesMenu` {{<gh 2728>}}
+ * Avoid reading from Viper for path and URL funcs {{<gh 2495>}}
+ * Add `partialCached` template function. This can be a significant performance boost if you have complex partials that does not need to be rerendered for every page. {{<gh 1368>}}
+
+### Documentation Updates
+
+* Update roadmap {{<gh 2666>}}
+* Update multilingual example {{<gh 2417>}}
+* Add a "Deployment with rsync" tutorial page {{<gh 2658>}}
+* Refactor `/docs` to use the `block` keyword {{<gh 2226>}}
diff --git a/docs/content/en/news/0.19-relnotes/index.md b/docs/content/en/news/0.19-relnotes/index.md
new file mode 100644
index 000000000..073b47495
--- /dev/null
+++ b/docs/content/en/news/0.19-relnotes/index.md
@@ -0,0 +1,83 @@
+---
+date: 2017-02-27T13:53:58-04:00
+categories: ["Releases"]
+description: "Hugo 0.19 brings native Emacs Org-mode content support, and Hugo has its own Twitter account"
+link: ""
+title: "Hugo 0.19"
+draft: false
+author: budparr
+aliases: [/0-19/]
+---
+
+We're happy to announce the first release of Hugo in 2017.
+
+This release represents **over 180 contributions by over 50 contributors** to the main Hugo code base. Since last release Hugo has **gained 1450 stars, 35 new contributors, and 15 additional themes.**
+
+Hugo now has:
+
+* 15200+ stars
+* 470+ contributors
+* 151+ themes
+
+Furthermore, Hugo has its own Twitter account ([@gohugoio](https://twitter.com/gohugoio)) where we share bite-sized news and themes from the Hugo community.
+
+{{< gh "@bep" >}} leads the Hugo development and once again contributed a significant amount of additions. Also a big shoutout to {{< gh "@chaseadamsio" >}} for the Emacs Org-mode support, {{< gh "@digitalcraftsman" >}} for his relentless work on keeping the documentation and the themes site in pristine condition, {{< gh "@fj" >}}for his work on revising the `params` handling in Hugo, and {{< gh "@moorereason" >}} and {{< gh "@bogem" >}} for their ongoing contributions.
+
+### Highlights
+
+Hugo `0.19` brings native Emacs Org-mode content support ({{<gh 1483>}}), big thanks to {{< gh "@chaseadamsio" >}}.
+
+Also, a considerably amount of work have been put into cleaning up the Hugo source code, in an issue titled [Refactor the globals out of site build](https://github.com/gohugoio/hugo/issues/2701). This is not immediately visible to the Hugo end user, but will speed up future development.
+
+Hugo `0.18` was bringing full-parallel page rendering, so workarounds depending on rendering order did not work anymore, and pages with duplicate target paths (common examples would be `/index.md` or `/about/index.md`) would now conflict with the home page or the section listing.
+
+With Hugo `0.19`, you can control this behaviour by turning off page types you do not want ({{<gh 2534 >}}). In its most extreme case, if you put the below setting in your [`config.toml`](/getting-started/configuration/), you will get **nothing!**:
+
+{{< code-toggle file="config" >}}
+disableKinds = ["page", "home", "section", "taxonomy", "taxonomyTerm", "RSS", "sitemap", "robotsTXT", "404"]
+{{< /code-toggle >}}
+
+### Other New Features
+
+* Add ability to sort pages by front matter parameters, enabling easy custom "top 10" page lists. {{<gh 3022 >}}
+* Add `truncate` template function {{<gh 2882 >}}
+* Add `now` function, which replaces the now deprecated `.Now` {{<gh 2859 >}}
+* Make RSS item limit configurable {{<gh 3035 >}}
+
+### Enhancements
+
+* Enhance `.Param` to permit arbitrarily nested parameter references {{<gh 2598 >}}
+* Use `Page.Params` more consistently when adding metadata {{<gh 3033 >}}
+* The `sectionPagesMenu` feature ("Section menu for the lazy blogger") is now integrated with the section content pages. {{<gh 2974 >}}
+* Hugo `0.19` is compiled with Go 1.8!
+* Make template funcs like `findRE` and friends more liberal in what argument types they accept {{<gh 3018 >}} {{<gh 2822 >}}
+* Improve generation of OpenGraph date tags {{<gh 2979 >}}
+
+### Notes
+
+* `sourceRelativeLinks` is now deprecated and will be removed in Hugo `0.21` if no one is stepping up to the plate and fixes and maintains this feature. {{<gh 3028 >}}
+
+### Fixes
+
+* Fix `.Site.LastChange` on sites where the default sort order is not chronological. {{<gh 2909 >}}
+* Fix regression of `.Truncated` evaluation in manual summaries. {{<gh 2989 >}}
+* Fix `preserveTaxonomyNames` regression {{<gh 3070 >}}
+* Fix issue with taxonomies when only some have content page {{<gh 2992 >}}
+* Fix instagram shortcode panic on invalid ID {{<gh 3048 >}}
+* Fix subtle data race in `getJSON` {{<gh 3045 >}}
+* Fix deadlock in cached partials {{<gh 2935 >}}
+* Avoid double-encoding of paginator URLs {{<gh 2177 >}}
+* Allow tilde in URLs {{<gh 2177 >}}
+* Fix `.Site.Pages` handling on live reloads {{<gh 2869 >}}
+* `UniqueID` now correctly uses the fill file path from the content root to calculate the hash, and is finally ... unique!
+* Discard current language based on `.Lang()`, go get translations correct for paginated pages. {{<gh 2972 >}}
+* Fix infinite loop in template AST handling for recursive templates {{<gh 2927 >}}
+* Fix issue with watching when config loading fails {{<gh 2603 >}}
+* Correctly flush the imageConfig on live-reload {{<gh 3016 >}}
+* Fix parsing of TOML arrays in front matter {{<gh 2752 >}}
+
+### Docs
+
+* Add tutorial "How to use Google Firebase to host a Hugo site" {{<gh 3007 >}}
+* Improve documentation for menu rendering {{<gh 3056 >}}
+* Revise GitHub Pages deployment tutorial {{<gh 2930 >}}
diff --git a/docs/content/en/news/0.20-relnotes/index.md b/docs/content/en/news/0.20-relnotes/index.md
new file mode 100644
index 000000000..75e944a6c
--- /dev/null
+++ b/docs/content/en/news/0.20-relnotes/index.md
@@ -0,0 +1,72 @@
+---
+date: 2017-04-10T13:53:58-04:00
+categories: ["Releases"]
+description: "Hugo 0.20 introduces the powerful and long sought after feature Custom Output Formats"
+link: ""
+title: "Hugo 0.20"
+draft: false
+author: bep
+aliases: [/0-20/]
+---
+
+Hugo `0.20` introduces the powerful and long sought after feature [Custom Output Formats](http://gohugo.io/extras/output-formats/); Hugo isn’t just that “static HTML with an added RSS feed” anymore. _Say hello_ to calendars, e-book formats, Google AMP, and JSON search indexes, to name a few ( [#2828](//github.com/gohugoio/hugo/issues/2828) ).
+
+This release represents **over 180 contributions by over 30 contributors** to the main Hugo code base. Since last release Hugo has **gained 1100 stars, 20 new contributors and 5 additional themes.**
+
+Hugo now has:
+
+* 16300+ stars
+* 495+ contributors
+* 156+ themes
+
+[@bep](//github.com/bep) still leads the Hugo development with his witty Norwegian humor, and once again contributed a significant amount of additions. Also a big shoutout to [@digitalcraftsman](//github.com/digitalcraftsman) for his relentless work on keeping the documentation and the themes site in pristine condition, and [@moorereason](//github.com/moorereason) and [@bogem](//github.com/bogem) for their ongoing contributions.
+
+## Other Highlights
+
+[@bogem](//github.com/bogem) has also contributed TOML as an alternative and much simpler format for language/i18n files ([#3200](//github.com/gohugoio/hugo/issues/3200)). A feature you will appreciate when you start to work on larger translations.
+
+Also, there have been some important updates in the Emacs Org-mode handling: [@chaseadamsio](//github.com/chaseadamsio) has fixed the newline-handling ( [#3126](//github.com/gohugoio/hugo/issues/3126) ) and [@clockoon](//github.com/clockoon) has added basic footnote support.
+
+Worth mentioning is also the ongoing work that [@rdwatters](//github.com/rdwatters) and [@budparr](//github.com/budparr) is doing to re-do the [gohugo.io](https://gohugo.io/) site, including a total restructuring and partial rewrite of the documentation. It is getting close to finished, and it looks fantastic!
+
+## Notes
+
+* `RSS` description in the built-in template is changed from full `.Content` to `.Summary`. This is a somewhat breaking change, but is what most people expect from their RSS feeds. If you want full content, please provide your own RSS template.
+* The deprecated `.RSSlink` is now removed. Use `.RSSLink`.
+* `RSSUri` is deprecated and will be removed in a future Hugo version, replace it with an output format definition.
+* The deprecated `.Site.GetParam` is now removed, use `.Site.Param`.
+* Hugo does no longer append missing trailing slash to `baseURL` set as a command line parameter, making it consistent with how it behaves from site config. [#3262](//github.com/gohugoio/hugo/issues/3262)
+
+## Enhancements
+
+* Hugo `0.20` is built with Go 1.8.1.
+* Add `.Site.Params.mainSections` that defaults to the section with the most pages. Plan is to get themes to use this instead of the hardcoded `blog` in `where` clauses. [#3206](//github.com/gohugoio/hugo/issues/3206)
+* File extension is now configurable. [#320](//github.com/gohugoio/hugo/issues/320)
+* Impove `markdownify` template function performance. [#3292](//github.com/gohugoio/hugo/issues/3292)
+* Add taxonomy terms’ pages to `.Data.Pages` [#2826](//github.com/gohugoio/hugo/issues/2826)
+* Change `RSS` description from full `.Content` to `.Summary`.
+* Ignore “.” dirs in `hugo --cleanDestinationDir` [#3202](//github.com/gohugoio/hugo/issues/3202)
+* Allow `jekyll import` to accept both `2006-01-02` and `2006-1-2` date format [#2738](//github.com/gohugoio/hugo/issues/2738)
+* Raise the default `rssLimit` [#3145](//github.com/gohugoio/hugo/issues/3145)
+* Unify section list vs single template lookup order [#3116](//github.com/gohugoio/hugo/issues/3116)
+* Allow `apply` to be used with the built-in Go template funcs `print`, `printf` and `println`. [#3139](//github.com/gohugoio/hugo/issues/3139)
+
+## Fixes
+
+* Fix deadlock in `getJSON` [#3211](//github.com/gohugoio/hugo/issues/3211)
+* Make sure empty terms pages are created. [#2977](//github.com/gohugoio/hugo/issues/2977)
+* Fix base template lookup order for sections [#2995](//github.com/gohugoio/hugo/issues/2995)
+* `URL` fixes:
+ * Fix pagination URLs with `baseURL` with sub-root and `canonifyUrls=false` [#1252](//github.com/gohugoio/hugo/issues/1252)
+ * Fix pagination URL for resources with “.” in name [#2110](//github.com/gohugoio/hugo/issues/2110) [#2374](//github.com/gohugoio/hugo/issues/2374) [#1885](//github.com/gohugoio/hugo/issues/1885)
+ * Handle taxonomy names with period [#3169](//github.com/gohugoio/hugo/issues/3169)
+ * Handle `uglyURLs` ambiguity in `Permalink` [#3102](//github.com/gohugoio/hugo/issues/3102)
+ * Fix `Permalink` for language-roots wrong when `uglyURLs` is `true` [#3179](//github.com/gohugoio/hugo/issues/3179)
+ * Fix misc case issues for `URLs` [#1641](//github.com/gohugoio/hugo/issues/1641)
+ * Fix for taxonomies URLs when `uglyUrls=true` [#1989](//github.com/gohugoio/hugo/issues/1989)
+ * Fix empty `RSSLink` for list pages with content page. [#3131](//github.com/gohugoio/hugo/issues/3131)
+* Correctly identify regular pages on the form “my_index_page.md” [#3234](//github.com/gohugoio/hugo/issues/3234)
+* `Exit -1` on `ERROR` in global logger [#3239](//github.com/gohugoio/hugo/issues/3239)
+* Document hugo `help command` [#2349](//github.com/gohugoio/hugo/issues/2349)
+* Fix internal `Hugo` version handling for bug fix releases. [#3025](//github.com/gohugoio/hugo/issues/3025)
+* Only return `RSSLink` for pages that actually have a RSS feed. [#1302](//github.com/gohugoio/hugo/issues/1302) \ No newline at end of file
diff --git a/docs/content/en/news/0.20.1-relnotes/index.md b/docs/content/en/news/0.20.1-relnotes/index.md
new file mode 100644
index 000000000..109737bb3
--- /dev/null
+++ b/docs/content/en/news/0.20.1-relnotes/index.md
@@ -0,0 +1,15 @@
+---
+date: 2017-04-13T13:53:58-04:00
+categories: ["Releases"]
+description: "Hugo 0.20.1 is a bug fix release, fixing some important regressions introduced in 0.20"
+link: ""
+title: "Hugo 0.20.1"
+draft: false
+author: bep
+aliases: [/0-20-1/]
+---
+
+* Fix logic for base template in work dir vs in the theme [#3323](//github.com/gohugoio/hugo/issues/3323)
+* camelCased templates (partials, shortcodes etc.) not found [#3333](//github.com/gohugoio/hugo/issues/3333)
+* Live-reload fails with `_index.md` with paginator [#3315](//github.com/gohugoio/hugo/issues/3315)
+* `rssURI` WARNING always shown [#3319](//github.com/gohugoio/hugo/issues/3319) \ No newline at end of file
diff --git a/docs/content/en/news/0.20.2-relnotes/index.md b/docs/content/en/news/0.20.2-relnotes/index.md
new file mode 100644
index 000000000..2e67d20ea
--- /dev/null
+++ b/docs/content/en/news/0.20.2-relnotes/index.md
@@ -0,0 +1,47 @@
+---
+date: 2017-04-16T13:53:58-04:00
+categories: ["Releases"]
+description: "Hugo 0.20.2 adds support for plain text partials included into HTML templates"
+link: ""
+title: "Hugo 0.20.2"
+draft: false
+author: bep
+aliases: [/0-20-2/]
+---
+
+Hugo `0.20.2` adds support for plain text partials included into `HTML` templates. This was a side-effect of the big new [Custom Output Format](https://gohugo.io/extras/output-formats/) feature in `0.20`, and while the change was intentional and there was an ongoing discussion about fixing it in [#3273](//github.com/gohugoio/hugo/issues/3273), it did break some themes. There were valid workarounds for these themes, but we might as well get it right.
+
+The most obvious use case for this is inline `CSS` styles, which you now can do without having to name your partials with a `html` suffix.
+
+A simple example:
+
+In `layouts/partials/mystyles.css`:
+
+ body {
+ background-color: {{ .Param "colors.main" }}
+ }
+
+Then in `config.toml` (note that by using the `.Param` lookup func, we can override the color in a page’s front matter if we want):
+
+{{< code-toggle file="config" >}}
+[params]
+[params.colors]
+main = "green"
+text = "blue"
+{{< /code-toggle >}}
+
+And then in `layouts/partials/head.html` (or the partial used to include the head section into your layout):
+
+ <head>
+ <style type="text/css">
+ {{ partial "mystyles.css" . | safeCSS }}
+ </style>
+ </head>
+
+Of course, `0.20` also made it super-easy to create external `CSS` stylesheets based on your site and page configuration. A simple example:
+
+Add “CSS” to your home page’s `outputs` list, create the template `/layouts/index.css` using Go template syntax for the dynamic parts, and then include it into your `HTML` template with:
+
+ {{ with .OutputFormats.Get "css" }}
+ <link rel="{{ .Rel }}" type="{{ .MediaType.Type }}" href="{{ .Permalink | safeURL }}">
+ {{ end }}` \ No newline at end of file
diff --git a/docs/content/en/news/0.20.3-relnotes/index.md b/docs/content/en/news/0.20.3-relnotes/index.md
new file mode 100644
index 000000000..c79d9b202
--- /dev/null
+++ b/docs/content/en/news/0.20.3-relnotes/index.md
@@ -0,0 +1,26 @@
+---
+date: 2017-04-24T13:53:58-04:00
+categories: ["Releases"]
+description: "This is a bug-fix release with one important fix. But it also adds some harness around GoReleaser"
+link: ""
+title: "Hugo 0.20.3"
+draft: false
+author: bep
+aliases: [/0-20-3/]
+---
+
+This is a bug-fix release with one important fix. But it also adds some harness around [GoReleaser](https://github.com/goreleaser/goreleaser) to automate the Hugo release process. Big thanks to [@caarlos0](https://github.com/caarlos0) for great and super-fast support fixing issues along the way.
+
+Hugo now has:
+
+* 16619&#43; [stars](https://github.com/gohugoio/hugo/stargazers)
+* 458&#43; [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 156&#43; [themes](http://themes.gohugo.io/)
+
+## Enhancement
+
+* Automate the Hugo release process [550eba64](https://github.com/gohugoio/hugo/commit/550eba64705725eb54fdb1042e0fb4dbf6f29fd0) [@bep](https://github.com/bep) [#3358](https://github.com/gohugoio/hugo/issues/3358)
+
+## Fix
+
+* Fix handling of zero-length files [9bf5c381](https://github.com/gohugoio/hugo/commit/9bf5c381b6b3e69d4d8dbfd7a40074ac44792bbf) [@bep](https://github.com/bep) [#3355](https://github.com/gohugoio/hugo/issues/3355) \ No newline at end of file
diff --git a/docs/content/en/news/0.20.4-relnotes/index.md b/docs/content/en/news/0.20.4-relnotes/index.md
new file mode 100644
index 000000000..2fde30e14
--- /dev/null
+++ b/docs/content/en/news/0.20.4-relnotes/index.md
@@ -0,0 +1,24 @@
+---
+date: 2017-04-24T17:53:58-04:00
+categories: ["Releases"]
+description: "This is the second bug-fix release of the day, fixing a couple of issues related to the new release scripts"
+link: ""
+title: "Hugo 0.20.4"
+draft: false
+author: bep
+aliases: [/0-20-4/]
+---
+
+This is the second bug-fix release of the day, fixing a couple of issues related to the new release scripts.
+
+Hugo now has:
+
+* 16626&#43; [stars](https://github.com/gohugoio/hugo/stargazers)
+* 457&#43; [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 156&#43; [themes](http://themes.gohugo.io/)
+
+## Fixes
+
+* Fix statically linked binaries [275bcf56](https://github.com/gohugoio/hugo/commit/275bcf566c7cb72367d4423cf4810319311ff680) [@munnerz](https://github.com/munnerz) [#3382](https://github.com/gohugoio/hugo/issues/3382)
+* Filename change in Hugo 0.20.3 binaries [#3385](https://github.com/gohugoio/hugo/issues/3385)
+* Fix version calculation [cb3c6b6f](https://github.com/gohugoio/hugo/commit/cb3c6b6f7670f85189a4a3637e7132901d1ed6e9) [@bep](https://github.com/bep) \ No newline at end of file
diff --git a/docs/content/en/news/0.20.5-relnotes/index.md b/docs/content/en/news/0.20.5-relnotes/index.md
new file mode 100644
index 000000000..eaed27832
--- /dev/null
+++ b/docs/content/en/news/0.20.5-relnotes/index.md
@@ -0,0 +1,12 @@
+---
+date: 2017-04-25T17:53:58-04:00
+categories: ["Releases"]
+description: ""
+link: ""
+title: "Hugo 0.20.5"
+draft: false
+author: bep
+aliases: [/0-20-5/]
+---
+
+This is a bug-fix release which fixes the version number of `0.20.4` (which wrongly shows up as `0.21-DEV`) ([#3388](https://github.com/gohugoio/hugo/issues/3388)). \ No newline at end of file
diff --git a/docs/content/en/news/0.20.6-relnotes/index.md b/docs/content/en/news/0.20.6-relnotes/index.md
new file mode 100644
index 000000000..52189092a
--- /dev/null
+++ b/docs/content/en/news/0.20.6-relnotes/index.md
@@ -0,0 +1,24 @@
+---
+date: 2017-04-27T17:53:58-04:00
+categories: ["Releases"]
+description: ""
+link: ""
+title: "Hugo 0.20.6"
+draft: false
+author: bep
+aliases: [/0-20-6/]
+---
+
+There have been some [shouting on discuss.gohugo.io](https://discuss.gohugo.io/t/index-md-is-generated-in-subfolder-index-index-html-hugo-0-20/6338/15) about some broken sites after the release of Hugo `0.20`. This release reintroduces the old behaviour, making `/my-blog-post/index.md` work as expected.
+
+Hugo now has:
+
+* 16675&#43; [stars](https://github.com/gohugoio/hugo/stargazers)
+* 456&#43; [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 156&#43; [themes](http://themes.gohugo.io/)
+
+## Fixes
+
+* Avoid index.md in /index/index.html [#3396](https://github.com/gohugoio/hugo/issues/3396)
+* Make missing GitInfo a WARNING [b30ca4be](https://github.com/gohugoio/hugo/commit/b30ca4bec811dbc17e9fd05925544db2b75e0e49) [@bep](https://github.com/bep) [#3376](https://github.com/gohugoio/hugo/issues/3376)
+* Fix some of the fpm fields for deb [3bd1d057](https://github.com/gohugoio/hugo/commit/3bd1d0571d5f2f6bf0dc8f90a8adf2dbfcb2fdfd) [@anthonyfok](https://github.com/anthonyfok) \ No newline at end of file
diff --git a/docs/content/en/news/0.20.7-relnotes/index.md b/docs/content/en/news/0.20.7-relnotes/index.md
new file mode 100644
index 000000000..50ac365d5
--- /dev/null
+++ b/docs/content/en/news/0.20.7-relnotes/index.md
@@ -0,0 +1,23 @@
+---
+date: 2017-05-03T17:53:58-04:00
+categories: ["Releases"]
+description: "This just fixes an issue with the release scripts, no change in the binaries"
+link: ""
+title: "Hugo 0.20.7"
+draft: false
+author: bep
+aliases: [/0-20-7/]
+---
+
+This just fixes an issue with the release scripts, no change in the binaries.
+
+
+Hugo now has:
+
+* 16782&#43; [stars](https://github.com/gohugoio/hugo/stargazers)
+* 458&#43; [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 156&#43; [themes](http://themes.gohugo.io/)
+
+## Fix
+
+* Push the tag before goreleaser is run [3682bf52](https://github.com/gohugoio/hugo/commit/3682bf527989e86d9da32d76809306cb576383e8) [@bep](https://github.com/bep) [#3405](https://github.com/gohugoio/hugo/issues/3405) \ No newline at end of file
diff --git a/docs/content/en/news/0.21-relnotes/index.md b/docs/content/en/news/0.21-relnotes/index.md
new file mode 100644
index 000000000..aae1fd0b4
--- /dev/null
+++ b/docs/content/en/news/0.21-relnotes/index.md
@@ -0,0 +1,105 @@
+---
+date: 2017-05-22T17:53:58-04:00
+categories: ["Releases"]
+description: "Hugo 0.21 brings full support for shortcodes per Output Format, the last vital piece of that puzzle"
+link: ""
+title: "Hugo 0.21"
+draft: false
+author: bep
+aliases: [/0-21/]
+---
+
+Hugo `0.21` brings full support for shortcodes per [Output Format](https://gohugo.io/extras/output-formats/) ([#3220](https://github.com/gohugoio/hugo/issues/3220)), the last vital piece of that puzzle. This is especially useful for `Google AMP` with its many custom media tags.
+
+This release represents **126 contributions by 29 contributors** to the main Hugo code base. Since last main release Hugo has **gained 850 stars and 7 additional themes**.
+
+Hugo now has:
+
+* 17156&#43; [stars](https://github.com/gohugoio/hugo/stargazers)
+* 457&#43; [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 163&#43; [themes](http://themes.gohugo.io/)
+
+[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@moorereason](https://github.com/moorereason), [@bogem](https://github.com/bogem), and [@munnerz](https://github.com/munnerz) for their ongoing contributions. And as always a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the documentation and the themes site in pristine condition.
+
+## Other Highlights
+
+On a more technical side, [@moorereason](https://github.com/moorereason) and [@bep](https://github.com/bep) have introduced namespaces for Hugo&#39;s many template funcs ([#3042](https://github.com/gohugoio/hugo/issues/3042) ). There are so many now, and adding more into that big pile would be a sure path toward losing control. Now they are nicely categorised into namespaces with its own tests and examples, with an API that the documentation site can use to make sure it is correct and up-to-date.
+
+## Notes
+
+* The deprecated `.Extension`, `.Now` and `.TargetPath` will now `ERROR` [544f0a63](https://github.com/gohugoio/hugo/commit/544f0a6394b0e085d355e8217fc5bb3d96c12a98) [@bep](https://github.com/bep)
+* The config settings and flags `disable404`, `disableRSS`, `disableSitemap`, `disableRobotsTXT` are now deprecated. Use `disableKinds`. [5794a265](https://github.com/gohugoio/hugo/commit/5794a265b41ffdeebfd8485eecf65cf4088d49d6) [@bep](https://github.com/bep) [#3345](https://github.com/gohugoio/hugo/issues/3345)
+
+## Enhancements
+
+### Templates
+
+* Log a WARNING on wrong usage of `IsSet` [38661c17](https://github.com/gohugoio/hugo/commit/38661c17bb8c31c9f31ee18f8eba5e3bfddd5574) [@moorereason](https://github.com/moorereason) [#3092](https://github.com/gohugoio/hugo/issues/3092)
+* Add support for ellipsed paginator navigator, making paginators with lots of pages more compact [b6ea492b](https://github.com/gohugoio/hugo/commit/b6ea492b7a6325d04d44eeb00a990a3a0e29e0c0) [@bep](https://github.com/bep) [#3466](https://github.com/gohugoio/hugo/issues/3466)
+* Add support for interfaces to `intersect` [f1c29b01](https://github.com/gohugoio/hugo/commit/f1c29b017bbd88e701cd5151dd186e868672ef89) [@moorereason](https://github.com/moorereason) [#1952](https://github.com/gohugoio/hugo/issues/1952)
+* Add `NumFmt` function [93b3b138](https://github.com/gohugoio/hugo/commit/93b3b1386714999d716e03b131f77234248f1724) [@moorereason](https://github.com/moorereason) [#1444](https://github.com/gohugoio/hugo/issues/1444)
+* Add template function namespaces [#3418](https://github.com/gohugoio/hugo/issues/3418) [#3042](https://github.com/gohugoio/hugo/issues/3042) [@moorereason](https://github.com/moorereason) [@bep](https://github.com/bep)
+* Add translation links to the default sitemap template [90d3fbf1](https://github.com/gohugoio/hugo/commit/90d3fbf1da93a279cfe994a226ae82cf5441deab) [@rayjolt](https://github.com/rayjolt) [#2569](https://github.com/gohugoio/hugo/issues/2569)
+* Allow text partials in HTML templates and the other way around [1cf29200](https://github.com/gohugoio/hugo/commit/1cf29200b4bb0a9c006155ec76759b7f4b1ad925) [@bep](https://github.com/bep) [#3273](https://github.com/gohugoio/hugo/issues/3273)
+
+### Output
+
+* Refactor site rendering with an &#34;output format context&#34;. In this release, this is used for shortcode handling only, but this paves the way for future niceness [1e4d082c](https://github.com/gohugoio/hugo/commit/1e4d082cf5b92fedbc60b1b4f0e9d1ee6ec45e33) [@bep](https://github.com/bep) [#3397](https://github.com/gohugoio/hugo/issues/3397) [2bcbf104](https://github.com/gohugoio/hugo/commit/2bcbf104006e0ec03be4fd500f2519301d460f8c) [@bep](https://github.com/bep) [#3220](https://github.com/gohugoio/hugo/issues/3220)
+
+
+### Core
+
+* Handle `shortcode` per `Output Format` [af72db80](https://github.com/gohugoio/hugo/commit/af72db806f2c1c0bf1dfe5832275c41eeba89906) [@bep](https://github.com/bep) [#3220](https://github.com/gohugoio/hugo/issues/3220)
+* Improve shortcode error message [58d9cbd3](https://github.com/gohugoio/hugo/commit/58d9cbd31bcf7c296a39860fd7e566d10faaff28) [@bep](https://github.com/bep)
+* Avoid `index.md` in `/index/index.html` [fea4fd86](https://github.com/gohugoio/hugo/commit/fea4fd86a324bf9679df23f8289887d91b42e919) [@bep](https://github.com/bep) [#3396](https://github.com/gohugoio/hugo/issues/3396)
+* Make missing `GitInfo` a `WARNING` [5ad2f176](https://github.com/gohugoio/hugo/commit/5ad2f17693a9860be76ef8089c8728d2b59d6b04) [@bep](https://github.com/bep) [#3376](https://github.com/gohugoio/hugo/issues/3376)
+* Prevent decoding `pageParam` in common cases [e98f885b](https://github.com/gohugoio/hugo/commit/e98f885b8af27f5473a89d31d0b1f02e61e8a5ec) [@bogem](https://github.com/bogem)
+* Ignore non-source files on partial rebuild [b5b6e81c](https://github.com/gohugoio/hugo/commit/b5b6e81c0269abf9b0f4bc6a127744a25344e5c6) [@xofyarg](https://github.com/xofyarg) [#3325](https://github.com/gohugoio/hugo/issues/3325)
+* Log `WARNING` only on unknown `/data` files [ab692e73](https://github.com/gohugoio/hugo/commit/ab692e73dea3ddfe979c88ee236cc394e47e82f1) [@bep](https://github.com/bep) [#3361](https://github.com/gohugoio/hugo/issues/3361)
+* Avoid processing the same notify event twice [3b677594](https://github.com/gohugoio/hugo/commit/3b67759495c9268c30e6ba2d8c7e3b75d52d2960) [@bep](https://github.com/bep)
+* Only show `rssURI` deprecation `WARNING` if it is actually set [cfd3af8e](https://github.com/gohugoio/hugo/commit/cfd3af8e691119461effa4385251b9d3818e2291) [@bep](https://github.com/bep) [#3319](https://github.com/gohugoio/hugo/issues/3319)
+
+### Docs
+
+* Add documentation on slug translation [635b3bb4](https://github.com/gohugoio/hugo/commit/635b3bb4eb873978c7d52e6c0cb85da0c4d25299) [@xavib](https://github.com/xavib)
+* Replace `cdn.mathjax.org` with `cdnjs.cloudflare.com` [4b637ac0](https://github.com/gohugoio/hugo/commit/4b637ac041d17b22187f5ccd0f65461f0065aaa9) [@takuti](https://github.com/takuti)
+* Add notes about some output format behaviour [162d3a58](https://github.com/gohugoio/hugo/commit/162d3a586d36cabf6376a76b096fd8b6414487ae) [@jpatters](https://github.com/jpatters)
+* Add `txtpen` as alternative commenting service [7cdc244a](https://github.com/gohugoio/hugo/commit/7cdc244a72de4c08edc0008e37aec83d945dccdf) [@rickyhan](https://github.com/rickyhan)
+
+### Other
+
+* Embed `Page` in `WeightedPage` [ebf677a5](https://github.com/gohugoio/hugo/commit/ebf677a58360126d8b9a1e98d086aa4279f53181) [@bep](https://github.com/bep) [#3435](https://github.com/gohugoio/hugo/issues/3435)
+* Improve the detection of untranslated strings [a40d1f6e](https://github.com/gohugoio/hugo/commit/a40d1f6ed2aedddc99725658993258cd557640ed) [@bogem](https://github.com/bogem) [#2607](https://github.com/gohugoio/hugo/issues/2607)
+* Make first letter of the Hugo commands flags&#39; usage lowercase [f0f69d03](https://github.com/gohugoio/hugo/commit/f0f69d03c551acb8ac2eeedaad579cf0b596f9ef) [@bogem](https://github.com/bogem)
+* Import `Octopress` image tag in `Jekyll importer` [5f3ad1c3](https://github.com/gohugoio/hugo/commit/5f3ad1c31985450fab8d6772e9cbfcb57cf5cc53) [@buynov](https://github.com/buynov)
+
+## Fixes
+
+### Templates
+
+* Do not lower case template names [6d2ea0f7](https://github.com/gohugoio/hugo/commit/6d2ea0f7d7e8a54b8edfc36e52ff74266c30dc27) [@bep](https://github.com/bep) [#3333](https://github.com/gohugoio/hugo/issues/3333)
+
+### Output
+
+* Fix output format mixup in example [10287263](https://github.com/gohugoio/hugo/commit/10287263f529181d3169668b044cb84e2e3b049a) [@bep](https://github.com/bep) [#3481](https://github.com/gohugoio/hugo/issues/3481)
+* Fix base theme vs project base template logic [077005e5](https://github.com/gohugoio/hugo/commit/077005e514b1ed50d84ceb90c7c72f184cb04521) [@bep](https://github.com/bep) [#3323](https://github.com/gohugoio/hugo/issues/3323)
+
+### Core
+* Render `404` in default language only [154e18dd](https://github.com/gohugoio/hugo/commit/154e18ddb9ad205055d5bd4827c87f3f0daf499f) [@mitchchn](https://github.com/mitchchn) [#3075](https://github.com/gohugoio/hugo/issues/3075)
+* Fix `RSSLink` vs `RSS` `Output Format` [e682fcc6](https://github.com/gohugoio/hugo/commit/e682fcc62233b47cf5bdcaf598ac0657ef089471) [@bep](https://github.com/bep) [#3450](https://github.com/gohugoio/hugo/issues/3450)
+* Add default config for `ignoreFiles`, making that option work when running in server mode [42f4ce15](https://github.com/gohugoio/hugo/commit/42f4ce15a9d68053da36f9efcf7a7d975cc59559) [@chaseadamsio](https://github.com/chaseadamsio)
+* Fix output formats override when no outputs definition given [6e2f2dd8](https://github.com/gohugoio/hugo/commit/6e2f2dd8d3ca61c92a2ee8824fbf05cadef08425) [@bep](https://github.com/bep) [#3447](https://github.com/gohugoio/hugo/issues/3447)
+* Fix handling of zero-length files [0e87b18b](https://github.com/gohugoio/hugo/commit/0e87b18b66d2c8ba9e2abc429630cb03f5b093d6) [@bep](https://github.com/bep) [#3355](https://github.com/gohugoio/hugo/issues/3355)
+* Must recreate `Paginator` on live-reload [45c74526](https://github.com/gohugoio/hugo/commit/45c74526686f6a2afa02bcee767d837d6b9dd028) [@bep](https://github.com/bep) [#3315](https://github.com/gohugoio/hugo/issues/3315)
+
+### Docs
+
+* Fix incorrect path in `templates/list` [27e88154](https://github.com/gohugoio/hugo/commit/27e88154af2dd9af6d0523d6e67b612e6336f91c) [@MunifTanjim](https://github.com/MunifTanjim)
+* Fixed incorrect specification of directory structure [a28fbca6](https://github.com/gohugoio/hugo/commit/a28fbca6dcfa80b6541f5ef6c8c12cd1804ae9ed) [@TejasQ](https://github.com/TejasQ)
+* Fix `bash` command in `tutorials/github-pages-blog` [c9976155](https://github.com/gohugoio/hugo/commit/c99761555c014e4d041438d5d7e53a6cbaee4492) [@hansott](https://github.com/hansott)
+* Fix `.Data.Pages` range in example [b5e32eb6](https://github.com/gohugoio/hugo/commit/b5e32eb60993b4656918af2c959ae217a68c461e) [@hxlnt](https://github.com/hxlnt)
+
+### Other
+
+* Fix data race in live-reload close, avoiding some rare panics [355736ec](https://github.com/gohugoio/hugo/commit/355736ec357c81dfb2eb6851ee019d407090c5ec) [@bep](https://github.com/bep) [#2625](https://github.com/gohugoio/hugo/issues/2625)
+* Skip `.git` directories in file scan [94b5be67](https://github.com/gohugoio/hugo/commit/94b5be67fc73b87d114d94a7bb1a33ab997f30f1) [@bogem](https://github.com/bogem) [#3468](https://github.com/gohugoio/hugo/issues/3468) \ No newline at end of file
diff --git a/docs/content/en/news/0.22-relnotes/index.md b/docs/content/en/news/0.22-relnotes/index.md
new file mode 100644
index 000000000..8a9e8d5f5
--- /dev/null
+++ b/docs/content/en/news/0.22-relnotes/index.md
@@ -0,0 +1,89 @@
+---
+date: 2017-06-12T17:53:58-04:00
+categories: ["Releases"]
+description: "Hugo 0.22 brings nested sections, by popular demand and a long sought after feature"
+link: ""
+title: "Hugo 0.22"
+draft: false
+author: bep
+aliases: [/0-22/]
+---
+
+
+Hugo `0.22` brings **nested sections**, by popular demand and a long sought after feature ([#465](https://github.com/gohugoio/hugo/issues/465)). We are still low on documentation for this great feature, but [@bep](https://github.com/bep) has been kind enough to accompany his implementation with a [demo site](http://hugotest.bep.is/).
+
+This release represents **58 contributions by 10 contributors** to the main Hugo code base. Since last release Hugo has **gained 420 stars and 2 additional themes.**
+
+[@bep](https://github.com/bep) still leads the Hugo development with his witty Norwegian humor, and once again contributed a significant amount of additions. But also a big shoutout to [@bogem](https://github.com/bogem), [@moorereason](https://github.com/moorereason), and [@onedrawingperday](https://github.com/onedrawingperday) for their ongoing contributions. And as always big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the documentation and the themes site in pristine condition.
+
+Hugo now has:
+
+* 17576&#43; [stars](https://github.com/gohugoio/hugo/stargazers)
+* 455&#43; [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 165&#43; [themes](http://themes.gohugo.io/)
+
+## Other Highlights
+
+`.Site.GetPage` can now also be used to get regular pages ([#2844](https://github.com/gohugoio/hugo/issues/2844)):
+
+```
+{{ (.Site.GetPage "page" "blog" "mypost.md" ).Title }}
+```
+
+Also, considerable work has been put into writing automated benchmark tests for the site builds, and we&#39;re happy to report that although this release comes with fundamental structural changes, this version is -- in general -- even faster than the previous. It’s quite a challenge to consistently add significant new functionality and simultaneously maintain the stellar performance Hugo is famous for.
+
+
+
+## Notes
+
+`.Site.Sections` is replaced. We have reworked how sections work in Hugo, they can now be nested and are no longer taxonomies. If you use the old collection, you should get detailed upgrade instructions in the log when you run `hugo`. For more information, see this [demo site](http://hugotest.bep.is/).
+
+## Enhancements
+
+### Templates
+
+* Add `uint` support to `In` [b82cd82f](https://github.com/gohugoio/hugo/commit/b82cd82f1198a371ed94bda7faafe22813f4cb29) [@moorereason](https://github.com/moorereason)
+* Support interfaces in `union` [204c3a9e](https://github.com/gohugoio/hugo/commit/204c3a9e32fcf6617ede978e35d3e2e89a5b491c) [@moorereason](https://github.com/moorereason) [#3411](https://github.com/gohugoio/hugo/issues/3411)
+* Add `uniq` function [e28d9aa4](https://github.com/gohugoio/hugo/commit/e28d9aa42c3429d22fe254e69e4605aaf1e684f3) [@adiabatic](https://github.com/adiabatic)
+* Handle `template.HTML` and friends in `ToInt` [4113693a](https://github.com/gohugoio/hugo/commit/4113693ac1b275f3a40aa5c248269340ef9b57f6) [@moorereason](https://github.com/moorereason) [#3308](https://github.com/gohugoio/hugo/issues/3308)
+
+
+### Core
+
+* Make the `RSS feed` use the date for the node it represents [f1da5a15](https://github.com/gohugoio/hugo/commit/f1da5a15a37666ee59350d6600a8c14c1383f5bc) [@bep](https://github.com/bep) [#2708](https://github.com/gohugoio/hugo/issues/2708)
+* Enable `nested sections` [b3968939](https://github.com/gohugoio/hugo/commit/b39689393ccb8434d9a57658a64b77568c718e99) [@bep](https://github.com/bep) [#465](https://github.com/gohugoio/hugo/issues/465)
+* Add test for &#34;no 404&#34; in `sitemap` [8aaec644](https://github.com/gohugoio/hugo/commit/8aaec644a90d09bd7f079d35d382f76bb4ed35db) [@bep](https://github.com/bep) [#3563](https://github.com/gohugoio/hugo/issues/3563)
+* Support regular pages in `.Site.GetPage` [e0c2e798](https://github.com/gohugoio/hugo/commit/e0c2e798201f75ae6e9a81a7442355288c2d141b) [@bep](https://github.com/bep) [#2844](https://github.com/gohugoio/hugo/issues/2844)
+[#3082](https://github.com/gohugoio/hugo/issues/3082)
+
+### Performance
+* Add site building benchmarks [8930e259](https://github.com/gohugoio/hugo/commit/8930e259d78cba4041b550cc51a7f40bc91d7c20) [@bep](https://github.com/bep) [#3535](https://github.com/gohugoio/hugo/issues/3535)
+* Add a cache to `GetPage` which makes it much faster [50d11138](https://github.com/gohugoio/hugo/commit/50d11138f3e18b545c15fadf52f7b0b744bf3e7c) [@bep](https://github.com/bep)
+* Speed up `GetPage` [fbb78b89](https://github.com/gohugoio/hugo/commit/fbb78b89df8ccef8f0ab26af00aa45d35c1ee2cf) [@bep](https://github.com/bep) [#3503](https://github.com/gohugoio/hugo/issues/3503)
+* Add BenchmarkFrontmatterTags [3d9c4f51](https://github.com/gohugoio/hugo/commit/3d9c4f513b0443648d7e88995e351df1739646d2) [@bep](https://github.com/bep) [#3464](https://github.com/gohugoio/hugo/issues/3464)
+* Add `benchSite.sh` to make it easy to run Hugo performance benchmarks [d74452cf](https://github.com/gohugoio/hugo/commit/d74452cfe8f69a85ec83e05481e16bebf199a5cb) [@bep](https://github.com/bep)
+* Cache language config [4aff2b6e](https://github.com/gohugoio/hugo/commit/4aff2b6e7409a308f30cff1825fec02991e0d56a) [@bep](https://github.com/bep)
+* Temporarily revert to BurntSushi for `TOML` front matter handling; it is currently much faster [0907a5c1](https://github.com/gohugoio/hugo/commit/0907a5c1c293755e6bf297246f07888448d81f8b) [@bep](https://github.com/bep) [#3541](https://github.com/gohugoio/hugo/issues/3541) [#3464](https://github.com/gohugoio/hugo/issues/3464)
+* Add a simple partitioned lazy cache [87203139](https://github.com/gohugoio/hugo/commit/87203139c38e0b992c96d7b8a23c7730649c68e5) [@bep](https://github.com/bep)
+
+### Other
+
+* Add `noindex` tag to HTML generated by Hugo aliases [d5ab7f08](https://github.com/gohugoio/hugo/commit/d5ab7f087d967b30e7de7d789e6ad3091b42f1f7) [@onedrawingperday](https://github.com/onedrawingperday)
+* Update Go versions [bde807bd](https://github.com/gohugoio/hugo/commit/bde807bd1e560fb4cc765c0fc22132db7f8a0801) [@bep](https://github.com/bep)
+* Remove the `rlimit` tweaking on `macOS` [bcd32f10](https://github.com/gohugoio/hugo/commit/bcd32f1086c8c604fb22a7496924e41cc46b1605) [@bep](https://github.com/bep) [#3512](https://github.com/gohugoio/hugo/issues/3512)
+
+### Docs
+* Rewrite “Archetypes” article [@davidturnbull](https://github.com/davidturnbull) [#3543](https://github.com/gohugoio/hugo/pull/3543/)
+* Remove Unmaintaned Frontends from Tools. [f41f7282](https://github.com/gohugoio/hugo/commit/f41f72822251c9a31031fd5b3dda585c57c8b028) [@onedrawingperday](https://github.com/onedrawingperday)
+
+## Fixes
+
+### Core
+* Improve `live-reload` on directory structure changes making removal of directories or pasting new content directories into  `/content` just work [fe901b81](https://github.com/gohugoio/hugo/commit/fe901b81191860b60e6fcb29f8ebf87baef2ee79) [@bep](https://github.com/bep) [#3570](https://github.com/gohugoio/hugo/issues/3570)
+* Respect `disableKinds=[&#34;sitemap&#34;]` [69d92dc4](https://github.com/gohugoio/hugo/commit/69d92dc49cb8ab9276ab013d427ba2d9aaf9135d) [@bep](https://github.com/bep) [#3544](https://github.com/gohugoio/hugo/issues/3544)
+* Fix `disablePathToLower` regression [5be04486](https://github.com/gohugoio/hugo/commit/5be0448635fdf5fe6b1ee673e869f2b9baf1a5c6) [@bep](https://github.com/bep) [#3374](https://github.com/gohugoio/hugo/issues/3374)
+* Fix `ref`/`relref` issue with duplicate base filenames [612f6e3a](https://github.com/gohugoio/hugo/commit/612f6e3afe0510c31f70f3621f3dc8ba609dade4) [@bep](https://github.com/bep) [#2507](https://github.com/gohugoio/hugo/issues/2507)
+
+### Docs
+
+* Fix parameter name in `YouTube` shortcode section [37e37877](https://github.com/gohugoio/hugo/commit/37e378773fbc127863f2b7a389d5ce3a14674c73) [@zivbk1](https://github.com/zivbk1) \ No newline at end of file
diff --git a/docs/content/en/news/0.22.1-relnotes/index.md b/docs/content/en/news/0.22.1-relnotes/index.md
new file mode 100644
index 000000000..ceb207d70
--- /dev/null
+++ b/docs/content/en/news/0.22.1-relnotes/index.md
@@ -0,0 +1,37 @@
+---
+date: 2017-06-13T17:53:58-04:00
+categories: ["Releases"]
+description: "Hugo 0.22.1 fixes a couple of issues reported after the 0.22 release"
+link: ""
+title: "Hugo 0.22.1"
+draft: false
+author: bep
+aliases: [/0-22-1/]
+---
+
+Hugo `0.22.1` fixes a couple of issues reported after the [0.22 release](https://github.com/gohugoio/hugo/releases/tag/v0.22) Monday. Most importantly a fix for detecting regular subfolders below the root-sections.
+
+Also, we forgot to adapt the `permalink settings` with support for nested sections, which made that feature less useful than it could be.
+
+With this release you can configure **permalinks with sections** like this:
+
+**First level only:**
+
+```
+[permalinks]
+blog = ":section/:title"
+```
+
+**Nested (all levels):**
+
+```
+[permalinks]
+blog = ":sections/:title"
+```
+## Fixes
+
+* Fix section logic for root folders with subfolders [a30023f5](https://github.com/gohugoio/hugo/commit/a30023f5cbafd06034807255181a5b7b17f3c25f) [@bep](https://github.com/bep) [#3586](https://github.com/gohugoio/hugo/issues/3586)
+* Support sub-sections in permalink settings [1f26420d](https://github.com/gohugoio/hugo/commit/1f26420d392a5ab4c7b7fe1911c0268b45d01ab8) [@bep](https://github.com/bep) [#3580](https://github.com/gohugoio/hugo/issues/3580)
+* Adjust rlimit to 64000 [ff54b6bd](https://github.com/gohugoio/hugo/commit/ff54b6bddcefab45339d8dc2b13776b92bdc04b9) [@bep](https://github.com/bep) [#3582](https://github.com/gohugoio/hugo/issues/3582)
+* Make error on setting rlimit a warning only [629e1439](https://github.com/gohugoio/hugo/commit/629e1439e819a7118ae483381d4634f16d3474dd) [@bep](https://github.com/bep) [#3582](https://github.com/gohugoio/hugo/issues/3582)
+* Revert: Remove the rlimit tweaking on macOS [26aa06a3](https://github.com/gohugoio/hugo/commit/26aa06a3db57ab7134a900d641fa2976f7971520) [@bep](https://github.com/bep) [#3582](https://github.com/gohugoio/hugo/issues/3582) \ No newline at end of file
diff --git a/docs/content/en/news/0.23-relnotes/index.md b/docs/content/en/news/0.23-relnotes/index.md
new file mode 100644
index 000000000..fdf6e9e73
--- /dev/null
+++ b/docs/content/en/news/0.23-relnotes/index.md
@@ -0,0 +1,46 @@
+---
+date: 2017-06-16T17:53:58-04:00
+categories: ["Releases"]
+description: "Hugo 0.23 is mainly a release that handles all the small changes needed to get Hugo moved to a GitHub organisation"
+link: ""
+title: "Hugo 0.23"
+draft: false
+author: bep
+aliases: [/0-23/]
+---
+
+Hugo `0.23` is mainly a release that handles all the small changes needed to get Hugo moved to a GitHub organisation: [gohugoio](https://github.com/gohugoio), but it also contains a couple of important fixes that makes this an update worth-while for all.
+
+Hugo now has:
+
+* 17739&#43; [stars](https://github.com/gohugoio/hugo/stargazers)
+* 494&#43; [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 165&#43; [themes](http://themes.gohugo.io/)
+
+## Fixes
+
+* Fix handling of duplicate footnotes [a9e551a1](https://github.com/gohugoio/hugo/commit/a9e551a100e60a603210ee083103dd73369d6a98) [@bep](https://github.com/bep) [#1912](https://github.com/gohugoio/hugo/issues/1912)
+* Add support for spaces in project folder for `GitInfo` #3533 #3552
+
+## GitHub organisation related changes
+
+* Update layout references to gohugoio/hugo [66d4850b](https://github.com/gohugoio/hugo/commit/66d4850b89db293dc58e828de784037f06c6c8dc) [@bep](https://github.com/bep)
+* Update content references to gohugoio/hugo [715ff1f8](https://github.com/gohugoio/hugo/commit/715ff1f87406edf27738c8c0f52fe185fa974ee8) [@bep](https://github.com/bep)
+* Add note on updates for rpm-based distros [52a0cea6](https://github.com/gohugoio/hugo/commit/52a0cea65de7b75ae1662abe3dec36fca3604617) [@daftaupe](https://github.com/daftaupe)
+* Update logo link in README [ccb8300d](https://github.com/gohugoio/hugo/commit/ccb8300d380636d75a39f4133284eb0109e836c3) [@bep](https://github.com/bep)
+* Remove docs building from CI builds [214dbdfb](https://github.com/gohugoio/hugo/commit/214dbdfb6f016d21415bc1ed511a37a084238878) [@bep](https://github.com/bep)
+* Adjust docs path [729be807](https://github.com/gohugoio/hugo/commit/729be8074bddb58c9111f32c55cc769e49cd0d5a) [@bep](https://github.com/bep)
+* Add docs as submodule [6cee0dfe](https://github.com/gohugoio/hugo/commit/6cee0dfe53899d433afc3c173a87d56265904cb0) [@bep](https://github.com/bep)
+* Update Gitter link in README [fbb25014](https://github.com/gohugoio/hugo/commit/fbb25014e1306ce7127d53e5fc4fc49867790336) [@bep](https://github.com/bep)
+* Change Windows build badge link, take #3 [86543d6a](https://github.com/gohugoio/hugo/commit/86543d6a50251b40540ebd0b851d45eb99d017c7) [@bep](https://github.com/bep)
+* Update Windows build link [e6ae32a0](https://github.com/gohugoio/hugo/commit/e6ae32a0ba75b9894418227e87391defbb1b3b49) [@bep](https://github.com/bep)
+* Update links in CONTRIBUTING.md due to the org transition [95386544](https://github.com/gohugoio/hugo/commit/95386544e858949a2baa414f395f30aaf66a6257) [@digitalcraftsman](https://github.com/digitalcraftsman)
+* Update source path in Dockerfile due to the org transition [7b99fb9f](https://github.com/gohugoio/hugo/commit/7b99fb9f1ca8381457afe9d8e953a388b8ada182) [@digitalcraftsman](https://github.com/digitalcraftsman)
+* Update clone folder in appveyor.yml due to the org transition [d531d17b](https://github.com/gohugoio/hugo/commit/d531d17b3be0b14faf4934611e01ac3289e37835) [@digitalcraftsman](https://github.com/digitalcraftsman)
+* Update import path in snapcraft.yaml due to the org transition [9266bf9d](https://github.com/gohugoio/hugo/commit/9266bf9d4c24592b875a7f6b92f761b4cea40879) [@digitalcraftsman](https://github.com/digitalcraftsman)
+* Run gofmt to get imports in line vs gohugoio/hugo [873a6f18](https://github.com/gohugoio/hugo/commit/873a6f18851bcda79d562ff6c02e1109e8e31a88) [@bep](https://github.com/bep)
+* Update Makefile vs gohugoio/hugo [f503d76a](https://github.com/gohugoio/hugo/commit/f503d76a3b2719bbb65ab9df5595d0dbc871fae9) [@bep](https://github.com/bep)
+* Update README to point to gohugoio/hugo [93643860](https://github.com/gohugoio/hugo/commit/93643860c9db10c6c32176b17cc83f1c317279bd) [@bep](https://github.com/bep)
+* Update examples to point to gohugoio/hugo [db46bcf8](https://github.com/gohugoio/hugo/commit/db46bcf82d060656d4bc731550e63ec9cf8576f2) [@bep](https://github.com/bep)
+* Update textual references in Go source to point to gohugoio/hugo [c17ad675](https://github.com/gohugoio/hugo/commit/c17ad675e8fcdb2db40fc50816b8f016bc14294c) [@bep](https://github.com/bep)
+* Update import paths to gohugoio/hugo [d8717cd4](https://github.com/gohugoio/hugo/commit/d8717cd4c74e80ea8e20adead9321412a2d76022) [@bep](https://github.com/bep) \ No newline at end of file
diff --git a/docs/content/en/news/0.24-relnotes/index.md b/docs/content/en/news/0.24-relnotes/index.md
new file mode 100644
index 000000000..ec71e246f
--- /dev/null
+++ b/docs/content/en/news/0.24-relnotes/index.md
@@ -0,0 +1,74 @@
+---
+date: 2017-06-17T17:53:58-04:00
+categories: ["Releases"]
+description: "The Revival of the Archetypes!"
+link: ""
+title: "Hugo 0.24"
+draft: false
+author: bep
+aliases: [/0-24/]
+---
+
+> "A feature that could be the name of the next Indiana Jones movie deserves its own release," says [@bep](https://github.com/bep).
+
+Hugo now handles the **archetype files as Go templates**. This means that the issues with sorting and lost comments are long gone. This also means that you will have to supply all values, including title and date. But this also opens up a lot of new windows.
+
+A fictional example for the section `newsletter` and the archetype file `archetypes/newsletter.md`:
+
+```
+---
+title: "{{ replace .TranslationBaseName "-" " " | title }}"
+date: {{ .Date }}
+draft: true
+---
+
+**Insert Lead paragraph here.**
+
+<!--more-->
+
+## New Cool Posts
+
+{{ range first 10 ( where .Site.RegularPages "Type" "cool" ) }}
+* {{ .Title }}
+{{ end }}
+```
+
+And then create a new post with:
+
+```
+hugo new newsletter/the-latest-cool.stuff.md
+```
+
+**Note:** the site will only be built if the `.Site` is in use in the archetype file, and this can be time consuming for big sites.
+
+**Hot Tip:** If you set the `newContentEditor` configuration variable to an editor on your `PATH`, the newly created article will be opened.
+
+The above _newsletter type archetype_ illustrates the possibilities: The full Hugo `.Site` and all of Hugo&#39;s template funcs can be used in the archetype file.
+
+**Also, Hugo now supports archetype files for all content formats, not just markdown.**
+
+Hugo now has:
+
+* 17839&#43; [stars](https://github.com/gohugoio/hugo/stargazers)
+* 493&#43; [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 166&#43; [themes](http://themes.gohugo.io/)
+
+## Notes
+
+* Archetype files now need to be complete, including `title` and `date`.
+* The `-f` (format) flag in `hugo new` is removed: Now use the archetype files as is.
+
+## Enhancements
+
+* Support extension-less media types. The motivation behind this change is to support Netlify&#39;s `_redirects` files, so we can generate server-side redirects for the Hugo docs site. See [this commit](https://github.com/gohugoio/hugoDocs/commit/c1ab9894e8292e0a74c43bbca2263b1fb3840f9e) to see how we configured that. [0f40e1fa](https://github.com/gohugoio/hugo/commit/0f40e1fadfca2276f65adefa6d7d5d63aef9160a) [@bep](https://github.com/bep) [#3614](https://github.com/gohugoio/hugo/issues/3614)
+* Add `disableAliases` [516e6c6d](https://github.com/gohugoio/hugo/commit/516e6c6dc5733cdaf985317d58eedbc6ec0ef2f7) [@bep](https://github.com/bep) [#3613](https://github.com/gohugoio/hugo/issues/3613)
+* Support non-md files as archetype files [19f2e729](https://github.com/gohugoio/hugo/commit/19f2e729135af700c5d4aa06e7b3540e6d4847fd) [@bep](https://github.com/bep) [#3597](https://github.com/gohugoio/hugo/issues/3597) [#3618](https://github.com/gohugoio/hugo/issues/3618)
+* Identify extension-less text types as text [c43b512b](https://github.com/gohugoio/hugo/commit/c43b512b4700f76ac77f12d632bb030c3a241393) [@bep](https://github.com/bep) [#3614](https://github.com/gohugoio/hugo/issues/3614)
+* Add `.Site` to the archetype templates [662e12f3](https://github.com/gohugoio/hugo/commit/662e12f348a638a6fcc92a416ee7f7c2a7ef8792) [@bep](https://github.com/bep) [#1629](https://github.com/gohugoio/hugo/issues/1629)
+* Use archetype template as-is as a Go template [422057f6](https://github.com/gohugoio/hugo/commit/422057f60709696bbbd1c38c9ead2bf114d47e31) [@bep](https://github.com/bep) [#452](https://github.com/gohugoio/hugo/issues/452) [#1629](https://github.com/gohugoio/hugo/issues/1629)
+* Update links to new discuss URL [4aa12390](https://github.com/gohugoio/hugo/commit/4aa1239070bb9d4324d3582f3e809b702a59d3ac) [@bep](https://github.com/bep)
+
+## Fixes
+
+* Fix error handling for `JSON` front matter [fb53987a](https://github.com/gohugoio/hugo/commit/fb53987a4ff2acb9da8dec6ec7b11924d37352ce) [@bep](https://github.com/bep) [#3610](https://github.com/gohugoio/hugo/issues/3610)
+* Fix handling of quoted brackets in `JSON` front matter [3183b9a2](https://github.com/gohugoio/hugo/commit/3183b9a29d8adac962fbc73f79b04542f4c4c55d) [@bep](https://github.com/bep) [#3511](https://github.com/gohugoio/hugo/issues/3511) \ No newline at end of file
diff --git a/docs/content/en/news/0.24.1-relnotes/index.md b/docs/content/en/news/0.24.1-relnotes/index.md
new file mode 100644
index 000000000..2ec2cef55
--- /dev/null
+++ b/docs/content/en/news/0.24.1-relnotes/index.md
@@ -0,0 +1,22 @@
+---
+date: 2017-06-24T17:53:58-04:00
+categories: ["Releases"]
+description: "This release fixes some important archetype-related regressions from Hugo 0.24"
+link: ""
+title: "Hugo 0.24.1"
+draft: false
+author: bep
+aliases: [/0-24-1/]
+---
+
+This release fixes some important **archetype-related regressions** from the recent Hugo 0.24-release.
+
+## Fixes
+
+* Fix archetype regression when no archetype file [4294dd8d](https://github.com/gohugoio/hugo/commit/4294dd8d9d22bd8107b7904d5389967da1f83f27) [@bep](https://github.com/bep) [#3626](https://github.com/gohugoio/hugo/issues/3626)
+* Preserve shortcodes in archetype templates [b63e4ee1](https://github.com/gohugoio/hugo/commit/b63e4ee198c875b73a6a9af6bb809589785ed589) [@bep](https://github.com/bep) [#3623](https://github.com/gohugoio/hugo/issues/3623)
+* Fix handling of timezones with positive UTC offset (e.g., +0800) in TOML [0744f81e](https://github.com/gohugoio/hugo/commit/0744f81ec00bb8888f59d6c8b5f57096e07e70b1) [@bep](https://github.com/bep) [#3628](https://github.com/gohugoio/hugo/issues/3628)
+
+## Enhancements
+
+* Create default archetype on new site [bfa336d9](https://github.com/gohugoio/hugo/commit/bfa336d96173377b9bbe2298dbd101f6a718c174) [@bep](https://github.com/bep) [#3626](https://github.com/gohugoio/hugo/issues/3626) \ No newline at end of file
diff --git a/docs/content/en/news/0.25-relnotes/index.md b/docs/content/en/news/0.25-relnotes/index.md
new file mode 100644
index 000000000..9527c911a
--- /dev/null
+++ b/docs/content/en/news/0.25-relnotes/index.md
@@ -0,0 +1,78 @@
+---
+date: 2017-07-07T17:53:58-04:00
+categories: ["Releases"]
+description: "Hugo 0.25 automatically opens the page you&#39;re working on in the browser"
+link: ""
+title: "Hugo 0.25"
+draft: false
+author: bep
+aliases: [/0-25/]
+---
+
+Hugo `0.25` is the **Kinder Surprise**: It automatically opens the page you&#39;re working on in the browser, it adds full `AND` and `OR` support in page queries, and you can now have templates per language.
+
+![Hugo Open on Save](https://cdn-standard5.discourse.org/uploads/gohugo/optimized/2X/6/622088d4a8eacaf62bbbaa27dab19d789e10fe09_1_690x345.gif "Hugo Open on Save")
+
+If you start with `hugo server --navigateToChanged`, Hugo will navigate to the relevant page on save (see animated GIF). This is extremely useful for site-wide edits. Another very useful feature in this version is the added support for `AND` (`intersect`) and `OR` (`union`) filters when combined with `where`.
+
+Example:
+
+```
+{{ $pages := where .Site.RegularPages "Type" "not in" (slice "page" "about") }}
+{{ $pages := $pages | union (where .Site.RegularPages "Params.pinned" true) }}
+{{ $pages := $pages | intersect (where .Site.RegularPages "Params.images" "!=" nil) }}
+```
+
+The above fetches regular pages not of `page` or `about` type unless they are pinned. And finally, we exclude all pages with no `images` set in Page params.
+
+This release represents **36 contributions by 12 contributors** to the main Hugo code base. [@bep](https://github.com/bep) still leads the Hugo development with his witty Norwegian humor, and once again contributed a significant amount of additions. But also a big shoutout to [@yihui](https://github.com/yihui), [@anthonyfok](https://github.com/anthonyfok), and [@kropp](https://github.com/kropp) for their ongoing contributions. And as always a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the documentation and the themes site in pristine condition.
+
+Hugo now has:
+
+* 18209&#43; [stars](https://github.com/gohugoio/hugo/stargazers)
+* 455&#43; [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 168&#43; [themes](http://themes.gohugo.io/)
+
+## Enhancements
+
+### Templates
+
+* Add `Pages` support to `intersect` (`AND`) and `union`(`OR`). This makes the `where` template func even more powerful. [ccdd08d5](https://github.com/gohugoio/hugo/commit/ccdd08d57ab64441e93d6861ae126b5faacdb92f) [@bep](https://github.com/bep) [#3174](https://github.com/gohugoio/hugo/issues/3174)
+* Add `math.Log` function. This is very handy for creating tag clouds. [34c56677](https://github.com/gohugoio/hugo/commit/34c566773a1364077e1397daece85b22948dc721) [@artem-sidorenko](https://github.com/artem-sidorenko)
+* Add `WebP` images support [8431c8d3](https://github.com/gohugoio/hugo/commit/8431c8d39d878c18c6b5463d9091a953608df10b) [@bep](https://github.com/bep) [#3529](https://github.com/gohugoio/hugo/issues/3529)
+* Only show post&#39;s own keywords in schema.org [da72805a](https://github.com/gohugoio/hugo/commit/da72805a4304a57362e8e79a01cc145767b027c5) [@brunoamaral](https://github.com/brunoamaral) [#2635](https://github.com/gohugoio/hugo/issues/2635)[#2646](https://github.com/gohugoio/hugo/issues/2646)
+* Simplify the `Disqus` template a little bit (#3655) [eccb0647](https://github.com/gohugoio/hugo/commit/eccb0647821e9db20ba9800da1b4861807cc5205) [@yihui](https://github.com/yihui)
+* Improve the built-in Disqus template (#3639) [2e1e4934](https://github.com/gohugoio/hugo/commit/2e1e4934b60ce8081a7f3a79191ed204f3098481) [@yihui](https://github.com/yihui)
+
+### Output
+
+* Support templates per site/language. This is for both regular templates and shortcode templates. [aa6b1b9b](https://github.com/gohugoio/hugo/commit/aa6b1b9be7c9d7322333893b642aaf8c7a5f2c2e) [@bep](https://github.com/bep) [#3360](https://github.com/gohugoio/hugo/issues/3360)
+
+### Core
+
+* Extend the sections API [a1d260b4](https://github.com/gohugoio/hugo/commit/a1d260b41a6673adef679ec4e262c5f390432cf5) [@bep](https://github.com/bep) [#3591](https://github.com/gohugoio/hugo/issues/3591)
+* Make `.Site.Sections` return the top level sections [dd9b1baa](https://github.com/gohugoio/hugo/commit/dd9b1baab0cb860a3eb32fd9043bac18cab3f9f0) [@bep](https://github.com/bep) [#3591](https://github.com/gohugoio/hugo/issues/3591)
+* Render `404.html` for all languages [41805dca](https://github.com/gohugoio/hugo/commit/41805dca9e40e9b0952e04d06074e6fc91140495) [@mitchchn](https://github.com/mitchchn) [#3598](https://github.com/gohugoio/hugo/issues/3598)
+
+### Other
+
+* Support human-readable `YAML` boolean values in `undraft` [1039356e](https://github.com/gohugoio/hugo/commit/1039356edf747f044c989a5bc0e85d792341ed5d) [@kropp](https://github.com/kropp)
+* `hugo import jekyll` support nested `_posts` directories [7ee1f25e](https://github.com/gohugoio/hugo/commit/7ee1f25e9ef3be8f99c171e8e7982f4f82c13e16) [@coderzh](https://github.com/coderzh) [#1890](https://github.com/gohugoio/hugo/issues/1890)[#1911](https://github.com/gohugoio/hugo/issues/1911)
+* Update `Dockerfile` and add Docker optimizations [118f8f7c](https://github.com/gohugoio/hugo/commit/118f8f7cf22d756d8a894ff93551974a806f2155) [@ellerbrock](https://github.com/ellerbrock)
+* Add Blackfriday `joinLines` extension support (#3574) [a5440496](https://github.com/gohugoio/hugo/commit/a54404968a4b36579797f2e7ff7f5eada94866d9) [@choueric](https://github.com/choueric)
+* add `--initial-header-level=2` to rst2html (#3528) [bfce30d8](https://github.com/gohugoio/hugo/commit/bfce30d85972c27c27e8a2caac9db6315f813298) [@frankbraun](https://github.com/frankbraun)
+* Support open "current content page" in browser [c825a731](https://github.com/gohugoio/hugo/commit/c825a7312131b4afa67ee90d593640dee3525d98) [@bep](https://github.com/bep) [#3643](https://github.com/gohugoio/hugo/issues/3643)
+* Make `--navigateToChanged` more robust on Windows [30e14cc3](https://github.com/gohugoio/hugo/commit/30e14cc31678ddc204b082ab362f86b6b8063881) [@anthonyfok](https://github.com/anthonyfok) [#3645](https://github.com/gohugoio/hugo/issues/3645)
+* Remove the docs submodule [31393f60](https://github.com/gohugoio/hugo/commit/31393f6024416ea1b2e61d1080dfd7104df36eda) [@bep](https://github.com/bep) [#3647](https://github.com/gohugoio/hugo/issues/3647)
+* Use `example.com` as homepage for new theme [aff1ac32](https://github.com/gohugoio/hugo/commit/aff1ac3235b6c075d01f7237addf44fecdd36d82) [@anthonyfok](https://github.com/anthonyfok)
+
+## Fixes
+
+### Templates
+
+* Fix `in` function for JSON arrays [d12cf5a2](https://github.com/gohugoio/hugo/commit/d12cf5a25df00fa16c59f0b2ae282187a398214c) [@bep](https://github.com/bep) [#1468](https://github.com/gohugoio/hugo/issues/1468)
+
+### Other
+
+* Fix handling of `JSON` front matter with escaped quotes [e10e51a0](https://github.com/gohugoio/hugo/commit/e10e51a00827b9fdc1bee51439fef05afc529831) [@bep](https://github.com/bep) [#3661](https://github.com/gohugoio/hugo/issues/3661)
+* Fix typo in code comment [56d82aa0](https://github.com/gohugoio/hugo/commit/56d82aa025f4d2edb1dc6315132cd7ab52df649a) [@dvic](https://github.com/dvic) \ No newline at end of file
diff --git a/docs/content/en/news/0.25.1-relnotes/index.md b/docs/content/en/news/0.25.1-relnotes/index.md
new file mode 100644
index 000000000..7d70d87a5
--- /dev/null
+++ b/docs/content/en/news/0.25.1-relnotes/index.md
@@ -0,0 +1,25 @@
+---
+date: 2017-07-10T17:53:58-04:00
+categories: ["Releases"]
+description: "This is a bug-fix release with a couple of important fixes"
+link: ""
+title: "Hugo 0.25.1"
+draft: false
+author: bep
+aliases: [/0-25-1/]
+---
+
+This is a bug-fix release with a couple of important fixes.
+
+Hugo now has:
+
+* 18277+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 456+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 170+ [themes](http://themes.gohugo.io/)
+
+## Fixes
+
+* Fix union when the first slice is empty [dbbc5c48](https://github.com/gohugoio/hugo/commit/dbbc5c4810a04ac06fad7500d88cf5c3bfe0c7fd) [@bep](https://github.com/bep) [#3686](https://github.com/gohugoio/hugo/issues/3686)
+* Navigate to changed on CREATE When working with content from IntelliJ IDE, like WebStorm, every file save is followed by two events: "RENAME" and then "CREATE". [7bcc1ce6](https://github.com/gohugoio/hugo/commit/7bcc1ce659710f2220b400ce3b76e50d2e48b241) [@miltador](https://github.com/miltador)
+* Final (!) fix for issue with escaped JSON front matter [7f82b41a](https://github.com/gohugoio/hugo/commit/7f82b41a24af0fd04d28fbfebf9254766a3c6e6f) [@bep](https://github.com/bep) [#3682](https://github.com/gohugoio/hugo/issues/3682)
+* Fix issue with escaped JSON front matter [84db6c74](https://github.com/gohugoio/hugo/commit/84db6c74a084d2b52117b999d4ec343cd3389a68) [@bep](https://github.com/bep) [#3682](https://github.com/gohugoio/hugo/issues/3682) \ No newline at end of file
diff --git a/docs/content/en/news/0.26-relnotes/index.md b/docs/content/en/news/0.26-relnotes/index.md
new file mode 100644
index 000000000..7ebbf8185
--- /dev/null
+++ b/docs/content/en/news/0.26-relnotes/index.md
@@ -0,0 +1,81 @@
+
+---
+date: 2017-08-07
+title: "Hugo 0.26: Language Style Edition"
+description: "Hugo 0.26 brings proper AP Style or Chicago Style Title Case, « French Guillemets » and more."
+categories: ["Releases"]
+images:
+- images/blog/hugo-26-poster.png
+---
+
+This release brings a choice of **AP Style or Chicago Style Title Case** ([8fb594bf](https://github.com/gohugoio/hugo/commit/8fb594bfb090c017d4e5cbb2905780221e202c41) [#989](https://github.com/gohugoio/hugo/issues/989)). You can also now configure Blackfriday to render **« French Guillemets »** ([cb9dfc26](https://github.com/gohugoio/hugo/commit/cb9dfc2613ae5125cafa450097fb0f62dd3770e7) [#3725](https://github.com/gohugoio/hugo/issues/3725)). To enable French Guillemets:
+
+
+{{< code-toggle file="config" >}}
+[blackfriday]
+angledQuotes = true
+smartypantsQuotesNBSP = true
+{{< /code-toggle >}}
+
+Oh, and this release also fixes it so you should see no ugly long crashes no more when you step wrong in your templates ([794ea21e](https://github.com/gohugoio/hugo/commit/794ea21e9449b876c5514f1ce8fe61449bbe4980)).
+
+Hugo `0.26` represents **46 contributions by 11 contributors** to the main Hugo code base.
+
+[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@anthonyfok](https://github.com/anthonyfok), [@jorinvo](https://github.com/jorinvo), and [@digitalcraftsman](https://github.com/digitalcraftsman) for their ongoing contributions. And as always a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the documentation and the themes site in pristine condition.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **838 contributions by 30 contributors**. A special thanks to [@rdwatters](https://github.com/rdwatters), [@bep](https://github.com/bep), [@digitalcraftsman](https://github.com/digitalcraftsman), and [@budparr](https://github.com/budparr) for their work on the documentation site.
+
+This may look like a **Waiting Sausage**, a barbecue term used in Norway for that sausage you eat while waiting for the steak to get ready. And it is: We're working on bigger and even more interesting changes behind the scenes. Stay tuned!
+
+Hugo now has:
+
+* 18802+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 457+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 175+ [themes](http://themes.gohugo.io/)
+
+## Notes
+
+* `sourceRelativeLinks` has been deprecated for a while and has now been removed. [9891c0fb](https://github.com/gohugoio/hugo/commit/9891c0fb0eb274b8a95b62c40070a87a6e04088c) [@bep](https://github.com/bep) [#3766](https://github.com/gohugoio/hugo/issues/3766)
+* The `title` template function and taxonomy page titles now default to following the [AP Stylebook](https://www.apstylebook.com/) for title casing. To override this default to use the old behavior, set `titleCaseStyle` to `Go` in your site configuration. [8fb594bf](https://github.com/gohugoio/hugo/commit/8fb594bfb090c017d4e5cbb2905780221e202c41) [@bep](https://github.com/bep) [#989](https://github.com/gohugoio/hugo/issues/989)
+
+## Enhancements
+
+### Templates
+
+* Use hash for cache key [6cd33f69](https://github.com/gohugoio/hugo/commit/6cd33f6953671edb13d42dcb15746bd10df3428b) [@RealOrangeOne](https://github.com/RealOrangeOne) [#3690](https://github.com/gohugoio/hugo/issues/3690)
+* Add some empty slice tests to intersect [e0cf2e05](https://github.com/gohugoio/hugo/commit/e0cf2e05bbdcb8b4a3f875df84a878f4ca80e904) [@bep](https://github.com/bep) [#3686](https://github.com/gohugoio/hugo/issues/3686)
+
+### Core
+
+* Support `reflinks` starting with a slash [dbe63970](https://github.com/gohugoio/hugo/commit/dbe63970e09313dec287816ab070b5c2f5a13b1b) [@bep](https://github.com/bep) [#3703](https://github.com/gohugoio/hugo/issues/3703)
+* Make template panics into nice error messages [794ea21e](https://github.com/gohugoio/hugo/commit/794ea21e9449b876c5514f1ce8fe61449bbe4980) [@bep](https://github.com/bep)
+
+### Other
+
+* Make the `title` case style guide configurable [8fb594bf](https://github.com/gohugoio/hugo/commit/8fb594bfb090c017d4e5cbb2905780221e202c41) [@bep](https://github.com/bep) [#989](https://github.com/gohugoio/hugo/issues/989)
+* Add support for French Guillemets [cb9dfc26](https://github.com/gohugoio/hugo/commit/cb9dfc2613ae5125cafa450097fb0f62dd3770e7) [@bep](https://github.com/bep) [#3725](https://github.com/gohugoio/hugo/issues/3725)
+* Add support for French Guillemets [c4a0b6e8](https://github.com/gohugoio/hugo/commit/c4a0b6e8abdf9f800fbd7a7f89e9f736edc60431) [@bep](https://github.com/bep) [#3725](https://github.com/gohugoio/hugo/issues/3725)
+* Switch from fork bep/inflect to markbates/inflect [09907d36](https://github.com/gohugoio/hugo/commit/09907d36af586c5b29389312f2ecc2962c06313c) [@jorinvo](https://github.com/jorinvo)
+* Remove unused dependencies from vendor.json [9b4170ce](https://github.com/gohugoio/hugo/commit/9b4170ce768717adfbe9d97c46e38ceaec2ce994) [@jorinvo](https://github.com/jorinvo)
+* Add `--debug` option to be improved on over time [aee2b067](https://github.com/gohugoio/hugo/commit/aee2b06780858c12d8cb04c7b1ba592543410aa9) [@maxandersen](https://github.com/maxandersen)
+* Reduce Docker image size from 277MB to 27MB [bfe0bfbb](https://github.com/gohugoio/hugo/commit/bfe0bfbbd1a59ddadb72a6b07fecce71716088ec) [@ellerbrock](https://github.com/ellerbrock) [#3730](https://github.com/gohugoio/hugo/issues/3730)[#3738](https://github.com/gohugoio/hugo/issues/3738)
+* Optimize Docker image size [606d6a8c](https://github.com/gohugoio/hugo/commit/606d6a8c9177dda4551ed198e0aabbe569f0725d) [@ellerbrock](https://github.com/ellerbrock) [#3674](https://github.com/gohugoio/hugo/issues/3674)
+* Add `--trace` to asciidoctor args [b60aa1a5](https://github.com/gohugoio/hugo/commit/b60aa1a504f3fbf9c19a6bf2030fdc7a04ab4a5a) [@miltador](https://github.com/miltador) [#3714](https://github.com/gohugoio/hugo/issues/3714)
+* Add script to pull in docs changes [ff433f98](https://github.com/gohugoio/hugo/commit/ff433f98133662063cbb16e220fd44c678c82823) [@bep](https://github.com/bep)
+* Add `HasShortcode` [deccc540](https://github.com/gohugoio/hugo/commit/deccc54004cbe88ddbf8f3f951d3178dc0693189) [@bep](https://github.com/bep) [#3707](https://github.com/gohugoio/hugo/issues/3707)
+* Improve the twitter card template [00b590d7](https://github.com/gohugoio/hugo/commit/00b590d7ab4f3021814acceaf74c4eaf64edb226) [@bep](https://github.com/bep) [#3711](https://github.com/gohugoio/hugo/issues/3711)
+* Add `GOEXE` to support building with different versions of `go` [ea5e9e34](https://github.com/gohugoio/hugo/commit/ea5e9e346c93320538c6517b619b5f57473291c8) [@mdhender](https://github.com/mdhender)
+
+## Fixes
+
+### Templates
+
+* Fix intersect on `[]interface{}` handling [55d0b894](https://github.com/gohugoio/hugo/commit/55d0b89417651eba3ae51c96bd9de9e0daa0399e) [@moorereason](https://github.com/moorereason) [#3718](https://github.com/gohugoio/hugo/issues/3718)
+
+### Other
+
+* Fix broken `TaskList` in Markdown [481924b3](https://github.com/gohugoio/hugo/commit/481924b34d23b0ce435778cce7bce77571b22f9d) [@mpcabd](https://github.com/mpcabd) [#3710](https://github.com/gohugoio/hugo/issues/3710)
+
+
+
diff --git a/docs/content/en/news/0.27-relnotes/index.md b/docs/content/en/news/0.27-relnotes/index.md
new file mode 100644
index 000000000..92fc3a7b0
--- /dev/null
+++ b/docs/content/en/news/0.27-relnotes/index.md
@@ -0,0 +1,95 @@
+
+---
+date: 2017-09-11
+title: "Hugo 0.27: Fast and Flexible Related Content!"
+description: "Makes it easy to add \"See Also\" sections etc. to your site."
+categories: ["Releases"]
+images:
+- images/blog/hugo-27-poster.png
+---
+
+
+Hugo `0.27`comes with fast and flexible **Related Content** ([3b4f17bb](https://github.com/gohugoio/hugo/commit/3b4f17bbc9ff789faa581ac278ad109d1ac5b816) [@bep](https://github.com/bep) [#98](https://github.com/gohugoio/hugo/issues/98)). To add this to your site, put something like this in your single page template:
+
+```go-html-template
+{{ $related := .Site.RegularPages.Related . | first 5 }}
+{{ with $related }}
+<h3>See Also</h3>
+<ul>
+ {{ range . }}
+ <li><a href="{{ .RelPermalink }}">{{ .Title }}</a></li>
+ {{ end }}
+</ul>
+{{ end }}
+```
+
+The above translates to _list the five regular pages mostly related to the current page_. See the [Related Content Documentation](https://gohugo.io/content-management/related/) for details and configuration options.
+
+This release represents **37 contributions by 9 contributors** to the main Hugo code base.
+
+[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@moorereason](https://github.com/moorereason), [@yihui](https://github.com/yihui), and [@oneleaftea](https://github.com/oneleaftea) for their ongoing contributions.
+
+And as always a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the documentation and the themes site in pristine condition.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **44 contributions by 30 contributors**. A special thanks to [@bep](https://github.com/bep), [@sdomino](https://github.com/sdomino), [@gotgenes](https://github.com/gotgenes), and [@digitalcraftsman](https://github.com/digitalcraftsman) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 19464+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 455+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 178+ [themes](http://themes.gohugo.io/)
+
+## Notes
+
+* We now only strip p tag in `markdownify` if there is only one paragraph. This allows blocks of paragraphs to be "markdownified" [33ae10b6](https://github.com/gohugoio/hugo/commit/33ae10b6ade67cd9618970121d7de5fd2ce7d781) [@bep](https://github.com/bep) [#3040](https://github.com/gohugoio/hugo/issues/3040)
+
+## Enhancements
+
+### Templates
+
+* Add `time.Duration` and `time.ParseDuration` template funcs [f4bf2141](https://github.com/gohugoio/hugo/commit/f4bf214137ebd24a0d12f16d3a98d9038e6eabd3) [@bep](https://github.com/bep) [#3828](https://github.com/gohugoio/hugo/issues/3828)
+* Add `cond` (ternary) template func [0462c96a](https://github.com/gohugoio/hugo/commit/0462c96a5a9da3e8adc78d96acd39575a8b46c40) [@bep](https://github.com/bep) [#3860](https://github.com/gohugoio/hugo/issues/3860)
+* Prepare for template metrics [d000cf60](https://github.com/gohugoio/hugo/commit/d000cf605091c6999b72d6c632752289bc680223) [@bep](https://github.com/bep)
+* Add `strings.TrimLeft` and `TrimRight` [7674ad73](https://github.com/gohugoio/hugo/commit/7674ad73825c61eecc4003475fe0577f225fe579) [@moorereason](https://github.com/moorereason)
+* compare, hugolib, tpl: Add `Eqer` interface [08f48b91](https://github.com/gohugoio/hugo/commit/08f48b91d68d3002b887ddf737456ff0cc4e786d) [@bep](https://github.com/bep) [#3807](https://github.com/gohugoio/hugo/issues/3807)
+* Only strip p tag in `markdownify` if only one paragraph [33ae10b6](https://github.com/gohugoio/hugo/commit/33ae10b6ade67cd9618970121d7de5fd2ce7d781) [@bep](https://github.com/bep) [#3040](https://github.com/gohugoio/hugo/issues/3040)
+* Cleanup `strings.TrimPrefix` and `TrimSuffix` [29a2da05](https://github.com/gohugoio/hugo/commit/29a2da0593b081cdd61b93c6328af2c9ea4eb20f) [@moorereason](https://github.com/moorereason)
+
+### Output
+
+* Improve the base template (aka `baseof.html`) identification [0019ce00](https://github.com/gohugoio/hugo/commit/0019ce002449d671a20a69406da37b10977f9493) [@bep](https://github.com/bep)
+
+### Core
+
+* Implement "related content" [3b4f17bb](https://github.com/gohugoio/hugo/commit/3b4f17bbc9ff789faa581ac278ad109d1ac5b816) [@bep](https://github.com/bep) [#98](https://github.com/gohugoio/hugo/issues/98)
+* Add `Page.Equals` [f0f49ed9](https://github.com/gohugoio/hugo/commit/f0f49ed9b0c9b4545a45c95d56340fcbf4aafbef) [@bep](https://github.com/bep)
+* Rewrite `replaceDivider` to reduce memory allocation [71ae9b45](https://github.com/gohugoio/hugo/commit/71ae9b4533083be185c5314c9c5b273cc3bd07bd) [@bep](https://github.com/bep)
+
+
+### Other
+
+* Set up Hugo release flow on `CircleCI` [d2249c50](https://github.com/gohugoio/hugo/commit/d2249c50991ba7b00b092aca6e315ca1a4de75a1) [@bep](https://github.com/bep) [#3779](https://github.com/gohugoio/hugo/issues/3779)
+* Maintain the scroll position if possible [7231d5a8](https://github.com/gohugoio/hugo/commit/7231d5a829f8d97336a2120afde1260db6ee6541) [@yihui](https://github.com/yihui) [#3824](https://github.com/gohugoio/hugo/issues/3824)
+* Add an `iFrame` title to the `YouTube` shortcode [919bc921](https://github.com/gohugoio/hugo/commit/919bc9210a69c801c7304c0b529df93d1dca27aa) [@nraboy](https://github.com/nraboy)
+* Remove the theme submodule from /docs [ea2cc26b](https://github.com/gohugoio/hugo/commit/ea2cc26b390476f1c605405604f8c92afd09b6ee) [@bep](https://github.com/bep) [#3791](https://github.com/gohugoio/hugo/issues/3791)
+* Add support for multiple config files via `--config a.toml,b.toml,c.toml` [0f9f73cc](https://github.com/gohugoio/hugo/commit/0f9f73cce5c3f1f05be20bcf1d23b2332623d7f9) [@jgielstra](https://github.com/jgielstra)
+* Render task list item inside `label` for correct accessibility [c8257f8b](https://github.com/gohugoio/hugo/commit/c8257f8b726478ca70dc8984cdcc17b31e4bdc0c) [@danieka](https://github.com/danieka) [#3303](https://github.com/gohugoio/hugo/issues/3303)
+* Normalize `UniqueID` between Windows & Linux [0abdeeef](https://github.com/gohugoio/hugo/commit/0abdeeef6740a3cbba0db95374853d040f2022b8) [@Shywim](https://github.com/Shywim)
+
+
+## Fixes
+
+### Output
+
+* Fix taxonomy term base template lookup [f88fe312](https://github.com/gohugoio/hugo/commit/f88fe312cb35f7de1615c095edd2f898303dd23b) [@bep](https://github.com/bep) [#3856](https://github.com/gohugoio/hugo/issues/3856)
+* Fix `published` front matter handling [202510fd](https://github.com/gohugoio/hugo/commit/202510fdc92d52a20baeaa7edb1091f6882bd95f) [@bep](https://github.com/bep) [#3867](https://github.com/gohugoio/hugo/issues/3867)
+
+
+
+
+
+
+
+
diff --git a/docs/content/en/news/0.27.1-relnotes/index.md b/docs/content/en/news/0.27.1-relnotes/index.md
new file mode 100644
index 000000000..1184cc175
--- /dev/null
+++ b/docs/content/en/news/0.27.1-relnotes/index.md
@@ -0,0 +1,21 @@
+
+---
+date: 2017-09-13
+title: "Hugo 0.27.1: One bugfix"
+description: "Hugo 0.27.1 fixes an issue introduced in Go 1.9 with HTML escaping of shortcodes in multi output sites."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+---
+
+
+
+This fixes a regression introduced in [Go 1.9](https://github.com/golang/go/issues/21844) which lead to HTML in shortcodes in multi output Hugo sites being wrongly escaped in some cases.
+
+* Fix escaped HTML Go 1.9 multioutput issue (#3880) [2d613dd9](https://github.com/gohugoio/hugo/commit/2d613dd905bb8eeb8af57e30ddd749a0f04fbd3c) [@bep](https://github.com/bep) [#3876](https://github.com/gohugoio/hugo/issues/3876)
+
+* Bump to Go 1.9 in the Snap build [642ba6ca](https://github.com/gohugoio/hugo/commit/642ba6cab24c558b16378178fe829cbc45845424) [@bep](https://github.com/bep)
+
+
+
+
diff --git a/docs/content/en/news/0.28-relnotes/index.md b/docs/content/en/news/0.28-relnotes/index.md
new file mode 100644
index 000000000..91128e48e
--- /dev/null
+++ b/docs/content/en/news/0.28-relnotes/index.md
@@ -0,0 +1,64 @@
+
+---
+date: 2017-09-25
+title: "Hugo 0.28: High-speed Syntax Highlighting!"
+description: "Chroma is the new default syntax highlighter in Hugo."
+categories: ["Releases"]
+images:
+- images/blog/hugo-28-poster.png
+---
+
+ Hugo `0.28` brings **blistering fast and native syntax highlighting** from [Chroma](https://github.com/alecthomas/chroma) ([fb33d828](https://github.com/gohugoio/hugo/commit/fb33d8286d78a78a74deb44355b621852a1c4033) [@bep](https://github.com/bep) [#3888](https://github.com/gohugoio/hugo/issues/3888)). A big thank you to [Alec Thomas](https://github.com/alecthomas) for taking on this massive task of porting the popular python highlighter Pygments to Go.
+
+Hugo has been caching the highlighter output to disk, so for repeated builds it has been fine, but this little snippet, showing a build of the [gohugo.io](https://gohugo.io/) site without cache and with both Pygments and Chroma, should illustrate the improvement:
+
+{{< asciicast Lc5iwTVny2kuUC8lqvNnL6oDU >}}
+
+See the [Updated Documentation](https://gohugo.io/content-management/syntax-highlighting/) for more information about how this works.
+
+Worth mentioning is also the `liveReloadPort` flag on `hugo server`, which makes it possible to do "live reloads" behind a HTTPS proxy, which makes for very cool remote customer demos.
+
+One example would be a Hugo server running behind a [ngrok](https://ngrok.com) tunnel:
+
+```bash
+ngrok http 1313
+```
+Then start the Hugo server with:
+
+```bash
+hugo server -b https://youridhere.ngrok.io --appendPort=false --liveReloadPort=443 --navigateToChanged
+```
+
+The `navigateToChanged` flag is slightly unrelated, but it is super cool ...
+
+This release represents **15 contributions by 2 contributors** to the main Hugo code base.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **9 contributions by 7 contributors**. A special thanks to [@bep](https://github.com/bep), [@i-give-up](https://github.com/i-give-up), [@muhajirframe](https://github.com/muhajirframe), and [@icannotfly](https://github.com/icannotfly) for their work on the documentation site.
+
+Hugo now has:
+
+* 19771+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 454+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 180+ [themes](http://themes.gohugo.io/)
+
+## Notes
+* Hugo now uses Chroma as new default syntax highlighter. This should in most cases work out-of-the box or with very little adjustments. But if you want to continue to use Pygments, set `pygmentsUseClassic=true` in your site config.
+* We now add a set of "no cache" headers to the responses for `hugo server`, which makes the most sense in most development scenarios. Run with `hugo server --noHTTPCache=false` to get the old behaviour.
+
+## Enhancements
+
+### Templates
+
+* Add `urls.Parse` function [81ed5647](https://github.com/gohugoio/hugo/commit/81ed564793609a32be20a569cc15da2cc02dd734) [@moorereason](https://github.com/moorereason) [#3849](https://github.com/gohugoio/hugo/issues/3849)
+* Add `math.Ceil`, `Floor`, and `Round` [19c59104](https://github.com/gohugoio/hugo/commit/19c5910485242838d6678c2aacd8501f7e646a53) [@moorereason](https://github.com/moorereason) [#3883](https://github.com/gohugoio/hugo/issues/3883)
+
+### Other
+
+* Use Chroma as new default syntax highlighter [fb33d828](https://github.com/gohugoio/hugo/commit/fb33d8286d78a78a74deb44355b621852a1c4033) [@bep](https://github.com/bep) [#3888](https://github.com/gohugoio/hugo/issues/3888)
+* Trim newlines in the hightlight shortcode [0d29a0f7](https://github.com/gohugoio/hugo/commit/0d29a0f7819e8d73149701052c29f090cd6db42b) [@bep](https://github.com/bep) [#3898](https://github.com/gohugoio/hugo/issues/3898)
+* Update `goorgeous` [b8fabce2](https://github.com/gohugoio/hugo/commit/b8fabce217fcb52e3f273491bef95c7977058732) [@bep](https://github.com/bep) [#3899](https://github.com/gohugoio/hugo/issues/3899)
+* Add `liveReloadPort` flag to server [b1804776](https://github.com/gohugoio/hugo/commit/b180477631555824a06293053e2b6e63c5f07361) [@bep](https://github.com/bep) [#3882](https://github.com/gohugoio/hugo/issues/3882)
+* Add `noHTTPCache` flag to hugo server (default on) [0b34af21](https://github.com/gohugoio/hugo/commit/0b34af216154367af7f53ce93d44e6b3d58c3f34) [@bep](https://github.com/bep) [#3897](https://github.com/gohugoio/hugo/issues/3897)
+* Make `noHTTPCache` default on [80c7ea60](https://github.com/gohugoio/hugo/commit/80c7ea60a0e0f488563a6b7311f3d4c23457aac7) [@bep](https://github.com/bep) [#3897](https://github.com/gohugoio/hugo/issues/3897)
+
diff --git a/docs/content/en/news/0.29-relnotes/index.md b/docs/content/en/news/0.29-relnotes/index.md
new file mode 100644
index 000000000..810781dda
--- /dev/null
+++ b/docs/content/en/news/0.29-relnotes/index.md
@@ -0,0 +1,46 @@
+
+---
+date: 2017-09-26
+title: "Hugo 0.29: Template Metrics"
+description: "Makes it easy to find template bottle necks."
+categories: ["Releases"]
+images:
+- images/blog/hugo-29-poster.png
+---
+
+Hugo `0.29` brings Template Metrics by [@moorereason](https://github.com/moorereason). Hugo is very fast, but it is still possible to write ineffective templates. Now these should be easy to identify. Just run:
+
+```bash
+hugo --templateMetrics
+```
+Now, that was the tasty carrot. The real reason this release comes so fast after the last one is to change the default value for the new `noHTTPCache` flag, which gives away too much performance to make sense as a default value.
+
+Hugo now has:
+
+* 19817+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 454+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 180+ [themes](http://themes.gohugo.io/)
+
+## Notes
+* Make `noHTTPCache` default false [e94d4f01](https://github.com/gohugoio/hugo/commit/e94d4f0177852b357f40fb9686a0ff3667d86351) [@bep](https://github.com/bep)
+
+## Enhancements
+
+### Templates
+* Add simple template metrics feature [b4a14c25](https://github.com/gohugoio/hugo/commit/b4a14c25fe85c41b79497be27ead128502a4dd7b) [@moorereason](https://github.com/moorereason)
+* Set Metrics at creation time [b5e1dc58](https://github.com/gohugoio/hugo/commit/b5e1dc5892f81da798d0d4e964a1f3328532f45e) [@bep](https://github.com/bep)
+* Fix sort order [d3681f51](https://github.com/gohugoio/hugo/commit/d3681f51c08fb11e8addcf9f0b484848d20d46cc) [@bep](https://github.com/bep)
+* Add math.Ceil, Floor, and Round to method mappings [8a69d235](https://github.com/gohugoio/hugo/commit/8a69d2356703d9f2fcb75bce0ae514e70ebd8e01) [@moorereason](https://github.com/moorereason)
+
+### Other
+* Split go build in Dockerfile [d9697e27](https://github.com/gohugoio/hugo/commit/d9697e275ecb038958b3dcea2b43e11dcba28fc9) [@tjamet](https://github.com/tjamet)
+* Update Dockerfile to benefit build cache [09d960f1](https://github.com/gohugoio/hugo/commit/09d960f17396eb7fd2c8fe6527db9503d59f0b4f) [@tjamet](https://github.com/tjamet)
+* Add git to snap package for GitInfo [a3a3f5b8](https://github.com/gohugoio/hugo/commit/a3a3f5b86114213a23337499551f000662b26022) [@ghalse](https://github.com/ghalse)
+
+
+
+
+
+
+
+
diff --git a/docs/content/en/news/0.30-relnotes/index.md b/docs/content/en/news/0.30-relnotes/index.md
new file mode 100644
index 000000000..9281a5c20
--- /dev/null
+++ b/docs/content/en/news/0.30-relnotes/index.md
@@ -0,0 +1,63 @@
+
+---
+date: 2017-10-16
+title: "Hugo 0.30: Race Car Edition!"
+description: "Fast Render Mode boosts live reloading!"
+categories: ["Releases"]
+images:
+- images/blog/hugo-30-poster.png
+---
+
+
+Hugo `0.30` is the **Race Car Edition**. Hugo is already very very fast, but wants much more. So we added **Fast Render Mode**. It is hard to explain, so start the Hugo development server with `hugo server` and start editing. Live reloads just got so much faster! The "how and what" is discussed at length in [other places](https://github.com/gohugoio/hugo/pull/3959), but the short version is that we now re-render only the parts of the site that you are working on.
+
+The second performance-related feature is a follow-up to the Template Metrics added in Hugo `0.29`. Now, if you add the flag `--templateMetricsHints`, we will calculate a score for how your partials can be cached (with the `partialCached` template func).
+
+This release also more or less makes the really fast Chroma highlighter a complete alternative to Pygments. Most notable is the new table `linenos` support ([7c30e2cb](https://github.com/gohugoio/hugo/commit/7c30e2cbb08fdf0e61f80c7f1aa29909aeca4211) [@bep](https://github.com/bep) [#3915](https://github.com/gohugoio/hugo/issues/3915)), which makes copy-and-paste code blocks much easier.
+
+This release represents **31 contributions by 10 contributors** to the main Hugo code base.
+[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contribution, but also a big shoutout to [@moorereason](https://github.com/moorereason), [@digitalcraftsman](https://github.com/digitalcraftsman), and [@bmon](https://github.com/bmon) for their ongoing contributions.
+And as always a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the documentation and the themes site in pristine condition.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **26 contributions by 15 contributors**. A special thanks to [@bep](https://github.com/bep), [@digitalcraftsman](https://github.com/digitalcraftsman), [@moorereason](https://github.com/moorereason), and [@kaushalmodi](https://github.com/kaushalmodi) for their work on the documentation site.
+
+Hugo now has:
+
+* 20195+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 454+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 180+ [themes](http://themes.gohugo.io/)
+
+## Notes
+
+* Running `hugo server` will now run with the new "Fast Render Mode" default on. To turn it off, run `hugo server --disableFastRender` or set `disableFastRender=true` in your site config.
+* There have been several fixes and enhancements in the Chroma highlighter. One is that it now creates Pygments compatible CSS classes, which means that you may want to re-generate the stylesheet. See the [Syntax Highlighting Doc](https://gohugo.io/content-management/syntax-highlighting/).
+
+## Enhancements
+
+### Performance
+* Only re-render the view(s) you're working on [60bd332c](https://github.com/gohugoio/hugo/commit/60bd332c1f68e49e6ac439047e7c660865189380) [@bep](https://github.com/bep) [#3962](https://github.com/gohugoio/hugo/issues/3962)
+* Detect `partialCached` candidates [5800a20a](https://github.com/gohugoio/hugo/commit/5800a20a258378440e203a6c4a4343f5077755df) [@bep](https://github.com/bep)
+* Move metrics output to the end of the site build [b277cb33](https://github.com/gohugoio/hugo/commit/b277cb33e4dfa7440fca3b7888026944ce056154) [@moorereason](https://github.com/moorereason)
+
+### Templates
+
+* Output `xmlns:xhtml` only if there are translations available [0859d9df](https://github.com/gohugoio/hugo/commit/0859d9dfe647db3b8a192da38ad7efb5480a29a1) [@jamieconnolly](https://github.com/jamieconnolly)
+* Add `errorf` template function [4fc67fe4](https://github.com/gohugoio/hugo/commit/4fc67fe44a3c65fc7faaed21d5fa5bb5f87edf2c) [@bmon](https://github.com/bmon) [#3817](https://github.com/gohugoio/hugo/issues/3817)
+* Add `os.FileExists` template function [28188789](https://github.com/gohugoio/hugo/commit/2818878994e906c292cbe00cb2a83f1531a21f32) [@digitalcraftsman](https://github.com/digitalcraftsman) [#3839](https://github.com/gohugoio/hugo/issues/3839)
+* Add `float` template function [57adc539](https://github.com/gohugoio/hugo/commit/57adc539fc98dcb6fba8070b9611b8bd545f6f7f) [@x3ro](https://github.com/x3ro) [#3307](https://github.com/gohugoio/hugo/issues/3307)
+* Rework the partial test and benchmarks [e2e8bcbe](https://github.com/gohugoio/hugo/commit/e2e8bcbec34702a27047b91b6b007a15f1fc0797) [@bep](https://github.com/bep)
+
+### Other
+
+* Change `SummaryLength` to be configurable (#3924) [8717a60c](https://github.com/gohugoio/hugo/commit/8717a60cc030f4310c1779c0cdd51db37ad636cd) [@bmon](https://github.com/bmon) [#3734](https://github.com/gohugoio/hugo/issues/3734)
+* Replace `make` with `mage` in CircleCI build [fe71cb6f](https://github.com/gohugoio/hugo/commit/fe71cb6f5f83cdc8374cf1fc35a6d48102bd4b12) [@bep](https://github.com/bep) [#3969](https://github.com/gohugoio/hugo/issues/3969)
+* Add table `linenos` support for Chroma highlighter [7c30e2cb](https://github.com/gohugoio/hugo/commit/7c30e2cbb08fdf0e61f80c7f1aa29909aeca4211) [@bep](https://github.com/bep) [#3915](https://github.com/gohugoio/hugo/issues/3915)
+* Replace `make` with `mage` [8d2580f0](https://github.com/gohugoio/hugo/commit/8d2580f07c0253e12524a4b5c13165f876d00b21) [@bep](https://github.com/bep) [#3937](https://github.com/gohugoio/hugo/issues/3937)
+* Create `magefile` from `Makefile` [384a6ac4](https://github.com/gohugoio/hugo/commit/384a6ac4bd2de16fcd6a1c952e7ca41b66023a12) [@natefinch](https://github.com/natefinch)
+* Clean up lint in various packages [47fdfd51](https://github.com/gohugoio/hugo/commit/47fdfd5196cd24a23b30afe1d88969ffb413ab59) [@moorereason](https://github.com/moorereason)
+
+## Fixes
+
+* Make sure `Date` and `PublishDate` are always set to a value if one is available [6a30874f](https://github.com/gohugoio/hugo/commit/6a30874f19610a38e846e120aac03c68e12f9b7b) [@bep](https://github.com/bep) [#3854](https://github.com/gohugoio/hugo/issues/3854)
+* Add correct config file name to verbose server log [15ec031d](https://github.com/gohugoio/hugo/commit/15ec031d9818d239bfbff525c00cd99cc3118a96) [@mdhender](https://github.com/mdhender)
diff --git a/docs/content/en/news/0.30.1-relnotes/index.md b/docs/content/en/news/0.30.1-relnotes/index.md
new file mode 100644
index 000000000..68165e877
--- /dev/null
+++ b/docs/content/en/news/0.30.1-relnotes/index.md
@@ -0,0 +1,23 @@
+
+---
+date: 2017-10-19T00:00:00+02:00
+title: "Hugo 0.30.1: Two Important Bugfixes!"
+description: "Fixes `hugo -w` and validator-broken Sitemap."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+---
+
+
+
+This is a bug-fix release with two important fixes.
+
+* Fix hugo -w [fa53b13c](https://github.com/gohugoio/hugo/commit/fa53b13ca0ffb1db6ed20f5353661d3f8a5fd455) [@bep](https://github.com/bep) [#3980](https://github.com/gohugoio/hugo/issues/3980)
+* Revert sitemap template change to make the Google validator happy [5109ed520](https://github.com/gohugoio/hugo/commit/5109ed520f2ddde815d50e7b31acbbfc57ce7719) [@bep](https://github.com/bep) [#3978](https://github.com/gohugoio/hugo/issues/3978)
+
+
+Hugo now has:
+
+* 20285+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 454+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 180+ [themes](http://themes.gohugo.io/)
diff --git a/docs/content/en/news/0.30.2-relnotes/index.md b/docs/content/en/news/0.30.2-relnotes/index.md
new file mode 100644
index 000000000..1d4bcd946
--- /dev/null
+++ b/docs/content/en/news/0.30.2-relnotes/index.md
@@ -0,0 +1,14 @@
+
+---
+date: 2017-10-19T12:00:00+02:00
+title: "Hugo 0.30.2: One More Bugfix"
+description: "Fixes Fast Render mode when having sub-path in `baseURL`."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+---
+This release fixes Fast Render mode with sub-path in baseURL [31641033](https://github.com/gohugoio/hugo/commit/3164103310fbca1211cfa9ce4a5eb7437854b6ad) [@bep](https://github.com/bep) [#3981](https://github.com/gohugoio/hugo/issues/3981).
+
+
+
+
diff --git a/docs/content/en/news/0.31-relnotes/index.md b/docs/content/en/news/0.31-relnotes/index.md
new file mode 100644
index 000000000..ba16dfacb
--- /dev/null
+++ b/docs/content/en/news/0.31-relnotes/index.md
@@ -0,0 +1,79 @@
+
+---
+date: 2017-11-20
+title: "Hugo 0.31: Language Multihost Edition!"
+description: "Hugo 0.31: Multihost, smart union static dirs, and more ..."
+categories: ["Releases"]
+images:
+- images/blog/hugo-31-poster.png
+---
+
+ Hugo `0.31` is the **Language Multihost Edition!**
+
+> <img src="https://esolia.com/img/eSolia-Logo-Flat-2015.svg" alt="eSolia" width="100px" align="top" style="width:100px" />The Multihost feature is sponsored by [eSolia](https://esolia.com/), [@rickcogley](https://github.com/rickcogley)'s company.
+
+[Multihost](https://gohugo.io/content-management/multilingual/#configure-multilingual-multihost) means that you can have a **`baseURL` per language**, for example, `https://no.example.com` and `https://en.example.com`. This is seamlessly integrated, and the built-in web server with live reload and `navigateToChanged` etc. just works. A related enhancement in this release is the support for **as many static dirs as you need**, with intelligent language overrides, forming a big union file system. Add to that several other language related fixes and enhancements, it is safe to say that this is the version you want for multilingual Hugo sites!
+
+This release represents **44 contributions by 7 contributors** to the main Hugo code base.
+[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@kaushalmodi](https://github.com/kaushalmodi), [@natefinch](https://github.com/natefinch), and [@betaveros](https://github.com/betaveros) for their ongoing contributions.
+And as always a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the documentation and the themes site in pristine condition.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **13 contributions by 9 contributors**. A special thanks to [@oncletom](https://github.com/oncletom), [@kaushalmodi](https://github.com/kaushalmodi), [@XhmikosR](https://github.com/XhmikosR), and [@digitalcraftsman](https://github.com/digitalcraftsman) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 21105+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 455+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 184+ [themes](http://themes.gohugo.io/)
+
+## Notes
+
+* For mapping of translated content, Hugo now considers the full path of the content file, which makes it possible with translation of duplicate content filenames such as `index.md`. A specific translation key can be specified with the new `translationKey` front matter variable. See [#2699](https://github.com/gohugoio/hugo/issues/2699).
+
+
+## Enhancements
+
+### Language related
+
+* Support unknown language codes [23ba779f](https://github.com/gohugoio/hugo/commit/23ba779fab90ce45cddd68b4f49a2515ce6d4878) [@bep](https://github.com/bep) [#3564](https://github.com/gohugoio/hugo/issues/3564)
+* Fix `.IsTranslated` with identical filenames [b3daa1f4](https://github.com/gohugoio/hugo/commit/b3daa1f4bf1b84bcc5da028257ba609be74e3ecc) [@bep](https://github.com/bep) [#2699](https://github.com/gohugoio/hugo/issues/2699)
+* Fall back to unstranslated base template [0a81a6b4](https://github.com/gohugoio/hugo/commit/0a81a6b4bae3de53aa9c179b855c671a2d30eec7) [@bep](https://github.com/bep) [#3893](https://github.com/gohugoio/hugo/issues/3893)
+* Add support for multiple static dirs [60dfb9a6](https://github.com/gohugoio/hugo/commit/60dfb9a6e076200ab3ca3fd30e34bb3c14e0a893) [@bep](https://github.com/bep) [#36](https://github.com/gohugoio/hugo/issues/36)[#4027](https://github.com/gohugoio/hugo/issues/4027)
+* Add multilingual multihost support [2e046576](https://github.com/gohugoio/hugo/commit/2e0465764b5dacc511b977b1c9aa07324ad0ee9c) [@bep](https://github.com/bep) [#4027](https://github.com/gohugoio/hugo/issues/4027)
+
+### Templates
+
+* Refactor `Mod` with `cast` [76dc811c](https://github.com/gohugoio/hugo/commit/76dc811c6539b2ed8b4d3b22693e5088b9f6ecfe) [@artem-sidorenko](https://github.com/artem-sidorenko)
+* Add support for height argument to figure shortcode [488631fe](https://github.com/gohugoio/hugo/commit/488631fe0abc3667355345c7eb98ba7a2204deb5) [@kaushalmodi](https://github.com/kaushalmodi) [#4014](https://github.com/gohugoio/hugo/issues/4014)
+
+### Core
+
+* Use ms precision for static change logging [bb048d81](https://github.com/gohugoio/hugo/commit/bb048d811d3977adb10656335cd339cd8c945a25) [@bep](https://github.com/bep)
+* Update Chroma to get the latest SASS lexer [b32ffed6](https://github.com/gohugoio/hugo/commit/b32ffed6abc67646cad89e163846f3ffef29cec8) [@bep](https://github.com/bep) [#4069](https://github.com/gohugoio/hugo/issues/4069)
+* Bump to Go 1.9.2 [9299a16c](https://github.com/gohugoio/hugo/commit/9299a16c9952a284d3ac3f31d2662f1812f77768) [@bep](https://github.com/bep) [#4064](https://github.com/gohugoio/hugo/issues/4064)
+* Update Travis and snapcraft to Go 1.9.2 [77cbd001](https://github.com/gohugoio/hugo/commit/77cbd001ff6b2e0aaa48566ef2af49ca68e19af9) [@bep](https://github.com/bep) [#4064](https://github.com/gohugoio/hugo/issues/4064)
+* Handle Taxonomy permalinks [d9a78b61](https://github.com/gohugoio/hugo/commit/d9a78b61adefe8e1803529f4774185874af85148) [@betaveros](https://github.com/betaveros) [#1208](https://github.com/gohugoio/hugo/issues/1208)
+
+
+### Other
+
+* Support Fast Render mode with sub-path in baseURL [31641033](https://github.com/gohugoio/hugo/commit/3164103310fbca1211cfa9ce4a5eb7437854b6ad) [@bep](https://github.com/bep) [#3981](https://github.com/gohugoio/hugo/issues/3981)
+* Simplify Site benchmarks [c3c10f2c](https://github.com/gohugoio/hugo/commit/c3c10f2c7ce4ee11186f51161943efc8b37a28c9) [@bep](https://github.com/bep)
+* Replace `make` with `mage` to build Hugo [#3969](https://github.com/gohugoio/hugo/issues/3969)
+* Convert to `dep` as dependency/vendor manager for Hugo [#3988](https://github.com/gohugoio/hugo/issues/3988)
+* Pre-allocate some slices [a9be687b](https://github.com/gohugoio/hugo/commit/a9be687b81df01c7343f78f0d3760042f467baa4) [@bep](https://github.com/bep)
+
+## Fixes
+
+### Templates
+
+* Make sure only one instance of a cached partial is rendered [#4086](https://github.com/gohugoio/hugo/issues/4086)
+
+### Other
+
+* Fix broken shortcodes for `Ace` and `Amber` [503ca6de](https://github.com/gohugoio/hugo/commit/503ca6de6ceb0b4af533f9efeff917d6f3871278) [@bep](https://github.com/bep) [#4051](https://github.com/gohugoio/hugo/issues/4051)
+* Fix error handling in `mage` build [c9c19d79](https://github.com/gohugoio/hugo/commit/c9c19d794537cf76ff281788c3d6cf5f2beac54d) [@natefinch](https://github.com/natefinch)
+* Fix `hugo -w` [fa53b13c](https://github.com/gohugoio/hugo/commit/fa53b13ca0ffb1db6ed20f5353661d3f8a5fd455) [@bep](https://github.com/bep) [#3980](https://github.com/gohugoio/hugo/issues/3980)
+
diff --git a/docs/content/en/news/0.31.1-relnotes/index.md b/docs/content/en/news/0.31.1-relnotes/index.md
new file mode 100644
index 000000000..a74470d64
--- /dev/null
+++ b/docs/content/en/news/0.31.1-relnotes/index.md
@@ -0,0 +1,19 @@
+
+---
+date: 2017-11-27
+title: "Hugo 0.31.1: One Bugfix!"
+description: "Fixes broken `--appendPort=false`."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+This is a bug-fix release with one important bug fix:
+
+* Fix broken `--appendPort=false` [8afd7d9c](https://github.com/gohugoio/hugo/commit/8afd7d9ceb0d168300e3399c6e87a355a88c9a28) [@bep](https://github.com/bep) [#4111](https://github.com/gohugoio/hugo/issues/4111)
+
+
+
+
+
diff --git a/docs/content/en/news/0.32-relnotes/index.md b/docs/content/en/news/0.32-relnotes/index.md
new file mode 100644
index 000000000..c3f36fe64
--- /dev/null
+++ b/docs/content/en/news/0.32-relnotes/index.md
@@ -0,0 +1,94 @@
+
+---
+date: 2017-12-31
+title: "Hugo 0.32: Page Bundles and Image Processing!"
+description: "Images and other resources with page-relative links, resize, scale and crop images, and much more."
+categories: ["Releases"]
+images:
+- images/blog/hugo-32-poster.png
+---
+
+ Hugo `0.32` features **Page Bundles and Image Processing** by [@bep](https://github.com/bep), which is very cool and useful on so many levels. Read about it in more detail in the [Hugo documentation](https://gohugo.io/about/new-in-032/), but some of the highlights include:
+
+* Automatic bundling of a content page with its resources. Resources can be anything: Images, `JSON` files ... and also other content pages.
+* A `Resource` will have its `RelPermalink` and `Permalink` relative to the "owning page". This makes the complete article with both text and images portable (just send a ZIP file with a folder to your editor), and it can be previewed directly on GitHub.
+* Powerful and simple to use image processing with the new `.Resize`, `.Fill`, and `.Fit` methods on the new `Image` resource.
+* Full support for symbolic links inside `/content`, both for regular files and directories.
+
+The built-in benchmarks in Hugo show that this is also the [fastest and most memory effective](https://gist.github.com/bep/2a9bbd221de2da5d39c8b32085c658f7) Hugo version to date. But note that the build time total reported in the console is now adjusted to be the *real total*, including the copy of static files. So, if it reports more milliseconds, it is still most likely faster ...
+
+This release represents **30 contributions by 7 contributors** to the main Hugo code base.
+
+[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@betaveros](https://github.com/betaveros), [@chaseadamsio](https://github.com/chaseadamsio), and [@kropp](https://github.com/kropp). And as always big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the documentation and the themes site in pristine condition.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **17 contributions by 7 contributors**. A special thanks to [@bep](https://github.com/bep), [@felicianotech](https://github.com/felicianotech), [@maiki](https://github.com/maiki), and [@carlchengli](https://github.com/carlchengli) for their work on the documentation site.
+
+Hugo now has:
+
+* 22061+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 454+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 193+ [themes](http://themes.gohugo.io/)
+
+Today is **New Year's Eve.** It is the last day of 2017, a year that have seen a **string of pearls of Hugo releases**, making Hugo _the_ top choice for website development:
+
+* 0.32, December 2017: **Page Bundles and Image Processing** edition.
+* 0.31, November 2017: The Language **Multihost Edition!** with one `baseURL` per language.
+* 0.30, October 2017: The Race Car Edition with the **Fast Render Mode**.
+* 0.29, September 2017: Added **Template Metrics**.
+* 0.28, September 2017: **Blistering fast and native syntax highlighting** from [Chroma](https://github.com/alecthomas/chroma).
+* 0.27, September 2017: Fast and flexible **Related Content.**
+* 0.26, August 2017: The **Language Style Edition** with AP Style or Chicago Style Title Case and « French Guillemets ».
+* 0.25, July 2017: The **Kinder Surprise** edition added, among other cool things, `hugo server --navigateToChanged` which navigates to the content page you start editing.
+* 0.24, June 2017: Was **The Revival of the Archetypes!** Now archetype files, i.e. the content file templates, can include template syntax with all of Hugo's functions and variables.
+* 0.23, June 2017: Hugo moved to it's own GitHub organization, **gohugoio**.
+* 0.22, June 2017: Added **nested sections**, a long sought after feature.
+* 0.21, May 2017: Full support for shortcodes per output format (think **AMP**).
+* 0.20, April 2017: Was all about **Custom Output Formats**.
+* 0.19, February 2017: Native Emacs Org-mode content support and lots of internal upgrades.
+
+## Notes
+
+* The build total in the console is now the ... total (i.e. it now includes both the copy of the static files and the Hugo build). So if your Hugo site seems to build slightly slower, it is in reality probably slightly faster than before this release.
+* Images and other static resources in folders with "_index.md" will have its `RelPermalink` relative to its page.
+* Images and other static resources in or below "index.md" folders will have its `RelPermalink` relative to its page (respecting permalink settings etc.)
+* Content pages in or below "index.md" will not get their own `URL`, but will be part of the `.Resources` collection of its page.
+* `.Site.Files` is deprecated.
+* Hugo no longer minfies CSS files inside `/content`. This was an undocumented "proof of concept feature". We may revisit the "assets handling" in a future release.
+* `Page.GetParam`does not lowercase your result anymore. If you really want to lowercase your params, do it with `.GetParam "myparam" | lower` or similar.
+
+Previously deprecated that will now `ERROR`:
+
+* `disable404`: Use `disableKinds=["404"]`
+* `disableRSS`: Use `disableKinds=["RSS"]`
+* `disableSitemap`: Use `disableKinds=["sitemap"]`
+* `disableRobotsTXT`: Use `disableKinds=["robotsTXT"]`
+
+## Enhancements
+
+* Add `.Title` and `.Page` to `MenuEntry` [9df3736f](https://github.com/gohugoio/hugo/commit/9df3736fec164c51d819797416dc263f2869be77) [@rmetzler](https://github.com/rmetzler) [#2784](https://github.com/gohugoio/hugo/issues/2784)
+* Add `Pandoc` support [e69da7a4](https://github.com/gohugoio/hugo/commit/e69da7a4cb725987f153707bf2fc59c135007e2a) [@betaveros](https://github.com/betaveros) [#234](https://github.com/gohugoio/hugo/issues/234)
+* Implement Page bundling and image handling [3cdf19e9](https://github.com/gohugoio/hugo/commit/3cdf19e9b7e46c57a9bb43ff02199177feb55768) [@bep](https://github.com/bep) [#3651](https://github.com/gohugoio/hugo/issues/3651)[#3158](https://github.com/gohugoio/hugo/issues/3158)[#1014](https://github.com/gohugoio/hugo/issues/1014)[#2021](https://github.com/gohugoio/hugo/issues/2021)[#1240](https://github.com/gohugoio/hugo/issues/1240)[#3757](https://github.com/gohugoio/hugo/issues/3757)
+* Make `chomp` return the type it receives [22cd89ad](https://github.com/gohugoio/hugo/commit/22cd89adc4792a3b55389d38acd4acfae3786775) [@kropp](https://github.com/kropp) [#2187](https://github.com/gohugoio/hugo/issues/2187)
+* Reuse the `BlackFriday` config instance when possible [db4b7a5c](https://github.com/gohugoio/hugo/commit/db4b7a5c6742c75f9cd9627d3b054d3a72802ec8) [@bep](https://github.com/bep)
+* Remove the goroutines from the shortcode lexer [24369410](https://github.com/gohugoio/hugo/commit/243694102a60da2fb1050020f68384539f9f9ef5) [@bep](https://github.com/bep)
+* Improve site benchmarks [051fa343](https://github.com/gohugoio/hugo/commit/051fa343d06d6c070df742f7cbd125432fcab665) [@bep](https://github.com/bep)
+* Update `Chroma` to `v0.2.0` [79892101](https://github.com/gohugoio/hugo/commit/7989210120dbde78da3741e2ef01b13f4aa78692) [@bep](https://github.com/bep) [#4087](https://github.com/gohugoio/hugo/issues/4087)
+* Update `goorgeous` to `v1.1.0` [7f2ae3ef](https://github.com/gohugoio/hugo/commit/7f2ae3ef39f27a9bd26ddb9258b073a840faf491) [@chaseadamsio](https://github.com/chaseadamsio)
+* Add test for homepage content for all rendering engines [407c2402](https://github.com/gohugoio/hugo/commit/407c24020ef2db90cf33fd07e7522b2257013722) [@bep](https://github.com/bep) [#4166](https://github.com/gohugoio/hugo/issues/4166)
+* Add output formats definition to benchmarks [a2d81ce9](https://github.com/gohugoio/hugo/commit/a2d81ce983d45b5742c93bd472503c88286f099a) [@bep](https://github.com/bep)
+
+## Fixes
+
+### Templates
+
+* Do not unescape input to `highlight` [c067f345](https://github.com/gohugoio/hugo/commit/c067f34558b82455b63b9ce8f5983b4b4849c7cf) [@bep](https://github.com/bep) [#4179](https://github.com/gohugoio/hugo/issues/4179)
+* Properly close image file in `imageConfig` [6d79beb5](https://github.com/gohugoio/hugo/commit/6d79beb5f67dbb54d7714c3195addf9d8e3924e8) [@bep](https://github.com/bep)
+ * Fix `opengraph` video range template [23f69efb](https://github.com/gohugoio/hugo/commit/23f69efb3914946b39ce673fcc0f2e3a9ed9d878) [@drlogout](https://github.com/drlogout) [#4136](https://github.com/gohugoio/hugo/issues/4136)
+* Fix `humanize` for multi-byte runes [e7652180](https://github.com/gohugoio/hugo/commit/e7652180a13ce149041c48a1c2754c471df569c8) [@bep](https://github.com/bep) [#4133](https://github.com/gohugoio/hugo/issues/4133)
+
+### Other
+
+* Fix broken live reload without a server port. [25114986](https://github.com/gohugoio/hugo/commit/25114986086e5877a0b4108d8cf5e4e95f377241) [@sainaen](https://github.com/sainaen) [#4141](https://github.com/gohugoio/hugo/issues/4141)
+* Make sure all language homes are always re-rendered in fast render mode [72903be5](https://github.com/gohugoio/hugo/commit/72903be587e9c4e3644f60b11e26238ec03da2db) [@bep](https://github.com/bep) [#4125](https://github.com/gohugoio/hugo/issues/4125)
+* Do not `tolower` result from Page.GetParam [1c114d53](https://github.com/gohugoio/hugo/commit/1c114d539b0755724443fe28c90b12fe2a19085a) [@bep](https://github.com/bep) [#4187](https://github.com/gohugoio/hugo/issues/4187)
diff --git a/docs/content/en/news/0.32.1-relnotes/index.md b/docs/content/en/news/0.32.1-relnotes/index.md
new file mode 100644
index 000000000..867e3413e
--- /dev/null
+++ b/docs/content/en/news/0.32.1-relnotes/index.md
@@ -0,0 +1,18 @@
+
+---
+date: 2018-01-02
+title: "Hugo 0.32.1: Two bugfixes"
+description: "Fixes image processing in shortcodes."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+---
+
+This fixes 2 bugs from the Hugo 0.32 release.
+
+* Fix image processing from shortcodes in non-server mode. [@bep](https://github.com/bep) [#4202](https://github.com/gohugoio/hugo/issues/4202)
+* Fix broken `hugo --renderToMemory`. Note that this is only useful for benchmark testing, as there is no easy way to actually view the result. [d36d71ed](https://github.com/gohugoio/hugo/commit/d36d71edd3b04df3b34edf4d108e3995a244c4f0) [@bep](https://github.com/bep) [#4212](https://github.com/gohugoio/hugo/issues/4212)
+
+
+
+
diff --git a/docs/content/en/news/0.32.2-relnotes/index.md b/docs/content/en/news/0.32.2-relnotes/index.md
new file mode 100644
index 000000000..7453a2678
--- /dev/null
+++ b/docs/content/en/news/0.32.2-relnotes/index.md
@@ -0,0 +1,23 @@
+
+---
+date: 2018-01-03
+title: "Hugo 0.32.2: One bugfix"
+description: "Fixes one issue with publishing of processed images when no cache."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with one important fix.
+
+
+* Handle publish of processed images to /public on fresh build with no image cache in /resources (as reported by one person in a Netlify build) [196da49c](https://github.com/gohugoio/hugo/commit/196da49c9d906fbae6d389fdd32b80c27cb38de4) [@bep](https://github.com/bep) [#4213](https://github.com/gohugoio/hugo/issues/4213)
+
+
+
+
+
+
diff --git a/docs/content/en/news/0.32.3-relnotes/index.md b/docs/content/en/news/0.32.3-relnotes/index.md
new file mode 100644
index 000000000..ad795a183
--- /dev/null
+++ b/docs/content/en/news/0.32.3-relnotes/index.md
@@ -0,0 +1,30 @@
+
+---
+date: 2018-01-08
+title: "Hugo 0.32.3: Some important bug fixes"
+description: "Fixes multilingual resource (images etc.) handling etc."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+Hugo `0.32` was a big and [really cool](https://gohugo.io/news/0.32-relnotes/) release, and the [Hugo Forum](https://discourse.gohugo.io/) has been filled with questions from people wanting to upgrade their Hugo sites to be able to use the new image processing feature etc.
+
+And with that we have discovered some issues, which this release should fix, mostly releated to multilingual sites:
+
+* Fix multihost detection for sites without language definition [8969331f](https://github.com/gohugoio/hugo/commit/8969331f5be352939883074034adac6b7086ddc8) [@bep](https://github.com/bep) [#4221](https://github.com/gohugoio/hugo/issues/4221)
+* Fix hugo benchmark --renderToMemory [059e8458](https://github.com/gohugoio/hugo/commit/059e8458d690dbb9fcd3ebd58cfc61b062d3138e) [@bep](https://github.com/bep) [#4218](https://github.com/gohugoio/hugo/issues/4218)
+* Fix URLs for bundle resources in multihost mode [ab82a27d](https://github.com/gohugoio/hugo/commit/ab82a27d055c3aa177821d81a45a5c6e972aa29e) [@bep](https://github.com/bep) [#4217](https://github.com/gohugoio/hugo/issues/4217)
+* Fix sub-folder baseURL handling for Page resources [f25d8a9e](https://github.com/gohugoio/hugo/commit/f25d8a9e17fb65fa41dafdcbf0358853d68eaf45) [@bep](https://github.com/bep) [#4228](https://github.com/gohugoio/hugo/issues/4228)
+* Avoid processing and storing same image for each language [4b04db0f](https://github.com/gohugoio/hugo/commit/4b04db0f0855a1f54895d6c93c52dcea4b1ce3ca) [@bep](https://github.com/bep) [#4231](https://github.com/gohugoio/hugo/issues/4231)
+* Resources.ByType should return Resources [97c1866e](https://github.com/gohugoio/hugo/commit/97c1866e322284dec46db6f3d235807507f5b69f) [@bep](https://github.com/bep) [#4234](https://github.com/gohugoio/hugo/issues/4234)
+* Report build time on config.toml change [6feb1387](https://github.com/gohugoio/hugo/commit/6feb138785eeb9e813428d0df30010d9b5fb1059) [@bep](https://github.com/bep) [#4232](https://github.com/gohugoio/hugo/issues/4232)[#4224](https://github.com/gohugoio/hugo/issues/4224)
+* Fix handling of mixed-case taxonomy folders with content file [2d3189b2](https://github.com/gohugoio/hugo/commit/2d3189b22760e0a8995dae082a6bc5480f770bfe) [@bep](https://github.com/bep) [#4238](https://github.com/gohugoio/hugo/issues/4238)
+
+
+
+
+
diff --git a/docs/content/en/news/0.32.4-relnotes/index.md b/docs/content/en/news/0.32.4-relnotes/index.md
new file mode 100644
index 000000000..bd8163e0d
--- /dev/null
+++ b/docs/content/en/news/0.32.4-relnotes/index.md
@@ -0,0 +1,20 @@
+
+---
+date: 2018-01-11
+title: "Hugo 0.32.4: Two bugfixes"
+description: "Fixes non-ASCII path handling for Page resources."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+---
+
+This is a bug-fix release with two of important fixes.
+
+* Fix non-ASCII path handling for Page resources [f0eecc6a](https://github.com/gohugoio/hugo/commit/f0eecc6a4f541838e9930c98bc982546f65c7a4f) [@bep](https://github.com/bep) [#4241](https://github.com/gohugoio/hugo/issues/4241)
+* Fix `--cleanDestinationDir` [5235a5bf](https://github.com/gohugoio/hugo/commit/5235a5bf5ef44b3789341e1d25b681a7bb14771a) [@biodranik](https://github.com/biodranik) [#4246](https://github.com/gohugoio/hugo/issues/4246)[#4248](https://github.com/gohugoio/hugo/issues/4248)
+
+
+
+
+
+
diff --git a/docs/content/en/news/0.33-relnotes/featured-hugo-33-poster.png b/docs/content/en/news/0.33-relnotes/featured-hugo-33-poster.png
new file mode 100644
index 000000000..c30caafcc
--- /dev/null
+++ b/docs/content/en/news/0.33-relnotes/featured-hugo-33-poster.png
Binary files differ
diff --git a/docs/content/en/news/0.33-relnotes/index.md b/docs/content/en/news/0.33-relnotes/index.md
new file mode 100644
index 000000000..74cd50dc4
--- /dev/null
+++ b/docs/content/en/news/0.33-relnotes/index.md
@@ -0,0 +1,76 @@
+
+---
+date: 2018-01-18
+title: "Hugo 0.33: The New Kinder Surprise!"
+description: "Hugo 0.33 comes with resource (images etc.) metadata, `type` and `layout` for all page types, `url` in front matter for list pages …"
+categories: ["Releases"]
+---
+
+ Hugo `0.33` is the first main Hugo release of the new year, and it is safe to say that [@bep](https://github.com/bep) has turned off his lazy Christmas mode :smiley:
+
+This is a full makeover of the layout selection logic with full custom `layout` and `type` support (many have asked for this). Also, Hugo now respects the `url` value in front matter for all page types, including sections. Also, you can now configure `uglyURLs` per section.
+
+But this release is also a follow-up to the `0.32` release which was all about bundles with resources and powerful image processing. With this release it is now simple to add metadata to your images and other bundle resources.
+
+[@bep](https://github.com/bep) has added a section with examples of both `resources` configuration in both `YAML` and `TOML` front matter in his [test site](http://hugotest.bep.is/resourcemeta/). The example below shows a sample of how it would look like in `YAML`:
+
+```yaml
+date: 2017-01-17
+title: My Bundle With YAML Resource Metadata
+resources:
+- src: "image-4.png"
+ title: "The Fourth Image"
+- src: "*.png"
+ name: "my-cool-image-:counter"
+ title: "The Image #:counter"
+ params:
+ byline: "bep"
+```
+
+This release represents **41 contributions by 3 contributors** to the main Hugo code base.
+
+Hugo now has:
+
+* 22553+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 448+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 197+ [themes](http://themes.gohugo.io/)
+
+## Notes
+* We have re-implemented and unified the template layout lookup logic. This has made it more powerful and much simpler to understand. We don't expect any sites to break because of this. We have tested lots of Hugo sites, including the 200 [themes](http://themes.gohugo.io/).
+* The `indexes` type is removed from template lookup. It's not in the documentation, and is a legacy term inherited from very old Hugo versions.
+* If you have sub-dirs in your shiny new bundles (e.g. `my-bundle/images`) and use the `*Prefix*` methods to find them, we have made an unintended change that affects you. See [this issue](https://github.com/gohugoio/hugo/issues/4295).
+
+## Enhancements
+
+### Templates
+
+* Respect `Type` and `Layout` for list template selection [51dd462c](https://github.com/gohugoio/hugo/commit/51dd462c3958f7cf032b06503f1f200a6aceebb9) [@bep](https://github.com/bep) [#3005](https://github.com/gohugoio/hugo/issues/3005)[#3245](https://github.com/gohugoio/hugo/issues/3245)
+
+### Core
+
+* Allow `url` in front matter for list type pages [8a409894](https://github.com/gohugoio/hugo/commit/8a409894bdb0972e152a2eccc47a2738568e1cfc) [@bep](https://github.com/bep) [#4263](https://github.com/gohugoio/hugo/issues/4263)
+* Improve `.Site.GetPage` for regular translated pages. Before this change it was not possible to say "get me the current language edition of the given content page if possible." Now you can do that by doing a lookup without any extensions: `.Site.GetPage "page" "post/mypost"` [9409bc0f](https://github.com/gohugoio/hugo/commit/9409bc0f799a8057836a14ccdf2833a55902175e) [@bep](https://github.com/bep) [#4285](https://github.com/gohugoio/hugo/issues/4285)
+* Add front matter metadata to `Resource` [20c9b6ec](https://github.com/gohugoio/hugo/commit/20c9b6ec81171d1c586ea31d5d08b40b0edaffc6) [@bep](https://github.com/bep) [#4244](https://github.com/gohugoio/hugo/issues/4244)
+* Implement `Resources.ByPrefix` [46db900d](https://github.com/gohugoio/hugo/commit/46db900dab9c0e6fcd9d227f10a32fb24f5c8bd9) [@bep](https://github.com/bep) [#4266](https://github.com/gohugoio/hugo/issues/4266)
+* Make `GetByPrefix` work for Page resources [60c9f3b1](https://github.com/gohugoio/hugo/commit/60c9f3b1c34b69771e25a66906f150f460d73223) [@bep](https://github.com/bep) [#4264](https://github.com/gohugoio/hugo/issues/4264)
+* Make `Resources.GetByPrefix` case insensitive [db85e834](https://github.com/gohugoio/hugo/commit/db85e83403913cff4b8737b138932b28e5bf6160) [@bep](https://github.com/bep) [#4258](https://github.com/gohugoio/hugo/issues/4258)
+* Update `Chroma` and other third-party deps [64f0e9d1](https://github.com/gohugoio/hugo/commit/64f0e9d1c1d4ff2249fd9cf9749e70485002b36d) [@bep](https://github.com/bep) [#4267](https://github.com/gohugoio/hugo/issues/4267)
+* Remove superflous `BuildDate` logic [13d53b31](https://github.com/gohugoio/hugo/commit/13d53b31f19240879122d6b7e4aaeb60b5130a3c) [@bep](https://github.com/bep) [#4272](https://github.com/gohugoio/hugo/issues/4272)
+* Run benchmarks 3 times [b6ea6d07](https://github.com/gohugoio/hugo/commit/b6ea6d07d0b072d850fb066c78976acd6c2f5e81) [@bep](https://github.com/bep)
+* Support `uglyURLs` per section [57e10f17](https://github.com/gohugoio/hugo/commit/57e10f174e51cc5e1cf5f37eed30a0f3b153dd64) [@bep](https://github.com/bep) [#4256](https://github.com/gohugoio/hugo/issues/4256)
+* Update CONTRIBUTING.md [1046e936](https://github.com/gohugoio/hugo/commit/1046e9363f2e382fd0b4aac838735ae4cbbebe5a) [@vassudanagunta](https://github.com/vassudanagunta)
+* Support offline builds [d5803da1](https://github.com/gohugoio/hugo/commit/d5803da1befba5446d1b2c1ad16f6467dc7b3991) [@vassudanagunta](https://github.com/vassudanagunta)
+
+## Fixes
+
+* Fix handling of mixed-case taxonomy folders with content file [2d3189b2](https://github.com/gohugoio/hugo/commit/2d3189b22760e0a8995dae082a6bc5480f770bfe) [@bep](https://github.com/bep) [#4238](https://github.com/gohugoio/hugo/issues/4238)
+* Fix handling of very long image file names [ecaf1451](https://github.com/gohugoio/hugo/commit/ecaf14514e06321823bdd10235cf23e7d654ba77) [@bep](https://github.com/bep) [#4261](https://github.com/gohugoio/hugo/issues/4261)
+* Update `Afero` to avoid panic on "file name is too long" [f8a119b6](https://github.com/gohugoio/hugo/commit/f8a119b606d55aa4f31f16e5a3cadc929c99e4f8) [@bep](https://github.com/bep) [#4240](https://github.com/gohugoio/hugo/issues/4240)
+* And now really fix the server watch logic [d4f8f88e](https://github.com/gohugoio/hugo/commit/d4f8f88e67f958b8010f90cb9b9854114e52dac2) [@bep](https://github.com/bep) [#4275](https://github.com/gohugoio/hugo/issues/4275)
+* Fix server without watch [4e524ffc](https://github.com/gohugoio/hugo/commit/4e524ffcfff48c017717e261c6067416aa56410f) [@bep](https://github.com/bep) [#4275](https://github.com/gohugoio/hugo/issues/4275)
+
+
+
+
+
+
diff --git a/docs/content/en/news/0.34-relnotes/featured-34-poster.png b/docs/content/en/news/0.34-relnotes/featured-34-poster.png
new file mode 100644
index 000000000..a5c81b8c8
--- /dev/null
+++ b/docs/content/en/news/0.34-relnotes/featured-34-poster.png
Binary files differ
diff --git a/docs/content/en/news/0.34-relnotes/index.md b/docs/content/en/news/0.34-relnotes/index.md
new file mode 100644
index 000000000..dd5418a77
--- /dev/null
+++ b/docs/content/en/news/0.34-relnotes/index.md
@@ -0,0 +1,44 @@
+
+---
+date: 2018-01-22
+title: "Hugo 0.34: Pattern matching to filter images and other resources"
+description: "Hugo 0.34 adds full glob with super-asterisk support, for example `*.jpg`."
+categories: ["Releases"]
+---
+
+Hugo `0.34` is a small release. It contains a few smaller bug-fixes, but more important is an overhaul of the API used to find images and other resources in your page bundles.
+
+We have added two simple methods on the `Resources` object:
+
+* `.Match` finds every resource matching a pattern. Examples: `.Match "images/*.jpg"` finds every JPEG image in `images` and `.Match "**.jpg"` finds every JPEG image in the bundle.
+* `.GetMatch` finds the first resource matching the pattern given.
+
+**Note: The path separators used are Unix-style forward slashes, even on Windows.**
+
+It uses [standard wildcard syntax](http://tldp.org/LDP/GNU-Linux-Tools-Summary/html/x11655.htm) with the addition of the `**`, aka super-asterisk, which matches across path boundaries.
+
+Thanks to [@gobwas](https://github.com/gobwas/glob) for a fast and easy-to-use Glob library.
+
+This release represents **5 contributions by 1 contributors** to the main Hugo code base.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **25 contributions by 16 contributors**. A special thanks to [@bep](https://github.com/bep), [@rmetzler](https://github.com/rmetzler), [@chris-rudmin](https://github.com/chris-rudmin), and [@stkevintan](https://github.com/stkevintan) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 22689+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 448+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 197+ [themes](http://themes.gohugo.io/)
+
+## Notes
+* `Resources.GetByPrefix` and `Resources.ByPrefix` are deprecated. They still work, but will eventually be removed. Use `Resources.Match` (many) and `Resources.GetMatch` (one).
+* When filtering bundles pages in sub-folders, you need to include the sub-folder when matching. This was a bug introduced in `0.33` and gets it in line with images and other resources.
+
+## Enhancements
+
+* Add `Resources.Match` and `Resources.GetMatch` [94213801](https://github.com/gohugoio/hugo/commit/9421380168f66620cb73203e1267814b3086d805) [@bep](https://github.com/bep) [#4301](https://github.com/gohugoio/hugo/issues/4301)
+
+## Fixes
+* Add validation for `defaultContentLanguage` [4d5e4f37](https://github.com/gohugoio/hugo/commit/4d5e4f379a890a3c6cbc11ddb40d77a90f14c015) [@bep](https://github.com/bep) [#4298](https://github.com/gohugoio/hugo/issues/4298)
+* Fix lookup of pages bundled in sub-folders in `ByPrefix` etc. [5d030869](https://github.com/gohugoio/hugo/commit/5d03086981b4a7d4bc450269a6a2e0fd22dbeed7) [@bep](https://github.com/bep) [#4295](https://github.com/gohugoio/hugo/issues/4295)
diff --git a/docs/content/en/news/0.35-relnotes/featured-hugo-35-poster.png b/docs/content/en/news/0.35-relnotes/featured-hugo-35-poster.png
new file mode 100644
index 000000000..a97e3b901
--- /dev/null
+++ b/docs/content/en/news/0.35-relnotes/featured-hugo-35-poster.png
Binary files differ
diff --git a/docs/content/en/news/0.35-relnotes/index.md b/docs/content/en/news/0.35-relnotes/index.md
new file mode 100644
index 000000000..104cbd222
--- /dev/null
+++ b/docs/content/en/news/0.35-relnotes/index.md
@@ -0,0 +1,102 @@
+
+---
+date: 2018-01-31
+title: "Hugo 0.35: Headless Bundles!"
+description: "Headless Bundles, disable languages, improves fast render mode, and much more."
+categories: ["Releases"]
+---
+
+The most notable new feature in Hugo `0.35` is perhaps **Headless Bundles**.
+
+This means that you in your `index.md` front matter can say:
+
+```yaml
+headless: true
+```
+And
+
+* it will have no `Permalink` and no rendered HTML in `/public`
+* it will not be part of `.Site.RegularPages` etc.
+
+But you can get it by:
+
+* `.Site.GetPage ...`
+
+The use cases are many:
+
+* Shared media libraries
+* Reusable page content "snippets"
+* ...
+
+But this release contains more goodies than possible to sum up in one paragraph, so study the release notes carefully. It represents **42 contributions by 8 contributors** to the main Hugo code base.
+
+[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@vassudanagunta](https://github.com/vassudanagunta), [@yanzay](https://github.com/yanzay), and [@robertbasic](https://github.com/robertbasic) for their ongoing contributions.
+
+And as always a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the documentation and the themes site in pristine condition.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **28 contributions by 5 contributors**. A special thanks to [@bep](https://github.com/bep), [@kaushalmodi](https://github.com/kaushalmodi), [@regisphilibert](https://github.com/regisphilibert), and [@salim-b](https://github.com/salim-b) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 22967+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 448+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 197+ [themes](http://themes.gohugo.io/)
+
+
+## Notes
+
+* Deprecate `useModTimeAsFallback` [adfd4370](https://github.com/gohugoio/hugo/commit/adfd4370b67fd7181178bd6b3b1d07356beaac71) [@bep](https://github.com/bep) [#4351](https://github.com/gohugoio/hugo/issues/4351)
+* Deprecate CLI flags `canonifyURLs`, `pluralizeListTitles`, `preserveTaxonomyNames`, `uglyURLs` [f08ea02d](https://github.com/gohugoio/hugo/commit/f08ea02d24d42929676756950f3affaca7fd8c01) [@bep](https://github.com/bep) [#4347](https://github.com/gohugoio/hugo/issues/4347)
+* Remove undraft command [2fa70c93](https://github.com/gohugoio/hugo/commit/2fa70c9344b231c9d999bbafdfa4acbf27ed9f6e) [@robertbasic](https://github.com/robertbasic) [#4353](https://github.com/gohugoio/hugo/issues/4353)
+
+## Enhancements
+
+### Templates
+
+* Update Twitter card to also consider images in `.Resources` [25d691da](https://github.com/gohugoio/hugo/commit/25d691daff57d7c6d7d0f63af3991d22e3f788fe) [@bep](https://github.com/bep) [#4349](https://github.com/gohugoio/hugo/issues/4349)
+* Seed random on init only [83c761b7](https://github.com/gohugoio/hugo/commit/83c761b71a980aee6331179b271c7e24e999e8eb) [@liguoqinjim](https://github.com/liguoqinjim)
+* Remove duplicate layout lookup layouts [b2fcbb1f](https://github.com/gohugoio/hugo/commit/b2fcbb1f9774aa1e929b8575c0e1ac366ab2fb73) [@bep](https://github.com/bep) [#4319](https://github.com/gohugoio/hugo/issues/4319)
+* Add "removable-media" interface to `snapcraft.yaml` [f0c0ece4](https://github.com/gohugoio/hugo/commit/f0c0ece44d55b6c2997cbd106d1bc099ea1a2fa7) [@anthonyfok](https://github.com/anthonyfok) [#3837](https://github.com/gohugoio/hugo/issues/3837)
+
+### Other
+
+* Add a way to disable one or more languages [6413559f](https://github.com/gohugoio/hugo/commit/6413559f7575e2653d76227a8037a7edbaae82aa) [@bep](https://github.com/bep) [#4297](https://github.com/gohugoio/hugo/issues/4297)[#4329](https://github.com/gohugoio/hugo/issues/4329)
+* Handle newly created files in Fast Render Mode [1707dae8](https://github.com/gohugoio/hugo/commit/1707dae8d3634006017eb6d040df4dbafc53d92f) [@yanzay](https://github.com/yanzay) [#4339](https://github.com/gohugoio/hugo/issues/4339)
+* Extract the Fast Render Mode logic into a method [94e736c5](https://github.com/gohugoio/hugo/commit/94e736c5e167a0ee70a528e1c19d64a47e7929c2) [@bep](https://github.com/bep) [#4339](https://github.com/gohugoio/hugo/issues/4339)
+* Remove unused code [ae5a45be](https://github.com/gohugoio/hugo/commit/ae5a45be6f0ee4d5c52b38fd28b22b55d9cd7b2d) [@bep](https://github.com/bep)
+* Add the last lookup variant for the `GetPage` index [3446fe9b](https://github.com/gohugoio/hugo/commit/3446fe9b8937610b8b628b2c212eb25888a7c1bb) [@bep](https://github.com/bep) [#4312](https://github.com/gohugoio/hugo/issues/4312)
+* Simplify bundle lookup via `.Site.GetPage`, `ref`, `relref` [517b6b62](https://github.com/gohugoio/hugo/commit/517b6b62389d23bfe41fe3ae551a691b11bdcaa7) [@bep](https://github.com/bep) [#4312](https://github.com/gohugoio/hugo/issues/4312)
+* Remove some now superflous Fast Render Mode code [feeed073](https://github.com/gohugoio/hugo/commit/feeed073c3320b09fb38168ce272ac88b987f1d2) [@bep](https://github.com/bep) [#4339](https://github.com/gohugoio/hugo/issues/4339)
+* Make resource counters for `name` and `title` independent [df20b054](https://github.com/gohugoio/hugo/commit/df20b05463fef42aba93d5208e410a7ecc56da5d) [@bep](https://github.com/bep) [#4335](https://github.com/gohugoio/hugo/issues/4335)
+* Provide .Name to the archetype templates [863a812e](https://github.com/gohugoio/hugo/commit/863a812e07193541b42732b0e227f3d320433f01) [@bep](https://github.com/bep) [#4348](https://github.com/gohugoio/hugo/issues/4348)
+* Only set `url` if permalink in metadata and remove duplicate confirm msg [3752348e](https://github.com/gohugoio/hugo/commit/3752348ef13ced8f6f528b42ee7d76a12a97ae5c) [@lildude](https://github.com/lildude) [#1887](https://github.com/gohugoio/hugo/issues/1887)
+* Start Resources :counter first time they're used [7b472e46](https://github.com/gohugoio/hugo/commit/7b472e46084b603045b87cea870ffc73ac1cf7e7) [@bep](https://github.com/bep) [#4335](https://github.com/gohugoio/hugo/issues/4335)
+* Update to Go 1.9.3 [a91aba1c](https://github.com/gohugoio/hugo/commit/a91aba1c1562259dffd321a608f38c38dd4d5aeb) [@bep](https://github.com/bep) [#4328](https://github.com/gohugoio/hugo/issues/4328)
+* Support pages without front matter [91bb774a](https://github.com/gohugoio/hugo/commit/91bb774ae4e129f7ed0624754b31479c960ef774) [@vassudanagunta](https://github.com/vassudanagunta) [#4320](https://github.com/gohugoio/hugo/issues/4320)
+* Add page metadata dates tests [3f0379ad](https://github.com/gohugoio/hugo/commit/3f0379adb72389954ca2be6a9f2ebfcd65c6c440) [@vassudanagunta](https://github.com/vassudanagunta)
+* Re-generate CLI docs [1e27d058](https://github.com/gohugoio/hugo/commit/1e27d0589118a114e49c032e4bd68b4798e44a5b) [@bep](https://github.com/bep)
+* Remove and update deprecation status [d418c2c2](https://github.com/gohugoio/hugo/commit/d418c2c2eacdc1dc6fffe839e0a90600867878ca) [@bep](https://github.com/bep)
+* Shorten the stale setup [4a7c2b36](https://github.com/gohugoio/hugo/commit/4a7c2b3695fe7b88861f2155ea7ef635fe425cd4) [@bep](https://github.com/bep)
+* Add a `GetPage` to the site benchmarks [a1956391](https://github.com/gohugoio/hugo/commit/a19563910eec5fed08f3b02563b9a7b38026183d) [@bep](https://github.com/bep)
+* Add headless bundle support [0432c64d](https://github.com/gohugoio/hugo/commit/0432c64dd22e4610302162678bb93661ba68d758) [@bep](https://github.com/bep) [#4311](https://github.com/gohugoio/hugo/issues/4311)
+* Merge matching resources params maps [5a0819b9](https://github.com/gohugoio/hugo/commit/5a0819b9b5eb9e79826cfa0a65f235d9821b1ac4) [@bep](https://github.com/bep) [#4315](https://github.com/gohugoio/hugo/issues/4315)
+* Add some general code contribution criteria [78c86330](https://github.com/gohugoio/hugo/commit/78c863305f337ed4faf3cf0a23675f28b0ae5641) [@bep](https://github.com/bep)
+* Tighten page kind logic, introduce tests [8125b4b0](https://github.com/gohugoio/hugo/commit/8125b4b03d10eb73f8aea3f9ea41172aba8df082) [@vassudanagunta](https://github.com/vassudanagunta)
+
+## Fixes
+* Fix `robots.txt` in multihost mode [4d912e2a](https://github.com/gohugoio/hugo/commit/4d912e2aad39bfe8d76672cf53b01317792e02c5) [@bep](https://github.com/bep) [#4193](https://github.com/gohugoio/hugo/issues/4193)
+* Fix `--uglyURLs` from comand line regression [016398ff](https://github.com/gohugoio/hugo/commit/016398ffe2e0a073453cf46a9d6bf72d693c11e5) [@bep](https://github.com/bep) [#4343](https://github.com/gohugoio/hugo/issues/4343)
+* Avoid unescape in `highlight` [ebdd8cba](https://github.com/gohugoio/hugo/commit/ebdd8cba3f5965a8ac897833f313d772271de649) [@bep](https://github.com/bep) [#4219](https://github.com/gohugoio/hugo/issues/4219)
+* Fix Docker build [a34213f0](https://github.com/gohugoio/hugo/commit/a34213f0b5624de101272aab469ca9b6fe0c273f) [@skoblenick](https://github.com/skoblenick) [#4076](https://github.com/gohugoio/hugo/issues/4076)[#4077](https://github.com/gohugoio/hugo/issues/4077)
+* Fix language params handling [ae742cb1](https://github.com/gohugoio/hugo/commit/ae742cb1bdf35b81aa0ede5453da6b0c4a4fccf2) [@bep](https://github.com/bep) [#4356](https://github.com/gohugoio/hugo/issues/4356)[#4352](https://github.com/gohugoio/hugo/issues/4352)
+* Fix handling of top-level page bundles [4eb2fec6](https://github.com/gohugoio/hugo/commit/4eb2fec67c3a72a3ac98aa834dc56fd4504626d8) [@bep](https://github.com/bep) [#4332](https://github.com/gohugoio/hugo/issues/4332)
+* Fix `baseURL` server regression for multilingual sites [ed4a00e4](https://github.com/gohugoio/hugo/commit/ed4a00e46f2344320a22f07febe5aec4075cb3fb) [@bep](https://github.com/bep) [#4333](https://github.com/gohugoio/hugo/issues/4333)
+* Fix "date" page param [322c5672](https://github.com/gohugoio/hugo/commit/322c567220aa4123a5d707629c1bebd375599912) [@vassudanagunta](https://github.com/vassudanagunta) [#4323](https://github.com/gohugoio/hugo/issues/4323)
+* Fix typo in comment [912147ab](https://github.com/gohugoio/hugo/commit/912147ab896e69a450b7100c3d6bf81a7bf78b5a) [@yanzay](https://github.com/yanzay)
+
+
+
+
+
diff --git a/docs/content/en/news/0.36-relnotes/featured-hugo-36-poster.png b/docs/content/en/news/0.36-relnotes/featured-hugo-36-poster.png
new file mode 100644
index 000000000..12dec42fc
--- /dev/null
+++ b/docs/content/en/news/0.36-relnotes/featured-hugo-36-poster.png
Binary files differ
diff --git a/docs/content/en/news/0.36-relnotes/index.md b/docs/content/en/news/0.36-relnotes/index.md
new file mode 100644
index 000000000..a81892458
--- /dev/null
+++ b/docs/content/en/news/0.36-relnotes/index.md
@@ -0,0 +1,51 @@
+
+---
+date: 2018-02-05
+title: "Hugo 0.36: Smart Image Cropping!"
+description: "Hugo 0.36 announces smart image cropping and some important bug fixes."
+categories: ["Releases"]
+---
+
+Hugo `0.36` announces **smart cropping** of images, using the [library](https://github.com/muesli/smartcrop) created by [muesli](https://github.com/muesli). We will work with him to improve this even more in the future, but this is now the default used when cropping images in Hugo.
+
+Go [here](http://hugotest.bep.is/resourcemeta/smartcrop/) for a list of examples.
+
+This release represents **7 contributions by 3 contributors** to the main Hugo code base.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **9 contributions by 4 contributors**. A special thanks to [@bep](https://github.com/bep), [@Jibec](https://github.com/Jibec), [@Nick-Rivera](https://github.com/Nick-Rivera), and [@kaushalmodi](https://github.com/kaushalmodi) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 23100+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 448+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 197+ [themes](http://themes.gohugo.io/)
+
+## Notes
+Hugo now defaults to **smart crop** when cropping images, if you don't specify it when calling `.Fill`.
+
+You can get the old default by adding this:
+
+{{< code-toggle file="config" >}}
+[imaging]
+anchor = "center"
+{{< /code-toggle >}}
+
+Also, we have removed the superflous anchor name from the processed filenames that does not use this anchor, so it can be wise to run `hugo --gc` once to remove unused images.
+
+## Enhancements
+* Add smart cropping [722086b4](https://github.com/gohugoio/hugo/commit/722086b4ed3e77d1aba6724474bec06d08e7de06) [@bep](https://github.com/bep) [#4375](https://github.com/gohugoio/hugo/issues/4375)
+
+## Fixes
+* Ensure site templates can override theme templates [084cf419](https://github.com/gohugoio/hugo/commit/084cf4191b3c1e7590a4223fd9251019ef5d4c21) [@moorereason](https://github.com/moorereason) [#3505](https://github.com/gohugoio/hugo/issues/3505)
+* Add additional test to `TestTemplateLookupOrder` [fc06d5c1](https://github.com/gohugoio/hugo/commit/fc06d5c18bb1e47f90f0297aa8121ee0775e047d) [@moorereason](https://github.com/moorereason) [#3505](https://github.com/gohugoio/hugo/issues/3505)
+* Fix broken `TestTemplateLookupOrder` [9a367d9d](https://github.com/gohugoio/hugo/commit/9a367d9d06db6f6cf22121d0397c464ae36e7089) [@moorereason](https://github.com/moorereason)
+* Fix JSON array-based data file handling regression [4402c077](https://github.com/gohugoio/hugo/commit/4402c077754991df19c3bbab0c4a671dcfdc192c) [@vassudanagunta](https://github.com/vassudanagunta) [#4361](https://github.com/gohugoio/hugo/issues/4361)
+* Increase data directory test coverage [4743de0d](https://github.com/gohugoio/hugo/commit/4743de0d3c7564fc06972074e903d5502d204353) [@vassudanagunta](https://github.com/vassudanagunta) [#4138](https://github.com/gohugoio/hugo/issues/4138)
+
+
+
+
+
+
diff --git a/docs/content/en/news/0.36.1-relnotes/index.md b/docs/content/en/news/0.36.1-relnotes/index.md
new file mode 100644
index 000000000..00a5b346c
--- /dev/null
+++ b/docs/content/en/news/0.36.1-relnotes/index.md
@@ -0,0 +1,43 @@
+
+---
+date: 2018-02-15
+title: "Hugo 0.36.1: One Bugfix"
+description: "Fixes a multi-thread image processing issue."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+ This release fixes a multi-thread issue when reprocessing and reusing images across pages. When doing something like this with the same image from a partial used in, say, both the home page and the single page:
+
+```bash
+{{ with $img }}
+{{ $big := .Fill "1024x512 top" }}
+{{ $small := $big.Resize "512x" }}
+{{ end }}
+```
+
+There would be timing issues making Hugo in some cases trying to process the same image twice at the same time.
+
+You would experience errors of type:
+
+```bash
+png: invalid format: not enough pixel data
+```
+
+This commit fixes that by adding a mutex per image. This should also improve the performance, slightly, as it avoids duplicate work.
+
+The current workaround before this fix is to always operate on the original:
+
+```bash
+{{ with $img }}
+{{ $big := .Fill "1024x512 top" }}
+{{ $small := .Fill "512x256 top" }}
+{{ end }}
+```
+This error was rare (no reports on GitHub or the discussion forum), but very hard to debug for the end user.
+
+* Fix multi-threaded image processing issue [d8fdffb5](https://github.com/gohugoio/hugo/commit/d8fdffb55268464d54558d6f9cd3874b612dc7c7) [@bep](https://github.com/bep) [#4404](https://github.com/gohugoio/hugo/issues/4404)
+* Improve error message in .Render [08521dac](https://github.com/gohugoio/hugo/commit/08521dac8323403933a8fd11acfd16930af5f17d) [@bep](https://github.com/bep)
+* Bump Travis/Snapcraft to Go 1.9.4 [fc23a80f](https://github.com/gohugoio/hugo/commit/fc23a80ffd3878b9ba9a160ce37e0e1d8703faf3) [@bep](https://github.com/bep)
+* Improve error processing error message [2851af02](https://github.com/gohugoio/hugo/commit/2851af0225cdf6c4e47058979cd22949ed6d1fc0) [@bep](https://github.com/bep)
diff --git a/docs/content/en/news/0.37-relnotes/featured-hugo-37-poster.png b/docs/content/en/news/0.37-relnotes/featured-hugo-37-poster.png
new file mode 100644
index 000000000..9f369ba25
--- /dev/null
+++ b/docs/content/en/news/0.37-relnotes/featured-hugo-37-poster.png
Binary files differ
diff --git a/docs/content/en/news/0.37-relnotes/index.md b/docs/content/en/news/0.37-relnotes/index.md
new file mode 100644
index 000000000..a9b6b4cef
--- /dev/null
+++ b/docs/content/en/news/0.37-relnotes/index.md
@@ -0,0 +1,76 @@
+
+---
+date: 2018-02-27
+title: "Hugo 0.37: Preserve PNG Colour Palette"
+description: "Reduces processed PNG file sizes. And 0.37 is built with Go 1.10!"
+categories: ["Releases"]
+---
+
+The main item in Hugo `0.37` is that we now properly preserve the colour palette when processing `PNG` images. We got reports from users experiencing their `PNG` images getting bigger in file size when scaled down. Now, if you, as an example, start out with a carefully chosen 8 bit colour palette (i.e. `PNG-8`), this is now what you will end up with. A special thanks to [@aitva](https://github.com/aitva) for doing the investigative work finding a proper fix for this issue.
+
+This release represents **40 contributions by 5 contributors** to the main Hugo code base.
+
+[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@vassudanagunta](https://github.com/vassudanagunta), [@kaushalmodi](https://github.com/kaushalmodi), and [@curttimson](https://github.com/curttimson) for their ongoing contributions.
+
+And as always a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the documentation and the themes site in pristine condition.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **24 contributions by 8 contributors**. A special thanks to [@bep](https://github.com/bep), [@4RU](https://github.com/4RU), [@kaushalmodi](https://github.com/kaushalmodi), and [@mitchchn](https://github.com/mitchchn) for their work on the documentation site.
+
+Hugo now has:
+
+* 23649+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 447+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 197+ [themes](http://themes.gohugo.io/)
+
+## Notes
+
+* Hugo will now convert non-string `YAML` map keys to string. See [#4393](https://github.com/gohugoio/hugo/issues/4393) for more information. You will get a `WARNING` in the console if you are touched by this.
+* We have improved the `PNG` processing, and have incremented the version numbers on the URL for the processed `PNG` image. This will just work, but you may want to run `hugo --gc` to clean up some old stale images in the resource cache.
+
+## Enhancements
+
+### Templates
+
+* Add template func for TOML/JSON/YAML docs examples conversion. This is mainly motivated by the needs of the Hugo docs site. [d382502d](https://github.com/gohugoio/hugo/commit/d382502d6dfa1c066545e215ba83e2e0a9d2c8d7) [@bep](https://github.com/bep) [#4389](https://github.com/gohugoio/hugo/issues/4389)
+
+### Core
+
+* Refactor tests for JSON, YAML and TOML equivalency, add coverage [82eefded](https://github.com/gohugoio/hugo/commit/82eefded1353f0198fd8fe9f7df1aa620d3d50eb) [@vassudanagunta](https://github.com/vassudanagunta)
+* Re-enable YAML data tests disabled in f554503f [e1728349](https://github.com/gohugoio/hugo/commit/e1728349930e2cc1b6580766473de98adb0f3e50) [@vassudanagunta](https://github.com/vassudanagunta)
+
+### Other
+
+* Preserve color palette for PNG images [799c654b](https://github.com/gohugoio/hugo/commit/799c654b0d39ec869c2da24d41de3636eb7157f0) [@bep](https://github.com/bep) [#4416](https://github.com/gohugoio/hugo/issues/4416)
+* Use `Floyd-Steinberg` dithering for PNGs [13ea1e7c](https://github.com/gohugoio/hugo/commit/13ea1e7c352852966f88ef119d9434bbb1ee62fa) [@bep](https://github.com/bep) [#4453](https://github.com/gohugoio/hugo/issues/4453)
+* Make `ge`, `le` etc. work with the Hugo Version number [0602135f](https://github.com/gohugoio/hugo/commit/0602135fd44b0cfa0a51b0ec6e451ae58ac95666) [@bep](https://github.com/bep) [#4443](https://github.com/gohugoio/hugo/issues/4443)
+* Update dependencies [eaf573a2](https://github.com/gohugoio/hugo/commit/eaf573a2778e79287b871b69f4959fd3082d8887) [@bep](https://github.com/bep) [#4418](https://github.com/gohugoio/hugo/issues/4418)
+* Update to Go 1.10 (!) Take 2 [a3f26e56](https://github.com/gohugoio/hugo/commit/a3f26e56368c62b0900a10d83a11b7783630963b) [@bep](https://github.com/bep)
+* Update to Go 1.10 (!) [ff10c15a](https://github.com/gohugoio/hugo/commit/ff10c15a93632043f7a7f6551a30487c9ef58c50) [@bep](https://github.com/bep)
+* Add WARNING for integer YAML keys [0816a97a](https://github.com/gohugoio/hugo/commit/0816a97a469f11d8e9706143975eaa532e29639b) [@bep](https://github.com/bep) [#4393](https://github.com/gohugoio/hugo/issues/4393)
+* Tune stringifyMapKeys [10a917df](https://github.com/gohugoio/hugo/commit/10a917dfdce8851666c5b89ebc02af6f6c84ab59) [@bep](https://github.com/bep)
+* Rename stringifyYAMLMapKeys to stringifyMapKeys [d4beef0d](https://github.com/gohugoio/hugo/commit/d4beef0d2bb8f6481fa80e1d938454a7d4e38814) [@bep](https://github.com/bep)
+* Add benchmarks for stringifyYAMLMapKeys [51213e0b](https://github.com/gohugoio/hugo/commit/51213e0be19fc19dbca9815afa95c73bd6d159c2) [@bep](https://github.com/bep)
+* Add support for `YAML` array data files [1fa24177](https://github.com/gohugoio/hugo/commit/1fa2417777d82b81bf37919ad02de4f5dcbf0d50) [@vassudanagunta](https://github.com/vassudanagunta) [#3890](https://github.com/gohugoio/hugo/issues/3890)
+* Account for array type data in data dir merge/override logic [bb549a0d](https://github.com/gohugoio/hugo/commit/bb549a0d57505a6b8f28930bb91a9ab44cbb3288) [@vassudanagunta](https://github.com/vassudanagunta) [#4366](https://github.com/gohugoio/hugo/issues/4366)
+* Add "target" and "rel" parameters to figure shortcode [2e95ec68](https://github.com/gohugoio/hugo/commit/2e95ec6844bf65a25485bdc8e2638e45788f2dcf) [@kaushalmodi](https://github.com/kaushalmodi)
+* image" property, not "twitter:image:src" [76d38d5e](https://github.com/gohugoio/hugo/commit/76d38d5e5322fc6220fb9e74f9ca0668606ebb5d) [@kaushalmodi](https://github.com/kaushalmodi)
+
+## Fixes
+
+### Core
+
+* Continue `GitInfo` lookup on error [e9750d83](https://github.com/gohugoio/hugo/commit/e9750d831f749afa928d8a099af5889d18cb2484) [@bep](https://github.com/bep)
+* Fix paginator `URL` for sections with URL in front matter [9f740b37](https://github.com/gohugoio/hugo/commit/9f740b37cfb3278e34a5d085380ccd4d619dabff) [@bep](https://github.com/bep) [#4415](https://github.com/gohugoio/hugo/issues/4415)
+
+### Other
+
+* Fix bug in Site.assembleSections method [00868081](https://github.com/gohugoio/hugo/commit/00868081f624928d773a7b698654766f8cd70069) [@vassudanagunta](https://github.com/vassudanagunta) [#4447](https://github.com/gohugoio/hugo/issues/4447)
+* Update Blackfriday to fix footnote HTML5 validation error [492fea7c](https://github.com/gohugoio/hugo/commit/492fea7cd2bfcbdfe9f56aa0ae659cf62648833b) [@bep](https://github.com/bep) [#4433](https://github.com/gohugoio/hugo/issues/4433)
+* Fix `YAML` maps key type [16a5c745](https://github.com/gohugoio/hugo/commit/16a5c74519771138023f019fe535fa5b250dc50d) [@dmgawel](https://github.com/dmgawel) [#2441](https://github.com/gohugoio/hugo/issues/2441)
+* Remove `ERROR` on missing baseURL [55bd46a6](https://github.com/gohugoio/hugo/commit/55bd46a633d68f62e131457631ba839d6f876a55) [@bep](https://github.com/bep) [#4397](https://github.com/gohugoio/hugo/issues/4397)
+
+
+
+
+
diff --git a/docs/content/en/news/0.37.1-relnotes/index.md b/docs/content/en/news/0.37.1-relnotes/index.md
new file mode 100644
index 000000000..754ed4240
--- /dev/null
+++ b/docs/content/en/news/0.37.1-relnotes/index.md
@@ -0,0 +1,20 @@
+
+---
+date: 2018-03-07
+title: "Hugo 0.37.1: One Bugfix"
+description: "Fixes SVG (and similar) handling as page resources."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+This is a bug-fix release with a one important fix:
+
+Image content such as `SVG` cannot be scaled with the built-in image processing methods, but it should still be possible to use them as page resources. This was a regression in Hugo `0.37` and is now fixed. [ba94abbf](https://github.com/gohugoio/hugo/commit/ba94abbf5dd90f989242af8a7027d67a572a6128) [@bep](https://github.com/bep) [#4455](https://github.com/gohugoio/hugo/issues/4455)
+
+
+
+
+
+
diff --git a/docs/content/en/news/0.38-relnotes/featured-poster.png b/docs/content/en/news/0.38-relnotes/featured-poster.png
new file mode 100644
index 000000000..1e7988c8f
--- /dev/null
+++ b/docs/content/en/news/0.38-relnotes/featured-poster.png
Binary files differ
diff --git a/docs/content/en/news/0.38-relnotes/index.md b/docs/content/en/news/0.38-relnotes/index.md
new file mode 100644
index 000000000..71d167cd5
--- /dev/null
+++ b/docs/content/en/news/0.38-relnotes/index.md
@@ -0,0 +1,66 @@
+
+---
+date: 2018-04-02
+title: "Hugo 0.38: The Easter Egg Edition"
+description: "Hugo 0.38: Date and slug from filenames, multiple content dirs, config from themes, language merge func …"
+categories: ["Releases"]
+---
+
+Hugo `0.38` is an **Easter egg** filled with good stuff. We now support fetching **date and slug from the content filename**, making the move from Jekyll even easier. And you can now set `contentDir` per language with intelligent merging, and themes can now provide configuration ... Also worth mentioning is several improvements in the [Chroma](https://github.com/alecthomas/chroma) highlighter, most notable support for Go templates.
+
+We are working hard to get the documentation up-to-date with the new features, but you can also see them in action with the full source at [hugotest.bep.is](http://hugotest.bep.is/).
+
+This release represents **39 contributions by 4 contributors** to the main Hugo code base.
+[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@anthonyfok](https://github.com/anthonyfok), [@felicianotech](https://github.com/felicianotech), and [@paulcmal](https://github.com/paulcmal) for their ongoing contributions.
+
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the themes site in pristine condition and to [@kaushalmodi](https://github.com/kaushalmodi) for his great work on the documentation site.
+
+Also, a shoutout to [@regisphilibert](https://github.com/regisphilibert) for his work on the new [Code Toggle Shortcode](https://gohugo.io/getting-started/code-toggle/) on the Hugo docs site, which we will put to good use to improve all the configuration samples.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **55 contributions by 18 contributors**. A special thanks to [@kaushalmodi](https://github.com/kaushalmodi), [@bep](https://github.com/bep), [@xa0082249956](https://github.com/xa0082249956), and [@paulcmal](https://github.com/paulcmal) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 24547+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 447+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 213+ [themes](http://themes.gohugo.io/)
+
+## Notes
+
+* Hugo now allows partial redefinition `outputs` in your site configuration. This is what most people would expect, but it is still a change in behaviour. For details, see [#4487](https://github.com/gohugoio/hugo/issues/4487)
+* Before this release, Hugo flattened URLs of processed images in sub-folders. This worked fine but was not intentional. See [#4502](https://github.com/gohugoio/hugo/issues/4502).
+
+## Enhancements
+
+* Allow themes to define output formats, media types and params [e9c7b620](https://github.com/gohugoio/hugo/commit/e9c7b6205f94a7edac0e0df2cd18d1456cb26a06) [@bep](https://github.com/bep) [#4490](https://github.com/gohugoio/hugo/issues/4490)
+* Allow partial redefinition of the `ouputs` config [f8dc47ee](https://github.com/gohugoio/hugo/commit/f8dc47eeffa847fd0b51e376da355e3d957848a6) [@bep](https://github.com/bep) [#4487](https://github.com/gohugoio/hugo/issues/4487)
+* Add a way to merge pages by language [ffaec4ca](https://github.com/gohugoio/hugo/commit/ffaec4ca8c4c6fd05b195879ccd65acf2fd5a6ac) [@bep](https://github.com/bep) [#4463](https://github.com/gohugoio/hugo/issues/4463)
+* Extract `date` and `slug` from filename [68bf1511](https://github.com/gohugoio/hugo/commit/68bf1511f2be39b6576d882d071196e477c72c9f) [@bep](https://github.com/bep) [#285](https://github.com/gohugoio/hugo/issues/285)[#3310](https://github.com/gohugoio/hugo/issues/3310)[#3762](https://github.com/gohugoio/hugo/issues/3762)[#4340](https://github.com/gohugoio/hugo/issues/4340)
+* Add `Delete` method to delete key from `Scratch` [e46ab29b](https://github.com/gohugoio/hugo/commit/e46ab29bd24caa9e2cfa51f24ba15037750850d6) [@paulcmal](https://github.com/paulcmal)
+* Simplify Prev/Next [79dd7cb3](https://github.com/gohugoio/hugo/commit/79dd7cb31a941d7545df33b938ca3ed46593ddfd) [@bep](https://github.com/bep)
+* List Chroma lexers [2c54f1ad](https://github.com/gohugoio/hugo/commit/2c54f1ad48fe2a2f7504117d351d45abc89dcb1f) [@bep](https://github.com/bep) [#4554](https://github.com/gohugoio/hugo/issues/4554)
+* Add support for a `contentDir` set per language [eb42774e](https://github.com/gohugoio/hugo/commit/eb42774e587816b1fbcafbcea59ed65df703882a) [@bep](https://github.com/bep) [#4523](https://github.com/gohugoio/hugo/issues/4523)[#4552](https://github.com/gohugoio/hugo/issues/4552)[#4553](https://github.com/gohugoio/hugo/issues/4553)
+* Update Chroma [7a634898](https://github.com/gohugoio/hugo/commit/7a634898c359a6af0da52be17df07cae97c7937c) [@bep](https://github.com/bep) [#4549](https://github.com/gohugoio/hugo/issues/4549)
+* Add `.Site.IsServer` [1823c053](https://github.com/gohugoio/hugo/commit/1823c053c8900cb6ee53b8e5c02939c7398e34dd) [@felicianotech](https://github.com/felicianotech) [#4478](https://github.com/gohugoio/hugo/issues/4478)
+* Move to Ubuntu Trusty image [511d5d3b](https://github.com/gohugoio/hugo/commit/511d5d3b7681cb76822098f430ed6862232ca529) [@anthonyfok](https://github.com/anthonyfok)
+* Bump some deprecations [b6798ee8](https://github.com/gohugoio/hugo/commit/b6798ee8676c48f86b0bd8581ea244f4be4ef3fa) [@bep](https://github.com/bep)
+* Update Chroma to get `Go template support` [904a3d9d](https://github.com/gohugoio/hugo/commit/904a3d9ddf523d452d04d0b5814503e0ff17bd2e) [@bep](https://github.com/bep) [#4515](https://github.com/gohugoio/hugo/issues/4515)
+* Recover from error in server [f0052b6d](https://github.com/gohugoio/hugo/commit/f0052b6d0f8e113a50aeb6cd7bd34555dbf34a00) [@bep](https://github.com/bep) [#4516](https://github.com/gohugoio/hugo/issues/4516)
+* Spring test cleaning, take 2 [da880157](https://github.com/gohugoio/hugo/commit/da88015776645cc68b96e8b94030c95905df53ae) [@bep](https://github.com/bep)
+* Add docs for `lang.Merge` [70005364](https://github.com/gohugoio/hugo/commit/70005364a245ea3bc59c74192e1f4c56cb6879cf) [@bep](https://github.com/bep)
+* Remove archetype title/date warning [ac12d51e](https://github.com/gohugoio/hugo/commit/ac12d51e7ea3a0ffb7d8053a10b6bf6acf1235ae) [@bep](https://github.com/bep) [#4504](https://github.com/gohugoio/hugo/issues/4504)
+* Add docs on the new front matter configuration [0dbf79c2](https://github.com/gohugoio/hugo/commit/0dbf79c2f8cd5b1a5c91c04a8d677f956b0b8fe8) [@bep](https://github.com/bep) [#4495](https://github.com/gohugoio/hugo/issues/4495)
+* Refactor the GitInfo into the date handlers [ce6e4310](https://github.com/gohugoio/hugo/commit/ce6e4310febf5659392a41b543594382441f3681) [@bep](https://github.com/bep) [#4495](https://github.com/gohugoio/hugo/issues/4495)
+* Do not print build total when `--quiet` is set [50a03a5a](https://github.com/gohugoio/hugo/commit/50a03a5acc7c200c795590c3f4b964fdc56085f2) [@bep](https://github.com/bep) [#4456](https://github.com/gohugoio/hugo/issues/4456)
+
+## Fixes
+
+* Fix freeze in invalid front matter error case [93e24a03](https://github.com/gohugoio/hugo/commit/93e24a03ce98d3212a2d49ad04739141229d0809) [@bep](https://github.com/bep) [#4526](https://github.com/gohugoio/hugo/issues/4526)
+* Fix path duplication/flattening in processed images [3fbc7553](https://github.com/gohugoio/hugo/commit/3fbc75534d1acda2be1c597aa77c919d3a02659d) [@bep](https://github.com/bep) [#4502](https://github.com/gohugoio/hugo/issues/4502)[#4501](https://github.com/gohugoio/hugo/issues/4501)
+* Fix SVG and similar resource handling [ba94abbf](https://github.com/gohugoio/hugo/commit/ba94abbf5dd90f989242af8a7027d67a572a6128) [@bep](https://github.com/bep) [#4455](https://github.com/gohugoio/hugo/issues/4455)
+
+
+
+
diff --git a/docs/content/en/news/0.38.1-relnotes/index.md b/docs/content/en/news/0.38.1-relnotes/index.md
new file mode 100644
index 000000000..a025b5415
--- /dev/null
+++ b/docs/content/en/news/0.38.1-relnotes/index.md
@@ -0,0 +1,32 @@
+
+---
+date: 2018-04-05
+title: "Hugo 0.38.1: Some Live Reload Fixes"
+description: "Hugo 0.38.1 fixes some live reload issues introduced in 0.38."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix that is mainly motivated by some issues with server live reloading introduced in Hugo 0.38.
+
+* Fix livereload for the home page bundle [f87239e4](https://github.com/gohugoio/hugo/commit/f87239e4cab958bf59ecfb1beb8cac439441a553) [@bep](https://github.com/bep) [#4576](https://github.com/gohugoio/hugo/issues/4576)
+* Fix empty BuildDate in "hugo version" [294c0f80](https://github.com/gohugoio/hugo/commit/294c0f8001fe598278c1eb8015deb6b98e8de686) [@anthonyfok](https://github.com/anthonyfok)
+* Fix some livereload content regressions [a4deaeff](https://github.com/gohugoio/hugo/commit/a4deaeff0cfd70abfbefa6d40c0b86839a216f6d) [@bep](https://github.com/bep) [#4566](https://github.com/gohugoio/hugo/issues/4566)
+* Update github.com/bep/gitmap to fix snap build [4d115c56](https://github.com/gohugoio/hugo/commit/4d115c56fac9060230fbac6181a05f7cc6d10b42) [@anthonyfok](https://github.com/anthonyfok) [#4538](https://github.com/gohugoio/hugo/issues/4538)
+* Fix two tests that are broken on Windows [26f34fd5](https://github.com/gohugoio/hugo/commit/26f34fd59da1ce1885d4f2909c5d9ef9c1726944) [@neurocline](https://github.com/neurocline)
+
+
+This release also contains some improvements:
+
+* Add bash completion [874159b5](https://github.com/gohugoio/hugo/commit/874159b5436bc9080aec71a9c26d35f8f62c9fd0) [@anthonyfok](https://github.com/anthonyfok)
+* Handle mass content etc. edits in server mode [730b66b6](https://github.com/gohugoio/hugo/commit/730b66b6520f263af16f555d1d7be51205a8e51d) [@bep](https://github.com/bep) [#4563](https://github.com/gohugoio/hugo/issues/4563)
+
+
+
+
+
+
diff --git a/docs/content/en/news/0.38.2-relnotes/index.md b/docs/content/en/news/0.38.2-relnotes/index.md
new file mode 100644
index 000000000..0a045eee8
--- /dev/null
+++ b/docs/content/en/news/0.38.2-relnotes/index.md
@@ -0,0 +1,26 @@
+
+---
+date: 2018-04-09
+title: "Hugo 0.38.2: Two Bugfixes"
+description: "0.38.2 fixes `--contentDir` flag handling and \".\" in content filenames."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes:
+
+
+* Fix handling of the `--contentDir` and possibly other related flags [080302eb](https://github.com/gohugoio/hugo/commit/080302eb8757fd94ccbd6bf99103432cd98e716c) [@bep](https://github.com/bep) [#4589](https://github.com/gohugoio/hugo/issues/4589)
+* Fix handling of content files with "." in them [2817e842](https://github.com/gohugoio/hugo/commit/2817e842407c8dcbfc738297ab634392fcb41ce1) [@bep](https://github.com/bep) [#4559](https://github.com/gohugoio/hugo/issues/4559)
+
+
+Also in this release:
+
+* Set .Parent in bundled pages to its owner [6792d86a](https://github.com/gohugoio/hugo/commit/6792d86ad028571c684a776c5f00e0107838c955) [@bep](https://github.com/bep) [#4582](https://github.com/gohugoio/hugo/issues/4582)
+
+
+
diff --git a/docs/content/en/news/0.39-relnotes/featured-hugo-39-poster.png b/docs/content/en/news/0.39-relnotes/featured-hugo-39-poster.png
new file mode 100644
index 000000000..e3fa6400a
--- /dev/null
+++ b/docs/content/en/news/0.39-relnotes/featured-hugo-39-poster.png
Binary files differ
diff --git a/docs/content/en/news/0.39-relnotes/index.md b/docs/content/en/news/0.39-relnotes/index.md
new file mode 100644
index 000000000..d1c28252a
--- /dev/null
+++ b/docs/content/en/news/0.39-relnotes/index.md
@@ -0,0 +1,87 @@
+
+---
+date: 2018-04-16
+title: "Hugo 0.39: The Nat King Cole Stabilizer Edition"
+description: "Hugo 0.39: Rewrite of the /commands package, `Resource.Content`, several new template funcs, and more …"
+categories: ["Releases"]
+---
+
+
+**Nat King Cole** was a fantastic American jazz pianist. When his bass player had visited the bar a little too often, he started with his percussive piano playing to keep the tempo flowing. Oscar Peterson called it _"Nat's stabilizers"_. This release is the software equivalent of that. We have been doing frequent main releases this year, but looking back, the patch releases that followed them seemed unneeded. And looking at the regressions, most of them stem from the `commands` package, a package that before this release was filled with globals and high coupling. This package is now rewritten and accompanied with decent test coverage.
+
+But this release isn't all boring and technical: It includes several important bug fixes, several useful new template functions, and `Resource.Content` allows you to get any resource's content without having to fiddle with file paths and `readFile`.
+
+This release represents **61 contributions by 4 contributors** to the main Hugo code base. A shout-out to [@bep](https://github.com/bep) for the implementation and [@it-gro](https://github.com/it-gro) and [@RickCogley](https://github.com/RickCogley) for the help testing it.
+
+[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions and his witty Norwegian humour, but also a big shoutout to [@anthonyfok](https://github.com/anthonyfok), [@thedodobird2](https://github.com/thedodobird2), and [@neurocline](https://github.com/neurocline) for their ongoing contributions.
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the themes site in pristine condition and to [@kaushalmodi](https://github.com/kaushalmodi) for his great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **6 contributions by 5 contributors**. A special thanks to [@kaushalmodi](https://github.com/kaushalmodi), [@regisphilibert](https://github.com/regisphilibert), [@bep](https://github.com/bep), and [@tomanistor](https://github.com/tomanistor) for their work on the documentation site.
+
+Hugo now has:
+
+* 24911+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 446+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 218+ [themes](http://themes.gohugo.io/)
+
+## Notes
+
+* The `main.Execute` function now returns a `Response` object and the global `Hugo` variable is removed. This is only relevant for people building some kind of API around Hugo.
+* Remove deprecated `File.Bytes` [94c8b29c](https://github.com/gohugoio/hugo/commit/94c8b29c39d0c485ee91d98c08fd615c28802496) [@bep](https://github.com/bep)
+
+## Enhancements
+
+### Templates
+
+* Add `anchorize` template func [4dba6ce1](https://github.com/gohugoio/hugo/commit/4dba6ce15ae9b5208b1e2d68c96d7b1dce0a07ab) [@bep](https://github.com/bep)
+* Add `path.Join` [880ca19f](https://github.com/gohugoio/hugo/commit/880ca19f209e68e6a8daa6686b361515ecacc91e) [@bep](https://github.com/bep)
+* Add `path.Split` template func [01b72eb5](https://github.com/gohugoio/hugo/commit/01b72eb592d0e0aefc5f7ae42f9f6ff112883bb6) [@bep](https://github.com/bep)
+
+### Other
+
+* Implement `Resource.Content` [0e7716a4](https://github.com/gohugoio/hugo/commit/0e7716a42450401c7998aa81ad2ed98c8ab109e8) [@bep](https://github.com/bep) [#4622](https://github.com/gohugoio/hugo/issues/4622)
+* Make `Page.Content` a method that returns interface{} [417c5e2b](https://github.com/gohugoio/hugo/commit/417c5e2b67b97fa80a0b6f77d259966f03b95344) [@bep](https://github.com/bep) [#4622](https://github.com/gohugoio/hugo/issues/4622)
+* Remove accidental and breaking space in baseURL flag [1b4e0c41](https://github.com/gohugoio/hugo/commit/1b4e0c4161fb631add62e77f494a7e62c3619020) [@bep](https://github.com/bep) [#4607](https://github.com/gohugoio/hugo/issues/4607)
+* Properly handle CLI slice arguments [27a524b0](https://github.com/gohugoio/hugo/commit/27a524b0905ec73c1eef233f94700feb9f465011) [@bep](https://github.com/bep) [#4607](https://github.com/gohugoio/hugo/issues/4607)
+* Correctly handle destination and i18n-warnings [bede93de](https://github.com/gohugoio/hugo/commit/bede93de005dcf934f3ec9be6388310ac6c57acd) [@bep](https://github.com/bep) [#4607](https://github.com/gohugoio/hugo/issues/4607)
+* Allow "*/" inside commented out shortcodes [14c35c8a](https://github.com/gohugoio/hugo/commit/14c35c8a56c4dc9a1ee0053e9ff976be7715ba99) [@bep](https://github.com/bep) [#4608](https://github.com/gohugoio/hugo/issues/4608)
+* Make commands.Execute return a Response object [96689a5c](https://github.com/gohugoio/hugo/commit/96689a5c319f720368491226f034d0ff9585217c) [@bep](https://github.com/bep) [#4598](https://github.com/gohugoio/hugo/issues/4598)
+* Remove some TODOs [e7010c1b](https://github.com/gohugoio/hugo/commit/e7010c1b621d68ee53411a5ba8143d07b976d9fe) [@bep](https://github.com/bep) [#4598](https://github.com/gohugoio/hugo/issues/4598)
+* Add basic server test [a7d00fc3](https://github.com/gohugoio/hugo/commit/a7d00fc39e87a5cac99b3a2380f5cc8c135d2b4b) [@bep](https://github.com/bep) [#4598](https://github.com/gohugoio/hugo/issues/4598)
+* Remove the Hugo global [b110d0ae](https://github.com/gohugoio/hugo/commit/b110d0ae04e13fb45c739bcebb580709745082e6) [@bep](https://github.com/bep) [#4598](https://github.com/gohugoio/hugo/issues/4598)
+* Make the limit command work again [73825cfc](https://github.com/gohugoio/hugo/commit/73825cfc1c0b007830b24bb1947a565175b52d36) [@bep](https://github.com/bep) [#4598](https://github.com/gohugoio/hugo/issues/4598)
+* Move the commands related logic to its own file [a8f7fbbb](https://github.com/gohugoio/hugo/commit/a8f7fbbb10aa78f3ebac008d29d9969bb197393c) [@bep](https://github.com/bep) [#4598](https://github.com/gohugoio/hugo/issues/4598)
+* Add CLI tests [e8d6ca95](https://github.com/gohugoio/hugo/commit/e8d6ca9531d19e4e898c57d77d2fd627ea38ade0) [@bep](https://github.com/bep) [#4598](https://github.com/gohugoio/hugo/issues/4598)
+* Make the hugo command non-global [4d32f2fa](https://github.com/gohugoio/hugo/commit/4d32f2fa8969f368b088dc9bcedb45f2c986cb27) [@bep](https://github.com/bep) [#4598](https://github.com/gohugoio/hugo/issues/4598)
+* Extract some common types into its own file [018602c4](https://github.com/gohugoio/hugo/commit/018602c46db8d729af2871bd5f4c1e7480420f09) [@bep](https://github.com/bep) [#4598](https://github.com/gohugoio/hugo/issues/4598)
+* Make the server command non-global [2f0d98a1](https://github.com/gohugoio/hugo/commit/2f0d98a19b021d03930003217b0519afaef3a391) [@bep](https://github.com/bep) [#4598](https://github.com/gohugoio/hugo/issues/4598)
+* Make the gen commands non-global [e0621d20](https://github.com/gohugoio/hugo/commit/e0621d207ce3278a82f8a60607e9cdd304149029) [@bep](https://github.com/bep) [#4598](https://github.com/gohugoio/hugo/issues/4598)
+* Make the list commands non-global [e26a8b24](https://github.com/gohugoio/hugo/commit/e26a8b242a6434117d089a0799238add7025dbf4) [@bep](https://github.com/bep) [#4598](https://github.com/gohugoio/hugo/issues/4598)
+* Make the import commands non-global [2a2c9838](https://github.com/gohugoio/hugo/commit/2a2c9838671b5401331d20f8c72e2b934fe34e8d) [@bep](https://github.com/bep) [#4598](https://github.com/gohugoio/hugo/issues/4598)
+* Make the config command non-global [15b1e269](https://github.com/gohugoio/hugo/commit/15b1e269ade91ddc6a74c552bc61b0c5e527d268) [@bep](https://github.com/bep) [#4598](https://github.com/gohugoio/hugo/issues/4598)
+* Make the new commands non-global [56a13080](https://github.com/gohugoio/hugo/commit/56a13080446283ed1cde6b69fc6f4fac85076c84) [@bep](https://github.com/bep) [#4598](https://github.com/gohugoio/hugo/issues/4598)
+* Make convert command non-global [4b780ca7](https://github.com/gohugoio/hugo/commit/4b780ca778ee7f25af808da38ede964a01698c70) [@bep](https://github.com/bep) [#4598](https://github.com/gohugoio/hugo/issues/4598)
+* Make more commands non-global [7bc5e89f](https://github.com/gohugoio/hugo/commit/7bc5e89fbaa5c613b8853ff7b69fae570bd0b56d) [@bep](https://github.com/bep) [#4598](https://github.com/gohugoio/hugo/issues/4598)
+* Make benchmark non-global [fdf1d94e](https://github.com/gohugoio/hugo/commit/fdf1d94ebc7d1aa4855c62237f2edbd4bdade1a7) [@bep](https://github.com/bep) [#4598](https://github.com/gohugoio/hugo/issues/4598)
+* Start of flag cleaning [1157fef8](https://github.com/gohugoio/hugo/commit/1157fef85908ea54883fe0dba6adc4861ba02162) [@bep](https://github.com/bep) [#4598](https://github.com/gohugoio/hugo/issues/4598)
+* Use short date format in CLI docs [e614d8a5](https://github.com/gohugoio/hugo/commit/e614d8a57c2ff5eef9270d51fcc6518398d7ff88) [@bep](https://github.com/bep) [#4598](https://github.com/gohugoio/hugo/issues/4598)
+* Update README.md [fca49d6c](https://github.com/gohugoio/hugo/commit/fca49d6c608d227049cb2f26895cfecc685f1c89) [@thedodobird2](https://github.com/thedodobird2)
+* Sync dependencies [0e8b3cbc](https://github.com/gohugoio/hugo/commit/0e8b3cbcd274e1f2e14be694c794a544f49efb56) [@bep](https://github.com/bep)
+* Bump Go versions [230f2b8c](https://github.com/gohugoio/hugo/commit/230f2b8c4fce03f14847de2b22402e64d4d69783) [@bep](https://github.com/bep) [#4545](https://github.com/gohugoio/hugo/issues/4545)
+* Add bash completion [874159b5](https://github.com/gohugoio/hugo/commit/874159b5436bc9080aec71a9c26d35f8f62c9fd0) [@anthonyfok](https://github.com/anthonyfok)
+* Handle mass content etc. edits in server mode [730b66b6](https://github.com/gohugoio/hugo/commit/730b66b6520f263af16f555d1d7be51205a8e51d) [@bep](https://github.com/bep) [#4563](https://github.com/gohugoio/hugo/issues/4563)
+
+## Fixes
+
+* Fix `livereload` of bundled pages [f3775877](https://github.com/gohugoio/hugo/commit/f3775877c61c11ab7c8fd1fc3e15470bf5da4820) [@bep](https://github.com/bep) [#4607](https://github.com/gohugoio/hugo/issues/4607)
+* Do not reset `.Page.Scratch` on rebuilds [61d52f14](https://github.com/gohugoio/hugo/commit/61d52f146297950e283ae086d8b1af61099d22a0) [@bep](https://github.com/bep) [#4627](https://github.com/gohugoio/hugo/issues/4627)
+* Fix failing Travis server test [9c782d51](https://github.com/gohugoio/hugo/commit/9c782d5147bfea0dd85cf3374f598f0176f204eb) [@bep](https://github.com/bep)
+* Fix the config command [f396cffa](https://github.com/gohugoio/hugo/commit/f396cffa239e948075af2224208671956d8b4a84) [@bep](https://github.com/bep) [#4598](https://github.com/gohugoio/hugo/issues/4598)
+* Fix some flag diff [24d5c219](https://github.com/gohugoio/hugo/commit/24d5c219424a9777bb1dd366b43e68e6f47e1adb) [@bep](https://github.com/bep) [#4598](https://github.com/gohugoio/hugo/issues/4598)
+* Fix TestFixURL [1e233b1c](https://github.com/gohugoio/hugo/commit/1e233b1c4598fd8cbce7da8a67bf2c4918c6047e) [@bep](https://github.com/bep) [#4598](https://github.com/gohugoio/hugo/issues/4598)
+* Disable shallow clone to fix TestPageWithLastmodFromGitInfo [094ec171](https://github.com/gohugoio/hugo/commit/094ec171420e659cdf962a19dd90105912ce9901) [@anthonyfok](https://github.com/anthonyfok) [#4584](https://github.com/gohugoio/hugo/issues/4584)
+* Fix livereload for the home page bundle [f87239e4](https://github.com/gohugoio/hugo/commit/f87239e4cab958bf59ecfb1beb8cac439441a553) [@bep](https://github.com/bep) [#4576](https://github.com/gohugoio/hugo/issues/4576)
+* Fix empty `BuildDate` in "hugo version" [294c0f80](https://github.com/gohugoio/hugo/commit/294c0f8001fe598278c1eb8015deb6b98e8de686) [@anthonyfok](https://github.com/anthonyfok)
+* Fix some livereload content regressions [a4deaeff](https://github.com/gohugoio/hugo/commit/a4deaeff0cfd70abfbefa6d40c0b86839a216f6d) [@bep](https://github.com/bep) [#4566](https://github.com/gohugoio/hugo/issues/4566)
+* Fix two tests that are broken on Windows [26f34fd5](https://github.com/gohugoio/hugo/commit/26f34fd59da1ce1885d4f2909c5d9ef9c1726944) [@neurocline](https://github.com/neurocline)
diff --git a/docs/content/en/news/0.40-relnotes/featured-hugo-40-poster.png b/docs/content/en/news/0.40-relnotes/featured-hugo-40-poster.png
new file mode 100644
index 000000000..9a7f36d1f
--- /dev/null
+++ b/docs/content/en/news/0.40-relnotes/featured-hugo-40-poster.png
Binary files differ
diff --git a/docs/content/en/news/0.40-relnotes/index.md b/docs/content/en/news/0.40-relnotes/index.md
new file mode 100644
index 000000000..9a45c1c09
--- /dev/null
+++ b/docs/content/en/news/0.40-relnotes/index.md
@@ -0,0 +1,76 @@
+
+---
+date: 2018-04-23
+title: "Hugo 0.40: The Revival of the Shortcodes"
+description: "Hugo 0.40: Shortcodes with `.Content` (almost) always available, processed in order of appearance, several new template funcs …"
+categories: ["Releases"]
+---
+
+Hugo `0.40` is **The Revival of the Shortcodes**. Shortcodes is one of the prime features in Hugo. Really useful, but it has had some known shortcomings. [@bep](https://github.com/bep) has been really busy the last week to address those.
+
+In summary:
+
+* `.Content` for a page retrieved in a query in a shortcode is now _almost_ always available. Note that shortcodes can include content that can include shortcodes that can include content... It is possible to bite your tail. See more below.
+* Shortcodes are now processed and rendered in their order of appearance.
+* Related to the above, we have now added a zero-based `.Ordinal` to the shortcode.
+
+
+The first bullet above resolves some surprising behaviour when reading other pages' content from shortcodes. Before this release, that behaviour was undefined. Note that this has never been an issue from regular templates.
+
+It will still not be possible to get **the current shortcode's page's rendered content**. That would have impressed Einstein.
+
+The new and well defined rules are:
+
+* `.Page.Content` from a shortcode will be empty. The related `.Page.Truncated` `.Page.Summary`, `.Page.WordCount`, `.Page.ReadingTime`, `.Page.Plain` and `.Page.PlainWords` will also have empty values.
+* For _other pages_ (retrieved via `.Page.Site.GetPage`, `.Site.Pages` etc.) the `.Content` is there to use as you please as long as you don't have infinite content recursion in your shortcode/content setup. See below.
+* `.Page.TableOfContents` is good to go (but does not support shortcodes in headlines; this is unchanged)
+
+If you get into a situation of infinite recursion, the `.Content` will be empty. Run `hugo -v` for more information.
+
+This release represents **19 contributions by 3 contributors** to the main Hugo code base.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **13 contributions by 6 contributors**. A special thanks to [@kaushalmodi](https://github.com/kaushalmodi), [@anthonyfok](https://github.com/anthonyfok), [@bep](https://github.com/bep), and [@regisphilibert](https://github.com/regisphilibert) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 25071+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 446+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 222+ [themes](http://themes.gohugo.io/)
+
+## Notes
+
+* We have added a `timeout` configuration setting. This is currently only used to time out the `.Content` creation, to bail out of recursive recursions. Run `hugo -v` to see potential warnings about this. The `timeout` is set default to `10000` (10 seconds).
+
+## Enhancements
+
+### Templates
+
+* Add `path.Ext`, `path.Dir` and `path.Base` [47e7788b](https://github.com/gohugoio/hugo/commit/47e7788b3c30de6fb895522096baf2c13598c317) [@bep](https://github.com/bep)
+* Make `fileExist` use the same filesystem as `readFile` [51af1d2e](https://github.com/gohugoio/hugo/commit/51af1d2eadcad89e8c2906c05549352ef69ab016) [@bep](https://github.com/bep) [#4633](https://github.com/gohugoio/hugo/issues/4633)
+
+### Other
+
+* Add `.Page.BundleType` [402f6788](https://github.com/gohugoio/hugo/commit/402f6788ee955ad2aace84e8fba1625db7b356d9) [@bep](https://github.com/bep) [#4662](https://github.com/gohugoio/hugo/issues/4662)
+* Add zero-based `Ordinal` to shortcode [3decf4a3](https://github.com/gohugoio/hugo/commit/3decf4a327157e98d3da3502b6d777de63437c39) [@bep](https://github.com/bep) [#3359](https://github.com/gohugoio/hugo/issues/3359)
+* Process and render shortcodes in their order of appearance [85535084](https://github.com/gohugoio/hugo/commit/85535084dea4d3e3adf1ebd08ae57b39d76e1904) [@bep](https://github.com/bep) [#3359](https://github.com/gohugoio/hugo/issues/3359)
+* Init the content and shortcodes early [19084eaf](https://github.com/gohugoio/hugo/commit/19084eaf74246feac61d618c55031369520dfa8e) [@bep](https://github.com/bep) [#4632](https://github.com/gohugoio/hugo/issues/4632)
+* Prepare child page resources before the page itself [3238e14f](https://github.com/gohugoio/hugo/commit/3238e14fdfeedf189a5af122e20bff040ac059bd) [@bep](https://github.com/bep) [#4632](https://github.com/gohugoio/hugo/issues/4632)
+* Make .Content (almost) always available in shortcodes [4d26ab33](https://github.com/gohugoio/hugo/commit/4d26ab33dcef704086f43828d1dfb4b8beae2593) [@bep](https://github.com/bep) [#4632](https://github.com/gohugoio/hugo/issues/4632)[#4653](https://github.com/gohugoio/hugo/issues/4653)[#4655](https://github.com/gohugoio/hugo/issues/4655)
+* Add language merge support for Pages in resource.Resources [47c05c47](https://github.com/gohugoio/hugo/commit/47c05c47e0b663632a649ee5d256acc1a32fe9e4) [@bep](https://github.com/bep) [#4644](https://github.com/gohugoio/hugo/issues/4644)
+* Improve .Content vs shortcodes [e590cc26](https://github.com/gohugoio/hugo/commit/e590cc26eb1363a4b84603f051b20bd43fd1f7bd) [@bep](https://github.com/bep) [#4632](https://github.com/gohugoio/hugo/issues/4632)
+* Improve .Get docs [74520d2c](https://github.com/gohugoio/hugo/commit/74520d2cfd39bb4428182e26c57afa9df83ce7b5) [@paulcmal](https://github.com/paulcmal)
+* Update missing positional parameter test for .Get [e2b277bb](https://github.com/gohugoio/hugo/commit/e2b277bba5935c0686cb83f132eae021ef2dc5e1) [@paulcmal](https://github.com/paulcmal)
+* Improve error message in metadata parse [d681ea55](https://github.com/gohugoio/hugo/commit/d681ea55a0a59b7096dacd194ee0cb8fe15b0757) [@bep](https://github.com/bep) [#3696](https://github.com/gohugoio/hugo/issues/3696)
+* Add some context to front matter parse error [159bed34](https://github.com/gohugoio/hugo/commit/159bed34c3a850d58d08a36ddc40372ed96af2db) [@bep](https://github.com/bep) [#4638](https://github.com/gohugoio/hugo/issues/4638)
+* Updated GetCSV error message (#4636) [5cc944ff](https://github.com/gohugoio/hugo/commit/5cc944ffd77289ab0b8efd69d628fb11d1280993) [@CubeLuke](https://github.com/CubeLuke)
+* .Get doesn't crash on missing positional param fixes #4619 [236f0c84](https://github.com/gohugoio/hugo/commit/236f0c840b45e0c41fcbb2fb6ee556c0fb2d4859) [@paulcmal](https://github.com/paulcmal)
+* fix syntax signature [cd6a2612](https://github.com/gohugoio/hugo/commit/cd6a261242b63555ac2c3ca7a8462b874b490701) [@paulcmal](https://github.com/paulcmal)
+
+
+
+
+
+
+
diff --git a/docs/content/en/news/0.40.1-relnotes/index.md b/docs/content/en/news/0.40.1-relnotes/index.md
new file mode 100644
index 000000000..3352f164b
--- /dev/null
+++ b/docs/content/en/news/0.40.1-relnotes/index.md
@@ -0,0 +1,19 @@
+
+---
+date: 2018-04-25
+title: "Hugo 0.40.1: One Bug Fix"
+description: "Fixes some shortcode vs .Content corner cases."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This release fixes some shortcode vs `.Content` corner cases introduced in Hugo `0.40` [288c3964](https://github.com/gohugoio/hugo/commit/288c39643906b4194a0a6acfbaf87cb0fbdeb361) [@bep](https://github.com/bep) [#4632](https://github.com/gohugoio/hugo/issues/4632)[#4664](https://github.com/gohugoio/hugo/issues/4664).
+
+
+
+
+
diff --git a/docs/content/en/news/0.40.2-relnotes/index.md b/docs/content/en/news/0.40.2-relnotes/index.md
new file mode 100644
index 000000000..50b9c3842
--- /dev/null
+++ b/docs/content/en/news/0.40.2-relnotes/index.md
@@ -0,0 +1,20 @@
+
+---
+date: 2018-04-30
+title: "Hugo 0.40.2: Two Bug fixes"
+description: "Fixes some regressions introduced in 0.40."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+This release fixes some regressions introduced in Hugo `0.40`. See the [milestone](https://github.com/gohugoio/hugo/milestone/62?closed=1) for an issue list.
+
+* Reset .Page.Scratch on live-reload [655983a2](https://github.com/gohugoio/hugo/commit/655983a22dc35b2ee5119dcc4acb9918498d2d68) [@bep](https://github.com/bep) [#4683](https://github.com/gohugoio/hugo/issues/4683)
+* Fix .WordCount, .FuzzyWordCount, .ReadingTime when summary marker is set [001a28c2](https://github.com/gohugoio/hugo/commit/001a28c2f9ed121b33df18fe792859ab378784c6) [@bep](https://github.com/bep) [#4675](https://github.com/gohugoio/hugo/issues/4675)[#4682](https://github.com/gohugoio/hugo/issues/4682)
+
+
+
+
+
diff --git a/docs/content/en/news/0.40.3-relnotes/index.md b/docs/content/en/news/0.40.3-relnotes/index.md
new file mode 100644
index 000000000..6f822809d
--- /dev/null
+++ b/docs/content/en/news/0.40.3-relnotes/index.md
@@ -0,0 +1,12 @@
+
+---
+date: 2018-05-09
+title: "Hugo 0.40.3: One Bug Fix"
+description: "Fixes a rare, but possible Content truncation issue."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+ Hugo `0.40.3` fixes a possible `.Content` truncation issue introduced in `0.40.1` [90d0d830](https://github.com/gohugoio/hugo/commit/90d0d83097a20a3f521ffc1f5a54a2fbfaf14ce2) [@bep](https://github.com/bep) [#4706](https://github.com/gohugoio/hugo/issues/4706). This should be very rare. It has been reported by only one user on a synthetic site. We have tested a number of big sites that does not show this problem with `0.40.2`, but this is serious enough to warrant a patch release.
diff --git a/docs/content/en/news/0.41-relnotes/featured-hugo-41-poster.png b/docs/content/en/news/0.41-relnotes/featured-hugo-41-poster.png
new file mode 100644
index 000000000..8f752f665
--- /dev/null
+++ b/docs/content/en/news/0.41-relnotes/featured-hugo-41-poster.png
Binary files differ
diff --git a/docs/content/en/news/0.41-relnotes/index.md b/docs/content/en/news/0.41-relnotes/index.md
new file mode 100644
index 000000000..411e373e5
--- /dev/null
+++ b/docs/content/en/news/0.41-relnotes/index.md
@@ -0,0 +1,64 @@
+
+---
+date: 2018-05-25
+title: "Hugo 0.41: Privacy Configuration for GDPR"
+description: "Hugo 0.41 adds a new site configuration section to meet the new General Data Protection Regulation (GDPR)."
+categories: ["Releases"]
+---
+
+
+In Hugo `0.41` we add a new **Privacy Configuration** section to meet the new regulations in the new **General Data Protection Regulation ([GDPR](https://en.wikipedia.org/wiki/General_Data_Protection_Regulation))**. Many have contributed work on this project, but a special thanks to [@onedrawingperday](https://github.com/onedrawingperday), [@jhabdas](https://github.com/jhabdas), and [@it-gro](https://github.com/it-gro).
+
+> You can read more about the new Privacy Config [here](https://gohugo.io/about/hugo-and-gdpr/).
+
+
+Hugo now has:
+
+* 25917+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 446+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 231+ [themes](http://themes.gohugo.io/)
+
+## Notes
+
+* We have fixed an issue where we sent the wrong `.Site` object into the archetype templates used in `hugo new`. This meant that if you wanted to access site params and some other fields you needed to use `.Site.Info.Params` etc. This release fixes that so now you can use the same construct in the archetype templates as in the regular templates.
+
+## Enhancements
+
+* Alias tweet shortode to twitter [3bfe8f4b](https://github.com/gohugoio/hugo/commit/3bfe8f4be653f44674293685cb5750d90668b2f6) [@bep](https://github.com/bep) [#4765](https://github.com/gohugoio/hugo/issues/4765)
+* Adjust GA templates [f45b522e](https://github.com/gohugoio/hugo/commit/f45b522ebffafc61a3cb9b694bc3542747c73e07) [@bep](https://github.com/bep) [#4616](https://github.com/gohugoio/hugo/issues/4616)
+* Wrap the relevant templates with the privacy policy disable check [67892073](https://github.com/gohugoio/hugo/commit/6789207347fc2df186741644a6fe968d41ea9077) [@bep](https://github.com/bep) [#4616](https://github.com/gohugoio/hugo/issues/4616)
+* Extract internal templates [34ad9a4f](https://github.com/gohugoio/hugo/commit/34ad9a4f178fcf50abe7246ad9d30b294327da16) [@bep](https://github.com/bep) [#4457](https://github.com/gohugoio/hugo/issues/4457)
+* Use double quotes instead of back quotes [b2b500f5](https://github.com/gohugoio/hugo/commit/b2b500f563c3bb36751a4c1610df113c4daad604) [@anthonyfok](https://github.com/anthonyfok)
+* Provide the correct .Site object to archetype templates [ab02594e](https://github.com/gohugoio/hugo/commit/ab02594e09c0414124186e42d67d52d474dd341a) [@bep](https://github.com/bep) [#4732](https://github.com/gohugoio/hugo/issues/4732)
+* Document the GDPR Privacy Config [c71f201f](https://github.com/gohugoio/hugo/commit/c71f201fd93287afa7cb7b875bd523c25e48400c) [@bep](https://github.com/bep) [#4751](https://github.com/gohugoio/hugo/issues/4751)
+* Add no-cookie variants of the Google Analytics templates [a51945ea] (https://github.com/gohugoio/hugo/commit/a51945ea4b99d17501d73cf3367926683e4a4dfd) [@bep](https://github.com/bep) [#4775](https://github.com/gohugoio/hugo/issues/4775)
+* Remove youtube_simple for now [448081b8](https://github.com/gohugoio/hugo/commit/448081b840db4a23c0c49c2d869ac207dcb6ac40) [@bep](https://github.com/bep) [#4751](https://github.com/gohugoio/hugo/issues/4751)
+* Add anonymizeIP to GA privacy config [1f1d955b](https://github.com/gohugoio/hugo/commit/1f1d955b56471e41d5288c57f1ef8333dc297120) [@bep](https://github.com/bep) [#4751](https://github.com/gohugoio/hugo/issues/4751)
+* Support DNT in Twitter shortcode for GDPR [9753cb59](https://github.com/gohugoio/hugo/commit/9753cb59f1f1d866943a485dd7c917d1b68f6eda) [@bep](https://github.com/bep) [#4765](https://github.com/gohugoio/hugo/issues/4765)
+* Regenerate embedded templates [6aa2c385](https://github.com/gohugoio/hugo/commit/6aa2c38507aa1c2246222684717b4d69d26b03d7) [@bep](https://github.com/bep) [#4761](https://github.com/gohugoio/hugo/issues/4761)
+* Add instagram_simple shortcode [9ad46a20](https://github.com/gohugoio/hugo/commit/9ad46a20357a7e28b405feef5c8f7d4501186da6) [@bep](https://github.com/bep) [#4748](https://github.com/gohugoio/hugo/issues/4748)
+* Go fmt [4256de33](https://github.com/gohugoio/hugo/commit/4256de3392d320a5a47fcab49882f2a3249c2163) [@bep](https://github.com/bep)
+* Remove the id from youtube_simple [bed7a0fa](https://github.com/gohugoio/hugo/commit/bed7a0faff90bbe389629347026853b7bc4c8c3f) [@bep](https://github.com/bep) [#4751](https://github.com/gohugoio/hugo/issues/4751)
+* Add an unified .Site.Config with a services section [4ddcf52c](https://github.com/gohugoio/hugo/commit/4ddcf52ccc7af3e23109ebaac1f0486087a212ba) [@bep](https://github.com/bep) [#4751](https://github.com/gohugoio/hugo/issues/4751)
+* Move the privacy config into a parent [353148c2](https://github.com/gohugoio/hugo/commit/353148c2bc2cdb9f2eb8ee967ba756ce09323801) [@bep](https://github.com/bep) [#4751](https://github.com/gohugoio/hugo/issues/4751)
+* Make the simple mode YouTube links schemaless [69ee6b41](https://github.com/gohugoio/hugo/commit/69ee6b41e36625595e2bcabcde0bc58663e5b93c) [@bep](https://github.com/bep) [#4616](https://github.com/gohugoio/hugo/issues/4616)
+* Add YouTube shortcode simple mode [88e35686](https://github.com/gohugoio/hugo/commit/88e356868062cc618385cd22b6730df2459518cd) [@bep](https://github.com/bep) [#4616](https://github.com/gohugoio/hugo/issues/4616)
+* Do not return error on .Get "class" and vice versa in shortcodes [2f17f937](https://github.com/gohugoio/hugo/commit/2f17f9378ad96c4a9f6d7d24b0776ed3a25a08a3) [@bep](https://github.com/bep) [#4745](https://github.com/gohugoio/hugo/issues/4745)
+* Create SUPPORT.md [0a7027e2](https://github.com/gohugoio/hugo/commit/0a7027e2a87283743d5310b74e18666e4a64d3e1) [@coliff](https://github.com/coliff)
+* Add PrivacyEnhanced mode for YouTube to the GDPR Policy [5f24a2c0](https://github.com/gohugoio/hugo/commit/5f24a2c047db0bff8c9e267bfa8ef8e43e6bd24e) [@bep](https://github.com/bep) [#4616](https://github.com/gohugoio/hugo/issues/4616)
+* Add RespectDoNotTrack to GDPR privacy policy for Google Analytics [71014201](https://github.com/gohugoio/hugo/commit/710142016b140538bfc11e48bb32d26fa685b2ad) [@bep](https://github.com/bep) [#4616](https://github.com/gohugoio/hugo/issues/4616)
+* Add the foundation for GDPR privacy configuration [0bbdef98](https://github.com/gohugoio/hugo/commit/0bbdef986d8eecf4fabe9a372e33626dbdfeb36b) [@bep](https://github.com/bep) [#4616](https://github.com/gohugoio/hugo/issues/4616)
+* Show site build warning in TestPageBundlerSiteRegular [9bd4236e](https://github.com/gohugoio/hugo/commit/9bd4236e1b3bee332439eef50e12d4481340c3eb) [@anthonyfok](https://github.com/anthonyfok) [#4672](https://github.com/gohugoio/hugo/issues/4672)
+* Do not show empty BuildDate in version [4eedb377](https://github.com/gohugoio/hugo/commit/4eedb377b60fb6742c97398942a0045ff2a824c4) [@anthonyfok](https://github.com/anthonyfok)
+* Improve markup determination logic [2fb9af59](https://github.com/gohugoio/hugo/commit/2fb9af59c14b1732ba1a2f21794e2cf8dfca0604) [@vassudanagunta](https://github.com/vassudanagunta)
+* Update CONTRIBUTING.md [b6ededf0](https://github.com/gohugoio/hugo/commit/b6ededf0591a81667754f1dccef2c6fe6d342811) [@domdomegg](https://github.com/domdomegg)
+
+## Fixes
+
+* Avoid ANSI character output on Windows [568b4335](https://github.com/gohugoio/hugo/commit/568b4335c20effb46168bd639317a3420f563463) [@LorenzCK](https://github.com/LorenzCK) [#4462](https://github.com/gohugoio/hugo/issues/4462)
+
+
+
+
+
+
diff --git a/docs/content/en/news/0.42-relnotes/featured-hugo-42-poster.png b/docs/content/en/news/0.42-relnotes/featured-hugo-42-poster.png
new file mode 100644
index 000000000..1f1cab1f1
--- /dev/null
+++ b/docs/content/en/news/0.42-relnotes/featured-hugo-42-poster.png
Binary files differ
diff --git a/docs/content/en/news/0.42-relnotes/index.md b/docs/content/en/news/0.42-relnotes/index.md
new file mode 100644
index 000000000..9356eb675
--- /dev/null
+++ b/docs/content/en/news/0.42-relnotes/index.md
@@ -0,0 +1,66 @@
+
+---
+date: 2018-06-12
+title: "Hugo 0.42: Theme Composition and Inheritance!"
+description: "Hugo 0.42 adds Theme Components support, a new and powerful way of composing your Hugo sites."
+categories: ["Releases"]
+---
+
+ Hugo `0.42` adds **Theme Components**. This is a really powerful new way of building your Hugo sites with reusable components. This is both **Theme Composition** and **Theme Inheritance**.
+
+>Read more about Theme Components in the [Hugo Documentation](https://gohugo.io/hugo-modules/theme-components/).
+
+The feature above was implemented by [@bep](https://github.com/bep), the funny Norwegian, with great design help from the Hugo community. But that implementation would not have been possible without [Afero](https://github.com/spf13/afero), [Steve Francia's](https://github.com/spf13) virtual file system. Hugo is built on top of Afero and many other fast and solid Go projects, and if you look at the combined contribution log of the Hugo project and its many open source dependencies, the total amount of contributions is staggering. A big thank you to them all!
+
+This release represents **27 contributions by 7 contributors** to the main Hugo code base. [@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@onedrawingperday](https://github.com/onedrawingperday), [@anthonyfok](https://github.com/anthonyfok), and [@stefanneuhaus](https://github.com/stefanneuhaus) for their ongoing contributions.
+
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the themes site in pristine condition and to [@kaushalmodi](https://github.com/kaushalmodi) for his great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **8 contributions by 5 contributors**. A special thanks to [@bep](https://github.com/bep), [@LorenzCK](https://github.com/LorenzCK), [@gavinwray](https://github.com/gavinwray), and [@deyton](https://github.com/deyton) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 26286+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 444+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 235+ [themes](http://themes.gohugo.io/)
+
+## Notes
+* The `speakerdeck` shortcode is removed. It didn't work properly, so is isn't expected to be in wide use. If you use it, you will get a build error. You will either have to remove its usage or add a `speakerdeck` shortcode to your own project or theme.
+* We have now virtualized the filesystems for project and theme files. This makes everything simpler, faster and more powerful. But it also means that template lookups on the form `{{ template “theme/partials/pagination.html” . }}` will not work anymore. That syntax has never been documented, so it's not expected to be in wide use. `{{ partial "pagination.html" . }}` will give you the most specific version of that partial.
+
+## Enhancements
+
+
+* Always load GA script over HTTPS [2e6712e2](https://github.com/gohugoio/hugo/commit/2e6712e2814f333caa807888c1d8a9a5a3c03709) [@coliff](https://github.com/coliff)
+* Remove speakerdeck shortcode [65deb72d](https://github.com/gohugoio/hugo/commit/65deb72dc4c9299416cf2d9defddb96dba4101fd) [@onedrawingperday](https://github.com/onedrawingperday) [#4830](https://github.com/gohugoio/hugo/issues/4830)
+* Add `strings.RuneCount` [019bd557](https://github.com/gohugoio/hugo/commit/019bd5576be87c9f06b6a928ede1a5e78677f7b3) [@theory](https://github.com/theory)
+* Add `strings.Repeat` [13435a6f](https://github.com/gohugoio/hugo/commit/13435a6f608306c5094fdcd72a1d9538727f91b2) [@theory](https://github.com/theory)
+* Reset Page's main output on server rebuilds [dc4226a8](https://github.com/gohugoio/hugo/commit/dc4226a8b27e03e31068fc945daab885d3819d04) [@bep](https://github.com/bep) [#4819](https://github.com/gohugoio/hugo/issues/4819)
+* Create LICENSE rather than LICENSE.md in "new theme" [ed4a345e](https://github.com/gohugoio/hugo/commit/ed4a345efeaa19eef2c1c6360d22f75c24abc31a) [@anthonyfok](https://github.com/anthonyfok) [#4623](https://github.com/gohugoio/hugo/issues/4623)
+* Create `_default/baseof.html` in "new theme" [9717ac7d](https://github.com/gohugoio/hugo/commit/9717ac7dce84d004afde4edb32ad81319c7dd8a7) [@anthonyfok](https://github.com/anthonyfok) [#3576](https://github.com/gohugoio/hugo/issues/3576)
+* Add `tweet_simple`shortcode [07b96d16](https://github.com/gohugoio/hugo/commit/07b96d16e8679c40e289c9076ef4414ed6eb7f81) [@onedrawingperday](https://github.com/onedrawingperday)
+* Make "new theme" feedback more intuitive [692ec008](https://github.com/gohugoio/hugo/commit/692ec008726b570c9b30ac3391774cbb622730cb) [@anthonyfok](https://github.com/anthonyfok)
+* Move nextStepsText() to new_site.go [d3dd74fd](https://github.com/gohugoio/hugo/commit/d3dd74fd655c22f21e91e38edb1d377a1357e3be) [@anthonyfok](https://github.com/anthonyfok)
+* Add support for theme composition and inheritance [80230f26](https://github.com/gohugoio/hugo/commit/80230f26a3020ff33bac2bef01b2c0e314b89f86) [@bep](https://github.com/bep) [#4460](https://github.com/gohugoio/hugo/issues/4460)[#4450](https://github.com/gohugoio/hugo/issues/4450)
+* Add vimeo_simple [8de53244](https://github.com/gohugoio/hugo/commit/8de53244799f0d2d0343056d348d810343cf7aa5) [@onedrawingperday](https://github.com/onedrawingperday) [#4749](https://github.com/gohugoio/hugo/issues/4749)
+* Add a BlackFriday option for rel="noreferrer" on external links [20cbc2c7](https://github.com/gohugoio/hugo/commit/20cbc2c7856a9b07d45648d940276374db35e425) [@stefanneuhaus](https://github.com/stefanneuhaus) [#4722](https://github.com/gohugoio/hugo/issues/4722)
+* Add a BlackFriday option for rel="nofollow" on external links [7a619264](https://github.com/gohugoio/hugo/commit/7a6192647a4b383cd539df2063388ea380371de6) [@stefanneuhaus](https://github.com/stefanneuhaus) [#4722](https://github.com/gohugoio/hugo/issues/4722)
+* Update Chroma [b5b36e32](https://github.com/gohugoio/hugo/commit/b5b36e32008bc8ea779ae06bf249b537f6d5c336) [@bep](https://github.com/bep) [#4779](https://github.com/gohugoio/hugo/issues/4779)
+* Enhance Page and Resource String() [4f0665f4](https://github.com/gohugoio/hugo/commit/4f0665f476e06e9707621c18f7422fdeb776e0d1) [@vassudanagunta](https://github.com/vassudanagunta)
+* Update theme documentation [c74b0f8f](https://github.com/gohugoio/hugo/commit/c74b0f8f9b30866e09efac8235cc5e0093ab3d50) [@bep](https://github.com/bep) [#4460](https://github.com/gohugoio/hugo/issues/4460)
+
+## Fixes
+
+* Make sure that `.Site.Taxonomies` is always set on rebuilds [6464981a](https://github.com/gohugoio/hugo/commit/6464981adb4d7d0f41e8e2c987342082982210a1) [@bep](https://github.com/bep) [#4838](https://github.com/gohugoio/hugo/issues/4838)
+* Reset the "distinct error logger" on rebuilds [bf5f10fa](https://github.com/gohugoio/hugo/commit/bf5f10faa9fd445c4dd21839aa7d73cd2acbfb85) [@bep](https://github.com/bep) [#4818](https://github.com/gohugoio/hugo/issues/4818)
+* Remove frameborder attr YT iframe + CSS fixes [ceaff7ca](https://github.com/gohugoio/hugo/commit/ceaff7cafc5357274e546984ae02a4cbdf305f81) [@onedrawingperday](https://github.com/onedrawingperday)
+* Fix vimeo_simple thumb scaling [b84389c5](https://github.com/gohugoio/hugo/commit/b84389c5e0e1ef15449b24d488bbbcbc41245c59) [@onedrawingperday](https://github.com/onedrawingperday)
+* Fix typo instagram_simple [d68367cb](https://github.com/gohugoio/hugo/commit/d68367cbe76cbc02adb5b778e8be98bed6319368) [@onedrawingperday](https://github.com/onedrawingperday)
+* Prevent isBaseTemplate() from matching "baseof" in dir [c3115292](https://github.com/gohugoio/hugo/commit/c3115292a7f2d2623cb45054a361e997ad9330c9) [@anthonyfok](https://github.com/anthonyfok) [#4809](https://github.com/gohugoio/hugo/issues/4809)
+
+
+
+
+
diff --git a/docs/content/en/news/0.42.1-relnotes/index.md b/docs/content/en/news/0.42.1-relnotes/index.md
new file mode 100644
index 000000000..6b5b3c775
--- /dev/null
+++ b/docs/content/en/news/0.42.1-relnotes/index.md
@@ -0,0 +1,18 @@
+
+---
+date: 2018-06-13
+title: "Hugo 0.42.1: Two Bug Fixes"
+description: "Hugo 0.42.1 fixes two issues."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with two fixes:
+
+* Reset the global pages cache on server rebuilds [128f14ef](https://github.com/gohugoio/hugo/commit/128f14efad90886ffef37c01ac1e20436a732f97) [@bep](https://github.com/bep) [#4845](https://github.com/gohugoio/hugo/issues/4845)
+* Do not fail server build when /static is missing [34ee27a7](https://github.com/gohugoio/hugo/commit/34ee27a78b9e2b5f475d44253ae234067b76cc6e) [@bep](https://github.com/bep) [#4846](https://github.com/gohugoio/hugo/issues/4846)
+
diff --git a/docs/content/en/news/0.42.2-relnotes/index.md b/docs/content/en/news/0.42.2-relnotes/index.md
new file mode 100644
index 000000000..c9bf6c469
--- /dev/null
+++ b/docs/content/en/news/0.42.2-relnotes/index.md
@@ -0,0 +1,18 @@
+
+---
+date: 2018-06-28
+title: "Hugo 0.42.2: One Bug Fix"
+description: "Hugo 0.42.2 fixes server reload on config changes."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+ This release fixes broken server-reload on config changes. This is a regression from Hugo `0.42`. [3a7706b0](https://github.com/gohugoio/hugo/commit/3a7706b069107e5fa6112b3f7ce006f16867cb38) [@bep](https://github.com/bep) [#4878](https://github.com/gohugoio/hugo/issues/4878)
+
+
+
+
+
diff --git a/docs/content/en/news/0.43-relnotes/featured-hugo-43-poster.png b/docs/content/en/news/0.43-relnotes/featured-hugo-43-poster.png
new file mode 100644
index 000000000..b221ca7f1
--- /dev/null
+++ b/docs/content/en/news/0.43-relnotes/featured-hugo-43-poster.png
Binary files differ
diff --git a/docs/content/en/news/0.43-relnotes/index.md b/docs/content/en/news/0.43-relnotes/index.md
new file mode 100644
index 000000000..afa23329b
--- /dev/null
+++ b/docs/content/en/news/0.43-relnotes/index.md
@@ -0,0 +1,96 @@
+
+---
+date: 2018-07-09
+title: "And Now: Hugo Pipes!"
+description: "Hugo 0.43 adds a powerful and simple to use assets pipeline with SASS/SCSS and much, much more …"
+categories: ["Releases"]
+---
+
+Hugo `0.43` adds a powerful and very simple to use **Assets Pipeline** with **SASS and SCSS** with source map support, **PostCSS** and **minification** and **fingerprinting** and **Subresource Integrity** and ... much more. Oh, did we mention that you can now do **ad-hoc image processing** and execute text resources as Go templates?
+
+An example pipeline:
+
+```go-html-template
+{{ $styles := resources.Get "scss/main.scss" | toCSS | postCSS | minify | fingerprint }}
+<link rel="stylesheet" href="{{ $styles.Permalink }}" integrity="{{ $styles.Data.Integrity }}" media="screen">
+```
+
+To me, the above is beautiful in its speed and simplicity. It could be printed on a t-shirt. I wrote in the [Hugo Birthday Post](https://gohugo.io/news/lets-celebrate-hugos-5th-birthday/) some days ago about the value of a single binary with native and fast implementations. I should have added _simplicity_ as a keyword. There seem to be a misconception that all of this needs to be hard and painful.
+
+New functions to create `Resource` objects:
+
+* `resources.Get`
+* `resources.FromString`: Create a Resource from a string.
+
+New `Resource` transformation funcs:
+
+* `resources.ToCSS`: Compile `SCSS` or `SASS` into `CSS`.
+* `resources.PostCSS`: Process your CSS with PostCSS. Config file support (project or theme or passed as an option).
+* `resources.Minify`: Currently supports `css`, `js`, `json`, `html`, `svg`, `xml`.
+* `resources.Fingerprint`: Creates a fingerprinted version of the given Resource with Subresource Integrity.
+* `resources.Concat`: Concatenates a list of Resource objects. Think of this as a poor man's bundler.
+* `resources.ExecuteAsTemplate`: Parses and executes the given Resource and data context (e.g. .Site) as a Go template.
+
+
+I, [@bep](https://github.com/bep), implemented this in [dea71670](https://github.com/gohugoio/hugo/commit/dea71670c059ab4d5a42bd22503f18c087dd22d4). We will work hard to get the documentation up to date, but follow the links above for details, and also see this [demo project](https://github.com/bep/hugo-sass-test).
+
+
+This release represents **35 contributions by 7 contributors** to the main Hugo code base.
+[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@anthonyfok](https://github.com/anthonyfok), [@openscript](https://github.com/openscript), and [@caarlos0](https://github.com/caarlos0) for their ongoing contributions.
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the themes site in pristine condition and to [@kaushalmodi](https://github.com/kaushalmodi) for his great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **11 contributions by 5 contributors**. A special thanks to [@bep](https://github.com/bep), [@danrl](https://github.com/danrl), [@regisphilibert](https://github.com/regisphilibert), and [@digitalcraftsman](https://github.com/digitalcraftsman) for their work on the documentation site.
+
+Hugo now has:
+
+* 26968+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 443+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 238+ [themes](http://themes.gohugo.io/)
+
+## Notes
+
+* Replace deprecated {Get,}ByPrefix with {Get,}Match [42ed6025](https://github.com/gohugoio/hugo/commit/42ed602580a672e420e1d860384e812f4871ff67) [@anthonyfok](https://github.com/anthonyfok)
+* Hugo is now released with two binary version: One with and one without SCSS/SASS support. At the time of writing, this is only available in the binaries on the GitHub release page. Brew, Snap builds etc. will come. But note that you **only need the extended version if you want to edit SCSS**. For your CI server, or if you don't use SCSS, you will most likely want the non-extended version.
+
+## Enhancements
+
+### Templates
+
+* Return en empty slice in `after` instead of error [f8212d20](https://github.com/gohugoio/hugo/commit/f8212d20009c4b5cc6e1ec733d09531eb6525d9f) [@bep](https://github.com/bep) [#4894](https://github.com/gohugoio/hugo/issues/4894)
+* Update internal pagination template to support Bootstrap 4 [ca1e46ef](https://github.com/gohugoio/hugo/commit/ca1e46efb94e3f3d2c8482cb9434d2f38ffd2683) [@bep](https://github.com/bep) [#4881](https://github.com/gohugoio/hugo/issues/4881)
+* Support text/template/parse API change in go1.11 [9f27091e](https://github.com/gohugoio/hugo/commit/9f27091e1067875e2577c331acc60adaef5bb234) [@anthonyfok](https://github.com/anthonyfok) [#4784](https://github.com/gohugoio/hugo/issues/4784)
+
+### Core
+
+* Allow forward slash in shortcode names [de37455e](https://github.com/gohugoio/hugo/commit/de37455ec73cffd039b44e8f6c62d2884b1d6bbd) [@bep](https://github.com/bep) [#4886](https://github.com/gohugoio/hugo/issues/4886)
+* Reset the global pages cache on server rebuilds [128f14ef](https://github.com/gohugoio/hugo/commit/128f14efad90886ffef37c01ac1e20436a732f97) [@bep](https://github.com/bep) [#4845](https://github.com/gohugoio/hugo/issues/4845)
+
+### Other
+
+* Bump CircleCI image [e3df6478](https://github.com/gohugoio/hugo/commit/e3df6478f09a7a5fed96aced791fa94fd2c35d1a) [@bep](https://github.com/bep)
+* Add Goreleaser extended config [626afc98](https://github.com/gohugoio/hugo/commit/626afc98254421f5a5edc97c541b10bd81d5bbbb) [@bep](https://github.com/bep) [#4908](https://github.com/gohugoio/hugo/issues/4908)
+* Build both hugo and hugo.extended for 0.43 [e1027c58](https://github.com/gohugoio/hugo/commit/e1027c5846b48c4ad450f6cc27e2654c9e0dae39) [@anthonyfok](https://github.com/anthonyfok) [#4908](https://github.com/gohugoio/hugo/issues/4908)
+* Add temporary build script [bfc3488b](https://github.com/gohugoio/hugo/commit/bfc3488b8e8b3dc1ffc6a339ee2dac8dcbdb55a9) [@bep](https://github.com/bep)
+* Add "extended" to "hugo version" [ce84b524](https://github.com/gohugoio/hugo/commit/ce84b524f4e94299b5b66afe7ce1a9bd4a9959fc) [@anthonyfok](https://github.com/anthonyfok) [#4913](https://github.com/gohugoio/hugo/issues/4913)
+* Add a newScratch template func [2b8d907a](https://github.com/gohugoio/hugo/commit/2b8d907ab731627f4e2a30442cd729064516c8bb) [@bep](https://github.com/bep) [#4685](https://github.com/gohugoio/hugo/issues/4685)
+* Add Hugo Piper with SCSS support and much more [dea71670](https://github.com/gohugoio/hugo/commit/dea71670c059ab4d5a42bd22503f18c087dd22d4) [@bep](https://github.com/bep) [#4381](https://github.com/gohugoio/hugo/issues/4381)[#4903](https://github.com/gohugoio/hugo/issues/4903)[#4858](https://github.com/gohugoio/hugo/issues/4858)
+* Consider root and current section's content type if set in front matter [c790029e](https://github.com/gohugoio/hugo/commit/c790029e1dbb0b66af18d05764bd6045deb2e180) [@bep](https://github.com/bep) [#4891](https://github.com/gohugoio/hugo/issues/4891)
+* Update docker image [554553c0](https://github.com/gohugoio/hugo/commit/554553c09c7657d28681e1fa0638806a452737a0) [@bep](https://github.com/bep)
+* Merge branch 'release-0.42.2' [282f6035](https://github.com/gohugoio/hugo/commit/282f6035e7c36f8550d91033e3a66718468c6c8b) [@bep](https://github.com/bep)
+* Release 0.42.2 [1637d12e](https://github.com/gohugoio/hugo/commit/1637d12e3762fc1ebab4cd675f75afaf25f59cdb) [@bep](https://github.com/bep)
+* Update GoReleaser config [1f0c4e1f](https://github.com/gohugoio/hugo/commit/1f0c4e1fb347bb233f3312c424fbf5a013c03604) [@caarlos0](https://github.com/caarlos0)
+* Create missing head.html partial on new theme generation [fd71fa89](https://github.com/gohugoio/hugo/commit/fd71fa89bd6c197402582c87b2b76d4b96d562bf) [@openscript](https://github.com/openscript)
+* Add html doctype to baseof.html template for new themes [b5a3aa70](https://github.com/gohugoio/hugo/commit/b5a3aa7082135d0a573f4fbb00f798e26b67b902) [@openscript](https://github.com/openscript)
+* Adds .gitattributes to force Go files to LF [6a2968fd](https://github.com/gohugoio/hugo/commit/6a2968fd5c0116d93de0f379ac615e9076821899) [@neurocline](https://github.com/neurocline)
+* Update to Go 1.9.7 and Go 1.10.3 [23d5fc82](https://github.com/gohugoio/hugo/commit/23d5fc82ee01d56440d0991c899acd31e9b63e27) [@anthonyfok](https://github.com/anthonyfok)
+* Update Dockerfile to a multi-stage build [8531ec7c](https://github.com/gohugoio/hugo/commit/8531ec7ca36fd35a57fba06bbb06a65c94dfd3ed) [@skoblenick](https://github.com/skoblenick) [#4154](https://github.com/gohugoio/hugo/issues/4154)
+* Release 0.42.1 [d67e843c](https://github.com/gohugoio/hugo/commit/d67e843c1212e1f53933556b5f946c8541188d9a) [@bep](https://github.com/bep)
+* Do not fail server build when /static is missing [34ee27a7](https://github.com/gohugoio/hugo/commit/34ee27a78b9e2b5f475d44253ae234067b76cc6e) [@bep](https://github.com/bep) [#4846](https://github.com/gohugoio/hugo/issues/4846)
+
+## Fixes
+
+* Do not create paginator pages for the other output formats [43338c3a](https://github.com/gohugoio/hugo/commit/43338c3a99769eb7d0df0c12559b8b3d42b67dba) [@bep](https://github.com/bep) [#4890](https://github.com/gohugoio/hugo/issues/4890)
+* Fix the shortcodes/partials vs base template detection [a5d0a57e](https://github.com/gohugoio/hugo/commit/a5d0a57e6bdab583134a68c035aac9b3007f006a) [@bep](https://github.com/bep) [#4897](https://github.com/gohugoio/hugo/issues/4897)
+* nfpm replacements [e1a052ec](https://github.com/gohugoio/hugo/commit/e1a052ecb823c688406a8af97dfaaf52a75231da) [@caarlos0](https://github.com/caarlos0)
+* Fix typos [3cea2932](https://github.com/gohugoio/hugo/commit/3cea2932e17a08ebc19cd05f3079d9379bc8fba5) [@idealhack](https://github.com/idealhack)
diff --git a/docs/content/en/news/0.44-relnotes/featured-hugo-44-poster.png b/docs/content/en/news/0.44-relnotes/featured-hugo-44-poster.png
new file mode 100644
index 000000000..330b235fb
--- /dev/null
+++ b/docs/content/en/news/0.44-relnotes/featured-hugo-44-poster.png
Binary files differ
diff --git a/docs/content/en/news/0.44-relnotes/index.md b/docs/content/en/news/0.44-relnotes/index.md
new file mode 100644
index 000000000..aa8396898
--- /dev/null
+++ b/docs/content/en/news/0.44-relnotes/index.md
@@ -0,0 +1,39 @@
+
+---
+date: 2018-07-13
+title: "Hugo 0.44: Friday the 13th Edition"
+description: "A sequel to the very popular Hugo Pipes Edition; bug-fixes and enhancements …"
+categories: ["Releases"]
+---
+
+
+Hugo `0.44` is the follow-up release, or **The Sequel**, of the very well received `0.43` only days ago. That release added **Hugo Pipes**, with SCSS/SASS support, assets bundling and minification, ad-hoc image processing and much more.
+
+This is mostly a bug-fix release, but it also includes several important improvements.
+
+Many complained that their SVG images vanished when browsed from the `hugo server`. With **Hugo Pipes** MIME types suddenly got really important, but Hugo's use of `Suffix` was ambiguous. This became visible when we redefined the `image/svg+xml` to work with **Hugo Pipes**. We have now added a `Suffixes` field on the MIME type definition in Hugo, which is a list of one or more filename suffixes the MIME type is identified with. If you need to add a custom MIME type definition, this means that you also need to specify the full MIME type as the key, e.g. `image/svg+xml`.
+
+Hugo now has:
+
+* 27120+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 443+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 239+ [themes](http://themes.gohugo.io/)
+
+## Notes
+* `MediaType.Suffix` is deprecated and replaced with a plural version, `MediaType.Suffixes`, with a more specific definition. You will get a detailed WARNING in the console if you need to do anything.
+
+## Enhancements
+* Allow multiple file suffixes per media type [b874a1ba](https://github.com/gohugoio/hugo/commit/b874a1ba7ab8394dc741c8c70303a30a35b63e43) [@bep](https://github.com/bep) [#4920](https://github.com/gohugoio/hugo/issues/4920)
+* Clean up the in-memory Resource reader usage [47d38628](https://github.com/gohugoio/hugo/commit/47d38628ec0f4e72ff17661f13456b2a1511fe13) [@bep](https://github.com/bep) [#4936](https://github.com/gohugoio/hugo/issues/4936)
+* Move opening of the transformed resources after cache check [0024dcfe](https://github.com/gohugoio/hugo/commit/0024dcfe3e016c67046de06d1dac5e7f5235f9e1) [@bep](https://github.com/bep)
+* Improve type support in `resources.Concat` [306573de](https://github.com/gohugoio/hugo/commit/306573def0e20ec16ee5c447981cc09ed8bb7ec7) [@bep](https://github.com/bep) [#4934](https://github.com/gohugoio/hugo/issues/4934)
+* Flush `partialCached` cache on rebuilds [6b6dcb44](https://github.com/gohugoio/hugo/commit/6b6dcb44a014699c289bf32fe57d4c4216777be0) [@bep](https://github.com/bep) [#4931](https://github.com/gohugoio/hugo/issues/4931)
+* Include the transformation step in the error message [d96f2a46](https://github.com/gohugoio/hugo/commit/d96f2a460f58e91d8f6253a489d4879acfec6916) [@bep](https://github.com/bep) [#4924](https://github.com/gohugoio/hugo/issues/4924)
+* Exclude *.svg from CRLF/LF conversion [9c1e8208](https://github.com/gohugoio/hugo/commit/9c1e82085eb07d5b4dcdacbe82d5bafd26e08631) [@anthonyfok](https://github.com/anthonyfok)
+
+## Fixes
+
+* Fix `resources.Concat` for transformed resources [beec1fc9](https://github.com/gohugoio/hugo/commit/beec1fc98e5d37bba742d6bc2a0ff7c344b469f8) [@bep](https://github.com/bep) [#4936](https://github.com/gohugoio/hugo/issues/4936)
+* Fix static filesystem for themed multihost sites [80c8f3b8](https://github.com/gohugoio/hugo/commit/80c8f3b81a9849080e64bf877288ede28d960d3f) [@bep](https://github.com/bep) [#4929](https://github.com/gohugoio/hugo/issues/4929)
+* Set permission of embedded templates to 0644 [2b73e89d](https://github.com/gohugoio/hugo/commit/2b73e89d6d2822e86360a6c92c87f539677c119b) [@anthonyfok](https://github.com/anthonyfok)
+
diff --git a/docs/content/en/news/0.45-relnotes/featured-hugo-45-poster.png b/docs/content/en/news/0.45-relnotes/featured-hugo-45-poster.png
new file mode 100644
index 000000000..40f71daca
--- /dev/null
+++ b/docs/content/en/news/0.45-relnotes/featured-hugo-45-poster.png
Binary files differ
diff --git a/docs/content/en/news/0.45-relnotes/index.md b/docs/content/en/news/0.45-relnotes/index.md
new file mode 100644
index 000000000..83051c058
--- /dev/null
+++ b/docs/content/en/news/0.45-relnotes/index.md
@@ -0,0 +1,107 @@
+
+---
+date: 2018-07-22
+title: "Hugo 0.45: Revival of ref, relref and GetPage"
+description: "Hugo 0.45 adds relative page lookups, language support in ref/relref and several Hugo Pipes improvements."
+categories: ["Releases"]
+---
+
+
+Hugo `0.45` is the **revival of ref, relref and GetPage**. [@vassudanagunta](https://github.com/vassudanagunta) and [@bep](https://github.com/bep) have done some great work improving the API and implementation for the helper functions used to **get one page**. Before this release, the API was a little bit clumsy and the result potentially ambiguous in some situations.
+
+Now you can simply do:
+
+```go-html-template
+{{ with .Site.GetPage "/blog/my-post.md" }}{{ .Title }}{{ end }}
+```
+
+Or to get a section page:
+
+
+```go-html-template
+{{ with .Site.GetPage "/blog" }}{{ .Title }}{{ end }}
+```
+
+We have also added a `.GetPage` method on `Page` and added support for page-relative linking. This means that the leading slash (`/`) now has a meaning. For `.Site.GetPage`, all lookups will start at the content root. But for lookups with a `Page` context, paths without a leading slash will be treated as relative to the page.
+
+This means that the following example will find the page in the current section:
+
+```go-html-template
+{{</* ref "my-post.md" */>}}
+```
+
+You can also use the `..` to refer to a page one level up etc.:
+
+```go-html-template
+{{</* ref "../my-post.md" */>}}
+```
+
+We have now also added language support to `ref` and `relref`, so you can link to a page in another language:
+
+```go-html-template
+{{</* relref path="document.md" lang="ja" */>}}
+```
+
+To link to a given Output Format of a document, you can use this syntax:
+
+```go-html-template
+{{</* relref path="document.md" outputFormat="rss" */>}}
+```
+
+To make working with these reflinks on bigger sites easier to work with, we have also improved the error logging, and added two new configuration settings:
+
+* refLinksErrorLevel: ERROR (default, will fail the build when a reflink cannot be resolved) or WARNING.
+* refLinksNotFoundURL: Set this to an URL placeholder used when no reference could be resolved.
+
+Visit the [Hugo Docs](https://gohugo.io/content-management/cross-references) for more information.
+
+We have also done some important improvements and fixes in **Hugo Pipes** in this release: SCSS source maps on Windows now works, we now support project-local `PostCSS` installation, and we have added `IncludePaths` to `SCSS` options, making it possible to include, say, a path below `node_modules` in the SASS/SCSS build.
+
+This release represents **31 contributions by 4 contributors** to the main Hugo code base.
+[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@vassudanagunta](https://github.com/vassudanagunta), [@hairmare](https://github.com/hairmare), and [@garrmcnu](https://github.com/garrmcnu) for their ongoing contributions.
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the themes site in pristine condition and to [@kaushalmodi](https://github.com/kaushalmodi) for his great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **10 contributions by 8 contributors**. A special thanks to [@kaushalmodi](https://github.com/kaushalmodi), [@Hanzei](https://github.com/Hanzei), [@KurtTrowbridge](https://github.com/KurtTrowbridge), and [@regisphilibert](https://github.com/regisphilibert) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 27334+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 443+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 238+ [themes](http://themes.gohugo.io/)
+
+## Notes
+* `.Site.GetPage` with more than 2 arguments will not work anymore. This means that `{{ .Site.GetPage "page" "blog" "my-post.md" }}` will fail. `{{ .Site.GetPage "page" "blog/my-post.md" }}` will work, but we recommend you use the simpler `{{ .Site.GetPage "/blog/my-post.md" }}`
+* Relative paths in `relref` or `ref` that finds its match not relative to the page itself will work, but we now print a warning saying that you should correct it to an absolute path. E.g. `{{</* ref "blog/my-post.md" */>}}` => `{{</* ref "/blog/my-post.md" */>}}`.
+
+## Enhancements
+
+* Print a WARNING about relative non-relative ref/relref matches [a451c49f](https://github.com/gohugoio/hugo/commit/a451c49fde1da6e2cc436a2b7d383ee772b1f893) [@bep](https://github.com/bep) [#4973](https://github.com/gohugoio/hugo/issues/4973)
+* Allow untyped nil to be merged in lang.Merge [ff16c42e](https://github.com/gohugoio/hugo/commit/ff16c42ed0965e1c8acf6e6a6dcda3ea50c107f2) [@bep](https://github.com/bep) [#4977](https://github.com/gohugoio/hugo/issues/4977)
+* Get rid of the utils package [062510cf](https://github.com/gohugoio/hugo/commit/062510cf1f7b79aed2efe88c5b9340d009bdec0e) [@bep](https://github.com/bep)
+* Update hugo_windows.go [4e1d0cd9](https://github.com/gohugoio/hugo/commit/4e1d0cd9f1d43d133d669a019a84117cadd41955) [@bep](https://github.com/bep)
+* Add IncludePaths config option [166483fe](https://github.com/gohugoio/hugo/commit/166483fe1227b0c59c6b4d88cfdfaf7d7b0d79c5) [@bep](https://github.com/bep) [#4921](https://github.com/gohugoio/hugo/issues/4921)
+* Increase refLinker test coverage [8278384b](https://github.com/gohugoio/hugo/commit/8278384b9680cfdcecef9c668638ad483012857f) [@vassudanagunta](https://github.com/vassudanagunta)
+* Add test coverage for recent ref overhaul [2bac3715](https://github.com/gohugoio/hugo/commit/2bac3715448e90e197ada7cc73c87f696c19def6) [@vassudanagunta](https://github.com/vassudanagunta) [#4969](https://github.com/gohugoio/hugo/issues/4969)
+* Update ref, relref, GetPage docs [1eb8b36b](https://github.com/gohugoio/hugo/commit/1eb8b36b3802e72bc2c16965461ef1899bb073b3) [@bep](https://github.com/bep)
+* Document refLinksErrorLevel and refLinksNotFoundURL [00c74ee7](https://github.com/gohugoio/hugo/commit/00c74ee7ffae71fd5f47d555160354a775e26151) [@bep](https://github.com/bep) [#4964](https://github.com/gohugoio/hugo/issues/4964)
+* Add configurable ref/relref error handling and notFoundURL [e25aa655](https://github.com/gohugoio/hugo/commit/e25aa655f4227ac064be5fe770d517a80acd46b2) [@bep](https://github.com/bep) [#4964](https://github.com/gohugoio/hugo/issues/4964)
+* Try node_modules/postcss-cli/bin/postcss first [ebe4d39f](https://github.com/gohugoio/hugo/commit/ebe4d39f175f73e4f130972cb3d74ef0af5d5761) [@bep](https://github.com/bep) [#4952](https://github.com/gohugoio/hugo/issues/4952)
+* Add optional lang as argument to rel/relref [d741064b](https://github.com/gohugoio/hugo/commit/d741064bebe2f4663a7ba12556dccc3dffe08629) [@bep](https://github.com/bep) [#4956](https://github.com/gohugoio/hugo/issues/4956)
+* Simplify .Site.GetPage etc. [3eb313fe](https://github.com/gohugoio/hugo/commit/3eb313fef495a39731dafa6bddbf77760090230d) [@bep](https://github.com/bep) [#4147](https://github.com/gohugoio/hugo/issues/4147)[#4727](https://github.com/gohugoio/hugo/issues/4727)[#4728](https://github.com/gohugoio/hugo/issues/4728)[#4728](https://github.com/gohugoio/hugo/issues/4728)[#4726](https://github.com/gohugoio/hugo/issues/4726)[#4652](https://github.com/gohugoio/hugo/issues/4652)
+* Unify page lookups [b93417aa](https://github.com/gohugoio/hugo/commit/b93417aa1d3d38a9e56bad25937e0e638a113faf) [@vassudanagunta](https://github.com/vassudanagunta) [#4147](https://github.com/gohugoio/hugo/issues/4147)[#4727](https://github.com/gohugoio/hugo/issues/4727)[#4728](https://github.com/gohugoio/hugo/issues/4728)[#4728](https://github.com/gohugoio/hugo/issues/4728)[#4726](https://github.com/gohugoio/hugo/issues/4726)[#4652](https://github.com/gohugoio/hugo/issues/4652)
+* Improve error message [4c240800](https://github.com/gohugoio/hugo/commit/4c240800a4275244c9e0847cd6707383180f1ac3) [@bep](https://github.com/bep)
+* Remove unused code [2f2bc7ff](https://github.com/gohugoio/hugo/commit/2f2bc7ff70b90fb11580cc092ef3883bf68d8ad7) [@bep](https://github.com/bep)
+
+## Fixes
+
+* Avoid server panic on TOML mistake in i18n [75acff5f](https://github.com/gohugoio/hugo/commit/75acff5f20d0d41ffa1ae20402001c7a82f077cb) [@bep](https://github.com/bep) [#4942](https://github.com/gohugoio/hugo/issues/4942)
+* Only set 'allThemes' if there are themes in the config file [38204c4a](https://github.com/gohugoio/hugo/commit/38204c4ab6fa2aa2ab8bd06ddb3e07b66e5f9646) [@garrmcnu](https://github.com/garrmcnu) [#4851](https://github.com/gohugoio/hugo/issues/4851)
+* Fix potential server panic with drafts/future enabled [1ab4658c](https://github.com/gohugoio/hugo/commit/1ab4658c0d5ea2927f04bd748206e5b139a6326e) [@bep](https://github.com/bep) [#4965](https://github.com/gohugoio/hugo/issues/4965)
+* Mark shortcode changes as content changes in server mode [12679b40](https://github.com/gohugoio/hugo/commit/12679b408362a93a3c6159588d6291a3b7ed5548) [@bep](https://github.com/bep) [#4965](https://github.com/gohugoio/hugo/issues/4965)
+* Fix source maps on Windows [f01505c9](https://github.com/gohugoio/hugo/commit/f01505c910a325acc18742ac6b3637aa01975e37) [@bep](https://github.com/bep) [#4968](https://github.com/gohugoio/hugo/issues/4968)
+* Fix typo-logic bug in GetPage [b56d9a12](https://github.com/gohugoio/hugo/commit/b56d9a1294e692d096bff442e0b1fec61a8c2b0f) [@vassudanagunta](https://github.com/vassudanagunta)
+* Enable test case fixed by commit 501543d4 [d6fde8fa](https://github.com/gohugoio/hugo/commit/d6fde8fa131f3852fa98a8ec5c360e736486cf54) [@vassudanagunta](https://github.com/vassudanagunta)
+* Fix theme config for Work Fs [5c9d5413](https://github.com/gohugoio/hugo/commit/5c9d5413a4e2cc8d44a8b2d7dff04e6523ba2a29) [@bep](https://github.com/bep) [#4951](https://github.com/gohugoio/hugo/issues/4951)
+* Fix addkit link to account for i18n [fd1f4a78](https://github.com/gohugoio/hugo/commit/fd1f4a7860c4b989865b47c727239cf924a52fa4) [@hairmare](https://github.com/hairmare)
diff --git a/docs/content/en/news/0.45.1-relnotes/index.md b/docs/content/en/news/0.45.1-relnotes/index.md
new file mode 100644
index 000000000..84e0416c7
--- /dev/null
+++ b/docs/content/en/news/0.45.1-relnotes/index.md
@@ -0,0 +1,26 @@
+
+---
+date: 2018-07-25
+title: "Hugo 0.45.1: Two Bug Fixes"
+description: "Hugo 0.45.1 comes with two bug fixes ... and one enhancement."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+ This is a bug-fix release with a couple of important fixes (and one enhancement).
+
+## Enhancements
+
+* Add Page.FirstSection [016dd4a6](https://github.com/gohugoio/hugo/commit/016dd4a69a765061bb3da8490d3cac6ec47a91eb) [@bep](https://github.com/bep)
+
+## Fixes
+
+* Fix .Site.GetPage regression [04d4c08d](https://github.com/gohugoio/hugo/commit/04d4c08dbcac08ff7feeb88863e91799fed0937b) [@bep](https://github.com/bep) [#4989](https://github.com/gohugoio/hugo/issues/4989)
+* Fix "borrow content from another language" issue [c6b599a0](https://github.com/gohugoio/hugo/commit/c6b599a06d66b8e3c92343d25bb8043eb4f291f1) [@bep](https://github.com/bep) [#4986](https://github.com/gohugoio/hugo/issues/4986)
+
+
+
+
+
diff --git a/docs/content/en/news/0.46-relnotes/featured-hugo-46-poster.png b/docs/content/en/news/0.46-relnotes/featured-hugo-46-poster.png
new file mode 100644
index 000000000..c00622e04
--- /dev/null
+++ b/docs/content/en/news/0.46-relnotes/featured-hugo-46-poster.png
Binary files differ
diff --git a/docs/content/en/news/0.46-relnotes/index.md b/docs/content/en/news/0.46-relnotes/index.md
new file mode 100644
index 000000000..ef0df2427
--- /dev/null
+++ b/docs/content/en/news/0.46-relnotes/index.md
@@ -0,0 +1,49 @@
+
+---
+date: 2018-08-01
+title: "The Summer of Hugo"
+description: "Hugo 0.46: Full SCSS/SASS import inheritance support, rework of Hugo Pipes vs. multilingual, and more …"
+categories: ["Releases"]
+---
+
+**Hugo 0.46** is the closing credits to **The Summer of Hugo**. While most people have been relaxing on the beach, Hugo has been really busy:
+
+* **0.42, June 12, 2018**: [Theme Composition and Inheritance!](https://gohugo.io/news/0.42-relnotes/)
+* **0.43, July 9, 2018**: [Hugo Pipes!](https://gohugo.io/news/0.43-relnotes/)
+
+This was followed by some more technical follow-up releases. And today, when July has turned into August, we come with another one. It's not a big release. But with the big interest in **Hugo Pipes**, we felt that it was important to get this out there sooner rather than later.
+
+There are two main items in this release:
+
+1. We have added a custom SCSS/SASS import resolver that respects Hugo's project/themes filesystem hierarchy anywhere in `/assets`. Using the LibSass' resolver alone only made this work for the entry folder.
+2. Resources fetched via `resources.Get` and similar are now language agnostic. The thought behind the original implementation was maximum flexibility with support for `assetDir` per language. In practice, this was a bad idea, as it made some CSS imports hard to get working in multilingual setups, and you got duplication of identical content for no good reason, with added processing time.
+
+This release represents **12 contributions by 2 contributors** to the main Hugo code base.
+
+A special thanks in this release goes to [@onedrawingperday](https://github.com/onedrawingperday) for his excellent work maintaining the fast-growing [Themes Site](https://themes.gohugo.io/).
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **5 contributions by 3 contributors**.
+
+Hugo now has:
+
+* 27596+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 442+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 245+ [themes](http://themes.gohugo.io/)
+
+## Notes
+
+* Resources fetched via `resources.Get` and similar are now considered global across languages. If you need, as an example, to create a CSS per language, you need to set the path yourself.
+
+## Enhancements
+
+* Add `templates.Exists` template function. This can be used to check if a template, e.g. a partial, exists in the project or any of the themes in use. [0ba19c57](https://github.com/gohugoio/hugo/commit/0ba19c57f180c33b41c64335ea1d1c89335d34c0) [@bep](https://github.com/bep) [#5010](https://github.com/gohugoio/hugo/issues/5010)
+* Remove superflous loop [0afa2897](https://github.com/gohugoio/hugo/commit/0afa2897a0cf90f4348929ef432202efddc183a0) [@bep](https://github.com/bep)
+* Update Chroma [b5d13ca1](https://github.com/gohugoio/hugo/commit/b5d13ca16bf106c1bc29c2a5295cd231d1bf13fd) [@bep](https://github.com/bep) [#5019](https://github.com/gohugoio/hugo/issues/5019)
+* Make resources fetched via `resources.Get` and similar language agnostic [6b02f5c0](https://github.com/gohugoio/hugo/commit/6b02f5c0f4e0ba1730aebc5a590a111548233bd5) [@bep](https://github.com/bep) [#5017](https://github.com/gohugoio/hugo/issues/5017)
+* Improve SCSS project vs themes import resolution [f219ac09](https://github.com/gohugoio/hugo/commit/f219ac09f6b7e26d84599401512233d77c1bdb4c) [@bep](https://github.com/bep) [#5008](https://github.com/gohugoio/hugo/issues/5008)
+* Improve _ prefix handling in SCSS imports [88e447c4](https://github.com/gohugoio/hugo/commit/88e447c449608523d87c517396bde31a62f392b6) [@bep](https://github.com/bep) [#5008](https://github.com/gohugoio/hugo/issues/5008)
+
+## Fixes
+* Fix file paths for uncached transformed images [b718d743](https://github.com/gohugoio/hugo/commit/b718d743b7a2eff3bea74ced57147825294a629f) [@RJacksonm1](https://github.com/RJacksonm1) [#5012](https://github.com/gohugoio/hugo/issues/5012)
+* Fix image cache eviction for sites with subdir in baseURL [786f7230](https://github.com/gohugoio/hugo/commit/786f72302f65580ca8d1df2132a7756584539ea0) [@bep](https://github.com/bep) [#5006](https://github.com/gohugoio/hugo/issues/5006)
diff --git a/docs/content/en/news/0.47-relnotes/featured-hugo-47-poster.png b/docs/content/en/news/0.47-relnotes/featured-hugo-47-poster.png
new file mode 100644
index 000000000..601922961
--- /dev/null
+++ b/docs/content/en/news/0.47-relnotes/featured-hugo-47-poster.png
Binary files differ
diff --git a/docs/content/en/news/0.47-relnotes/index.md b/docs/content/en/news/0.47-relnotes/index.md
new file mode 100644
index 000000000..79d15ec62
--- /dev/null
+++ b/docs/content/en/news/0.47-relnotes/index.md
@@ -0,0 +1,79 @@
+
+---
+date: 2018-08-17
+title: "Output Minification, Live-Reload Fixes and More"
+description: "Hugo 0.47: Adds minification of rendered output, but is mostly a massive bug fix release."
+categories: ["Releases"]
+---
+
+Hugo `0.47` is named **Hugo Reloaded**. It adds minification support for the final rendered output (run `hugo --minify`), but it is mostly a bug fix release. And most notably, it fixes a set of issues with live-reloading/partial rebuilds when running `hugo server`. Working with bundles should now be a more pleasant experience, to pick one example.
+
+This release represents **35 contributions by 6 contributors** to the main Hugo code base.
+[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@satotake](https://github.com/satotake), [@anthonyfok](https://github.com/anthonyfok), and [@coliff](https://github.com/coliff) for their ongoing contributions.
+
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) and [@onedrawingperday](https://github.com/onedrawingperday) for their relentless work on keeping the themes site in pristine condition and to [@kaushalmodi](https://github.com/kaushalmodi) for his great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **21 contributions by 10 contributors**. A special thanks to [@bep](https://github.com/bep), [@aapeliv](https://github.com/aapeliv), [@regisphilibert](https://github.com/regisphilibert), and [@brentybh](https://github.com/brentybh) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 27980+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 442+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 251+ [themes](http://themes.gohugo.io/)
+
+## Enhancements
+
+### Templates
+
+* Suppress blank lines from opengraph internal template [c09ee78f](https://github.com/gohugoio/hugo/commit/c09ee78fd235599d3fb794110cd75c024d80cfca) [@anthonyfok](https://github.com/anthonyfok)
+* Add MIME type to embedded JS [755d1ffe](https://github.com/gohugoio/hugo/commit/755d1ffe7a22d8ad83485240ff78cf25d501602f) [@bep](https://github.com/bep) [#5042](https://github.com/gohugoio/hugo/issues/5042)
+* Add `os.Stat` template function [d7112085](https://github.com/gohugoio/hugo/commit/d71120852a8e14d0ea4d24de269fce041ef7b666) [@satotake](https://github.com/satotake)
+
+### Output
+
+* Add support for minification of final output [789ef8c6](https://github.com/gohugoio/hugo/commit/789ef8c639e4621abd36da530bcb5942ac9297da) [@bep](https://github.com/bep) [#1251](https://github.com/gohugoio/hugo/issues/1251)
+
+### Other
+
+* Regenerate CLI docs [4a16b5f4](https://github.com/gohugoio/hugo/commit/4a16b5f4b0adbb31fee611c378de9d5526de2f86) [@bep](https://github.com/bep)
+* Include theme name in version mismatch error [e5052f4e](https://github.com/gohugoio/hugo/commit/e5052f4e09b6df590cddf2f8bc2c834fd3af3082) [@bep](https://github.com/bep) [#5044](https://github.com/gohugoio/hugo/issues/5044)
+* Make the JS minifier matcher less specific [c81fbf46](https://github.com/gohugoio/hugo/commit/c81fbf4625ae7cc7dd3a7a526331ddfdf5237cc6) [@bep](https://github.com/bep) [#5073](https://github.com/gohugoio/hugo/issues/5073)
+* Close file when done [f6ae436c](https://github.com/gohugoio/hugo/commit/f6ae436c5878bafeafa0bb2646a2c9b32c9b4380) [@bep](https://github.com/bep) [#5062](https://github.com/gohugoio/hugo/issues/5062)
+* https links to 3rd party sites [c2a67413](https://github.com/gohugoio/hugo/commit/c2a6741394bc609a663522b245d3d75f0ad17da4) [@coliff](https://github.com/coliff)
+* Update alias.go [06bd0136](https://github.com/gohugoio/hugo/commit/06bd0136419ebd6727635716c7023494cc5a8257) [@coliff](https://github.com/coliff)
+* Remove test debug [fb3cb05c](https://github.com/gohugoio/hugo/commit/fb3cb05cc3dfc50370449f622fb0130ba7e0ced2) [@bep](https://github.com/bep)
+* Update dependencies [d07882df](https://github.com/gohugoio/hugo/commit/d07882dfb76a65cce79aaa6f27df71279cd30600) [@bep](https://github.com/bep)
+* Update Chroma [7f535671](https://github.com/gohugoio/hugo/commit/7f5356717d14079432365974e1424fc4ff5987c9) [@bep](https://github.com/bep) [#5025](https://github.com/gohugoio/hugo/issues/5025)
+* Remove alias of os.Stat [71931b30](https://github.com/gohugoio/hugo/commit/71931b30b1813b146aaa60f5cdab16c0f9ebebdb) [@satotake](https://github.com/satotake)
+* Renmae FileStat Stat [d40116e5](https://github.com/gohugoio/hugo/commit/d40116e5f941e4734ed3bed69dce8ffe11fc76b2) [@satotake](https://github.com/satotake)
+* Reduce allocation in the benchmark itself [a6b1eb1e](https://github.com/gohugoio/hugo/commit/a6b1eb1e9150aa5c1c86fe7424cc4167d6f59a5a) [@bep](https://github.com/bep)
+* Simplify the 0 transformer case [27110133](https://github.com/gohugoio/hugo/commit/27110133ffca05feae2e11a9ff28a9a00f613350) [@bep](https://github.com/bep)
+
+## Fixes
+
+### Templates
+
+* Fix compiling Amber templates that import other templates [37438757](https://github.com/gohugoio/hugo/commit/37438757788d279c839506d54f460b2ab37db164) [@Stebalien](https://github.com/Stebalien)
+* Reimplement the ".Params tolower" template transformer [5c538491](https://github.com/gohugoio/hugo/commit/5c5384916e8f954f3ea66148ecceb3732584588e) [@bep](https://github.com/bep) [#5068](https://github.com/gohugoio/hugo/issues/5068)
+
+### Output
+
+* Fix Resource output in multihost setups [78f8475a](https://github.com/gohugoio/hugo/commit/78f8475a054a6277d37f13329afd240b00dc9408) [@bep](https://github.com/bep) [#5058](https://github.com/gohugoio/hugo/issues/5058)
+
+### Core
+
+* Force render of any changed page, even in Fast Render Mode [22475460](https://github.com/gohugoio/hugo/commit/2247546017c00201d2ce1232dd5303295451f1cc) [@bep](https://github.com/bep) [#5083](https://github.com/gohugoio/hugo/issues/5083)
+* Add configFile(s) back to the watch list after REMOVE event [abc54080](https://github.com/gohugoio/hugo/commit/abc54080ec8c43e8989c081d934b59f0c9570c0b) [@anthonyfok](https://github.com/anthonyfok) [#4701](https://github.com/gohugoio/hugo/issues/4701)
+* Gracefully handle typos in server config when running the server [a655e00d](https://github.com/gohugoio/hugo/commit/a655e00d702dbc20b3961b131b33ab21841b043d) [@bep](https://github.com/bep) [#5081](https://github.com/gohugoio/hugo/issues/5081)
+* Fix shortcode output wrapped in p [78c99463](https://github.com/gohugoio/hugo/commit/78c99463fdd45c91af9933528d12d36a86dc6482) [@gllera](https://github.com/gllera) [#1642](https://github.com/gohugoio/hugo/issues/1642)
+* Adjust tests for shortcode p-issue [baa62d0a](https://github.com/gohugoio/hugo/commit/baa62d0abbbf24a17d0aa800a4bb217f026c49ad) [@bep](https://github.com/bep) [#1642](https://github.com/gohugoio/hugo/issues/1642)
+* Fix image cache-clearing for sub-languages [9d973004](https://github.com/gohugoio/hugo/commit/9d973004f5379cff2adda489566fe40683553c4c) [@bep](https://github.com/bep) [#5084](https://github.com/gohugoio/hugo/issues/5084)
+* Fix error when deleting a bundle in server mode [0a88741f](https://github.com/gohugoio/hugo/commit/0a88741fe85f4f7aedc02ed748dfeb8ccc073dbf) [@bep](https://github.com/bep) [#5077](https://github.com/gohugoio/hugo/issues/5077)
+* Fix Related when called from shortcode [0dd06bda](https://github.com/gohugoio/hugo/commit/0dd06bdac008aa81ec2e8f29ad8110dac0227011) [@bep](https://github.com/bep) [#5071](https://github.com/gohugoio/hugo/issues/5071)
+* Use the interface value when doing Related search [a6f199f7](https://github.com/gohugoio/hugo/commit/a6f199f7a640161333608b4a843d701f7e182829) [@bep](https://github.com/bep) [#5071](https://github.com/gohugoio/hugo/issues/5071)
+* Fix GitInfo when multiple content dirs [2182ecfd](https://github.com/gohugoio/hugo/commit/2182ecfd34a24521bf0e3c939627a55327eb1e19) [@bep](https://github.com/bep) [#5054](https://github.com/gohugoio/hugo/issues/5054)
+* Add multiple content dirs to GitInfo test site [e85833d8](https://github.com/gohugoio/hugo/commit/e85833d868a902840c5ed1c90713256153b2548b) [@bep](https://github.com/bep) [#5054](https://github.com/gohugoio/hugo/issues/5054)
+* Fix "adding a bundle" in server mode [d139a037](https://github.com/gohugoio/hugo/commit/d139a037d98e4b388687eecb7831758412247c58) [@bep](https://github.com/bep) [#5075](https://github.com/gohugoio/hugo/issues/5075)
+* Fix typo [c362634b](https://github.com/gohugoio/hugo/commit/c362634b7d8802ea81b0b4341c800a9f78f7cd7c) [@satotake](https://github.com/satotake)
diff --git a/docs/content/en/news/0.47.1-relnotes/index.md b/docs/content/en/news/0.47.1-relnotes/index.md
new file mode 100644
index 000000000..d35b0fad2
--- /dev/null
+++ b/docs/content/en/news/0.47.1-relnotes/index.md
@@ -0,0 +1,30 @@
+
+---
+date: 2018-08-20
+title: "Two Bug Fixes"
+description: "Hugo 0.47.1: Two Bug Fixes"
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+ This is a bug-fix release with two fixes.
+
+# Fixes
+
+* Fix .Site.Params case regression [fdff0d3a](https://github.com/gohugoio/hugo/commit/fdff0d3af4670f7079e539fef4b92af2a866d02d) [@bep](https://github.com/bep) [#5094](https://github.com/gohugoio/hugo/issues/5094)
+* Do not strip IE conditional statements [5a0ee2b9](https://github.com/gohugoio/hugo/commit/5a0ee2b934e38d596da0f9742361f81c1221e3d5) [@bep](https://github.com/bep) [#5089](https://github.com/gohugoio/hugo/issues/5089)
+
+## Updates to Linux Snap build
+
+* Remove unused files from Git, Perl, etc. [834617f9](https://github.com/gohugoio/hugo/commit/834617f9f8d870643b2631fe607471c8e2ef2f47) [@anthonyfok](https://github.com/anthonyfok)
+* Add nodejs to allow PostCSS to work [ef20ec1f](https://github.com/gohugoio/hugo/commit/ef20ec1fbaa8f5841b3fbe18978d4d8c19d8fc53) [@anthonyfok](https://github.com/anthonyfok)
+
+
+
+
+
+
+
+
diff --git a/docs/content/en/news/0.48-relnotes/featured-hugo-48-poster.png b/docs/content/en/news/0.48-relnotes/featured-hugo-48-poster.png
new file mode 100644
index 000000000..7adb0d22e
--- /dev/null
+++ b/docs/content/en/news/0.48-relnotes/featured-hugo-48-poster.png
Binary files differ
diff --git a/docs/content/en/news/0.48-relnotes/index.md b/docs/content/en/news/0.48-relnotes/index.md
new file mode 100644
index 000000000..92c765f23
--- /dev/null
+++ b/docs/content/en/news/0.48-relnotes/index.md
@@ -0,0 +1,57 @@
+
+---
+date: 2018-08-29
+title: "This One Goes to 11!"
+description: "With Go 1.11, Hugo finally gets support for variable overwrites in templates!"
+categories: ["Releases"]
+---
+
+Hugo `0.48` is built with the brand new Go 1.11. On the technical side this means that Hugo now uses [Go Modules](https://github.com/golang/go/wiki/Modules) for the build. The big new functional thing in Go 1.11 for Hugo is added support for [variable overwrites](https://github.com/golang/go/issues/10608). This means that you can now do this and get the expected result:
+
+```go-html-template
+{{ $var := "Hugo Page" }}
+{{ if .IsHome }}
+ {{ $var = "Hugo Home" }}
+{{ end }}
+Var is {{ $var }}
+```
+
+The above may look obvious, but has not been possible until now. In Hugo we have had `.Scratch` as a workaround for this, but Go 1.11 will help clean up a lot of templates.
+
+This release represents **23 contributions by 5 contributors** to the main Hugo code base. [@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@anthonyfok](https://github.com/anthonyfok), [@vsopvsop](https://github.com/vsopvsop), and [@moorereason](https://github.com/moorereason) for their ongoing contributions. And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the themes site in pristine condition and to [@kaushalmodi](https://github.com/kaushalmodi) for his great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **15 contributions by 12 contributors**. A special thanks to [@bep](https://github.com/bep), [@kaushalmodi](https://github.com/kaushalmodi), [@regisphilibert](https://github.com/regisphilibert), and [@anthonyfok](https://github.com/anthonyfok) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 28275+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 441+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 252+ [themes](http://themes.gohugo.io/)
+
+## Enhancements
+
+* Add a test for template variable overwrite [0c8a4154](https://github.com/gohugoio/hugo/commit/0c8a4154838e32a33d34202fd4fa0187aa502190) [@bep](https://github.com/bep)
+* Include language code in REF_NOT_FOUND errors [94d0e79d](https://github.com/gohugoio/hugo/commit/94d0e79d33994b9a9d26a4d020500acdcc71e58c) [@bep](https://github.com/bep) [#5110](https://github.com/gohugoio/hugo/issues/5110)
+* Improve minifier MIME type resolution [ebb56e8b](https://github.com/gohugoio/hugo/commit/ebb56e8bdbfaf4f955326017e40b2805850871e9) [@bep](https://github.com/bep) [#5093](https://github.com/gohugoio/hugo/issues/5093)
+* Update to Go 1.11 [6b9934a2](https://github.com/gohugoio/hugo/commit/6b9934a26615ea614b1774770532cae9762a58d3) [@bep](https://github.com/bep) [#5115](https://github.com/gohugoio/hugo/issues/5115)
+* Set GO111MODULE=on for mage install [c7f05779](https://github.com/gohugoio/hugo/commit/c7f057797ca7bfc781d5a2bbf181bb52360f160f) [@bep](https://github.com/bep) [#5115](https://github.com/gohugoio/hugo/issues/5115)
+* Add instruction to install PostCSS when missing [08d14113](https://github.com/gohugoio/hugo/commit/08d14113b60ff70ffe922e8098e289b099a70e0f) [@anthonyfok](https://github.com/anthonyfok) [#5111](https://github.com/gohugoio/hugo/issues/5111)
+* Update snapcraft build config to Go 1.11 [94d6d678](https://github.com/gohugoio/hugo/commit/94d6d6780fac78e9ed5ed58ecdb9821ad8f0f27c) [@bep](https://github.com/bep) [#5115](https://github.com/gohugoio/hugo/issues/5115)
+* Use Go 1.11 modules with Mage [45c9c45d](https://github.com/gohugoio/hugo/commit/45c9c45d1d0d99443fa6bb524a1265fa9ba95e0e) [@bep](https://github.com/bep) [#5115](https://github.com/gohugoio/hugo/issues/5115)
+* Add go.mod [fce32c07](https://github.com/gohugoio/hugo/commit/fce32c07fb80e9929bc2660cf1e681e93009d24b) [@bep](https://github.com/bep) [#5115](https://github.com/gohugoio/hugo/issues/5115)
+* Update Travis to Go 1.11 and Go 1.10.4 [d32ff16f](https://github.com/gohugoio/hugo/commit/d32ff16fd61f55874e81d73759afa099b8bdcb57) [@bep](https://github.com/bep) [#5115](https://github.com/gohugoio/hugo/issues/5115)
+* Skip installing postcss due to failure on build server [66f688f7](https://github.com/gohugoio/hugo/commit/66f688f7120560ca787c1a23e3e7fbc3aa617956) [@anthonyfok](https://github.com/anthonyfok)
+
+## Fixes
+
+* Keep end tags [e6eda2a3](https://github.com/gohugoio/hugo/commit/e6eda2a370aa1184e0afaf12e95dbd6f8b63ace5) [@vsopvsop](https://github.com/vsopvsop)
+* Fix permissions when creating new folders [f4675fa0](https://github.com/gohugoio/hugo/commit/f4675fa0f0fae2358adfaea49e8da824ee094495) [@bep](https://github.com/bep) [#5128](https://github.com/gohugoio/hugo/issues/5128)
+* Fix handling of taxonomy terms containing slashes [fff13253](https://github.com/gohugoio/hugo/commit/fff132537b4094221f4f099e2251f3cda613060f) [@moorereason](https://github.com/moorereason) [#4090](https://github.com/gohugoio/hugo/issues/4090)
+* Fix build on armv7 [8999de19](https://github.com/gohugoio/hugo/commit/8999de193c18b7aa07b44e5b7d9f443a8572e117) [@caarlos0](https://github.com/caarlos0) [#5101](https://github.com/gohugoio/hugo/issues/5101)
+
+
+
+
+
diff --git a/docs/content/en/news/0.49-relnotes/featured-hugo-49-poster.png b/docs/content/en/news/0.49-relnotes/featured-hugo-49-poster.png
new file mode 100644
index 000000000..6f0f42ed4
--- /dev/null
+++ b/docs/content/en/news/0.49-relnotes/featured-hugo-49-poster.png
Binary files differ
diff --git a/docs/content/en/news/0.49-relnotes/index.md b/docs/content/en/news/0.49-relnotes/index.md
new file mode 100644
index 000000000..6bb272c33
--- /dev/null
+++ b/docs/content/en/news/0.49-relnotes/index.md
@@ -0,0 +1,120 @@
+
+---
+date: 2018-09-24
+title: "Hugo 0.49: Directory Based Archetypes"
+description: "Hugo 0.49 brings archetype bundle support and collection goodness."
+categories: ["Releases"]
+---
+
+
+Hugo `0.49` brings [directory based archetypes](https://gohugo.io/content-management/archetypes/#directory-based-archetypes) and also improves the language handling in `hugo new`. This should simplify working with [page bundles](https://gohugo.io/content-management/page-bundles/). One example of this would be how you now can create a [new showcase](https://gohugo.io/showcase/template/) for the Hugo web site.
+
+But this release is also about _collections_. Go 1.11 gave us variable overwrite support in Go templates. That made it possible to simplify a lot of template constructs, but it also showed some limitations in Hugo's template functions. So with this release we have:
+
+* added [append](https://gohugo.io/functions/append/) function to append to collections.
+* added [group](https://gohugo.io/functions/group/) to create custom page groups.
+* improved the type support in [slice](https://gohugo.io/functions/slice/).
+
+This release represents **66 contributions by 9 contributors** to the main Hugo code base.
+[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@moorereason](https://github.com/moorereason), [@felicianotech](https://github.com/felicianotech), and [@vdanjean](https://github.com/vdanjean) for their ongoing contributions.
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) and [@onedrawingperday](https://github.com/onedrawingperday) for their relentless work on keeping the themes site in pristine condition and to [@kaushalmodi](https://github.com/kaushalmodi) for his great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **37 contributions by 20 contributors**. A special thanks to [@bep](https://github.com/bep), [@kaushalmodi](https://github.com/kaushalmodi), [@AlexChambers](https://github.com/AlexChambers), and [@shaform](https://github.com/shaform) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 28985+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 441+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 265+ [themes](http://themes.gohugo.io/)
+
+
+## Notes
+
+* Remove deprecated `rssURI` [f1a00b20](https://github.com/gohugoio/hugo/commit/f1a00b2069ede85feb487d29b9f690396e2402c6) [@bep](https://github.com/bep)
+* Remove deprecated flags [df4cbbd3](https://github.com/gohugoio/hugo/commit/df4cbbd3bdc05aa14a67b3a0a29a0db75b82e640) [@bep](https://github.com/bep)
+* Deprecate `Pages.Sort`. Use `.ByWeight` [2e2e34a9](https://github.com/gohugoio/hugo/commit/2e2e34a9350edec0220462aa3d47ecc9d428a0fb) [@bep](https://github.com/bep)
+* When setting `preserveTaxonomyNames` Hugo now _really_ preserves them. Before this release, we would make the first character upper case. If this is the behaviour you want you can use the new `strings.FirstUpper` function.
+
+## Enhancements
+
+### Templates
+
+* Allow `first` function to return an empty slice [cae07ce8](https://github.com/gohugoio/hugo/commit/cae07ce84b3bd4a33fd18b5109a1a3c3dce2191c) [@felicianotech](https://github.com/felicianotech) [#5235](https://github.com/gohugoio/hugo/issues/5235)
+* Use `safeHTMLAttr` instead of `safeHTML` for HTML attributes [4f9c109d](https://github.com/gohugoio/hugo/commit/4f9c109dc5431553e5dbf98e0ed37487c12e8d16) [@felicianotech](https://github.com/felicianotech) [#5236](https://github.com/gohugoio/hugo/issues/5236)
+* Add `collections.Append` (with alias `append`) [e27fd4c1](https://github.com/gohugoio/hugo/commit/e27fd4c1b80b7acb43290ac50e9f140d690cf042) [@bep](https://github.com/bep) [#5190](https://github.com/gohugoio/hugo/issues/5190)
+* Improve type handling in `collections.Slice` [fe6676c7](https://github.com/gohugoio/hugo/commit/fe6676c775b8d917a661238f24fd4a9088f25d50) [@bep](https://github.com/bep) [#5188](https://github.com/gohugoio/hugo/issues/5188)
+* Add `group` template func [6667c6d7](https://github.com/gohugoio/hugo/commit/6667c6d7430acc16b3683fbbacd263f1d00c8672) [@bep](https://github.com/bep) [#4865](https://github.com/gohugoio/hugo/issues/4865)
+* Add `strings.FirstUpper` [e5d66074](https://github.com/gohugoio/hugo/commit/e5d66074ce1ed4e0fe329e3fdef66f8b6fd5dc55) [@bep](https://github.com/bep) [#5174](https://github.com/gohugoio/hugo/issues/5174)
+
+### Core
+
+* Minor cleaning in the sorting code [2eed35c8](https://github.com/gohugoio/hugo/commit/2eed35c826e5de6aae432b36969a28c2ae3e0f02) [@bep](https://github.com/bep)
+* Make sure ambiguous lookups in GetPage gets an error [75e54345](https://github.com/gohugoio/hugo/commit/75e54345f9a7d786bb28af64ad80eb9502fee7c7) [@bep](https://github.com/bep) [#5138](https://github.com/gohugoio/hugo/issues/5138)
+* Allow creating page groups from any page collection [cfda13b3](https://github.com/gohugoio/hugo/commit/cfda13b36367465016f4458ab9924c948ed02b6f) [@vdanjean](https://github.com/vdanjean) [#4865](https://github.com/gohugoio/hugo/issues/4865)
+* Do not FirstUpper taxonomy titles [be3ae3ec](https://github.com/gohugoio/hugo/commit/be3ae3ec92da972a55112af39ce2e1c45121b9a5) [@Schnouki](https://github.com/Schnouki) [#5172](https://github.com/gohugoio/hugo/issues/5172)
+* Simplify some code [e38e8812](https://github.com/gohugoio/hugo/commit/e38e881248b7d20927eab0e56c85732e1acbc45e) [@moorereason](https://github.com/moorereason)
+* Add missing error checks [0665a395](https://github.com/gohugoio/hugo/commit/0665a3951be6ffc2551ef6664856da4cfccd45fa) [@moorereason](https://github.com/moorereason)
+* Remove extraneous createStaticFs call [1ed8c363](https://github.com/gohugoio/hugo/commit/1ed8c363367c2532014154e91eeade9b3a923f91) [@moorereason](https://github.com/moorereason)
+
+### Other
+
+* Add "go mod download" to CI scripts [cf47f43f](https://github.com/gohugoio/hugo/commit/cf47f43ff12ca5f5ea851a8b6761b19b5e4d4eba) [@bep](https://github.com/bep)
+* Regenerate CLI docs [3b6bd121](https://github.com/gohugoio/hugo/commit/3b6bd1210a2792c51c34b9c655cb8b7e9a0f15d7) [@bep](https://github.com/bep)
+* Document group [8388cd90](https://github.com/gohugoio/hugo/commit/8388cd90e89358f73ddcb7f496a1a8dc5c30c36c) [@bep](https://github.com/bep)
+* Make Data.Integrity be of type template.HTMLAttr [fe6a6f27](https://github.com/gohugoio/hugo/commit/fe6a6f2737769070fd64a5192ff685c9c89020bd) [@bep](https://github.com/bep)
+* Add directory based archetypes [2650fa77](https://github.com/gohugoio/hugo/commit/2650fa772b40846d9965f8c5f169286411f3beb2) [@bep](https://github.com/bep) [#4535](https://github.com/gohugoio/hugo/issues/4535)
+* Build on CircleCI outside of GOPATH [ef525b15](https://github.com/gohugoio/hugo/commit/ef525b15d4584886b52428bd7a35de835ab07a48) [@felicianotech](https://github.com/felicianotech) [#5135](https://github.com/gohugoio/hugo/issues/5135)
+* Prevent symbolic links from themes [f9168146](https://github.com/gohugoio/hugo/commit/f9168146978bd970d1f4fb061eff75264af88bb1) [@bep](https://github.com/bep)
+* Update releasenotes_writer.go [4b82f748](https://github.com/gohugoio/hugo/commit/4b82f74848836efbcf453c0122bd35555ee7517d) [@bep](https://github.com/bep)
+* Add docs for append [df50c108](https://github.com/gohugoio/hugo/commit/df50c108ba2f24936eff20b51d23f9328adb2d87) [@bep](https://github.com/bep) [#5190](https://github.com/gohugoio/hugo/issues/5190)
+* Set minifier to KeepEndTags [9b26b548](https://github.com/gohugoio/hugo/commit/9b26b5487b5c5142fe9fb58681fe7d1dac95a291) [@onedrawingperday](https://github.com/onedrawingperday)
+* Make JSON minification more generic [3dafe206](https://github.com/gohugoio/hugo/commit/3dafe206e31bb92f27802a04bf9159cbc20af234) [@zinefer](https://github.com/zinefer)
+* Update Mage [37d64634](https://github.com/gohugoio/hugo/commit/37d6463479952f7dfba59d899eed38b41e223283) [@bep](https://github.com/bep)
+* Update dependencies [bb2fe814](https://github.com/gohugoio/hugo/commit/bb2fe814c2db0c494b3b678a5da20a6cc0538857) [@bep](https://github.com/bep)
+* Improve some godoc comments [30bc4ed0](https://github.com/gohugoio/hugo/commit/30bc4ed0a01f965cc2f9187ccb6ab5d28a3149f6) [@moorereason](https://github.com/moorereason)
+* Update to latest Mage [3b103cb7](https://github.com/gohugoio/hugo/commit/3b103cb7b74228f26af5beb4cefc47edee794ce9) [@bep](https://github.com/bep)
+* Remove some duplicate code [c15c7da4](https://github.com/gohugoio/hugo/commit/c15c7da42a1c7bc535cc16cca2b341526f8cf169) [@bep](https://github.com/bep)
+* Update Dockerfile to Go 1.11 [bcbe57c6](https://github.com/gohugoio/hugo/commit/bcbe57c6e9243cbf3823f11b755f57c091cc1866) [@zyfdegh](https://github.com/zyfdegh) [#5145](https://github.com/gohugoio/hugo/issues/5145)
+* Init packages once [ea8ef573](https://github.com/gohugoio/hugo/commit/ea8ef573c6f869de95fdf4b19765d34026de6471) [@bep](https://github.com/bep)
+* Update script to Go 1.11 [293e1235](https://github.com/gohugoio/hugo/commit/293e12355dd9d9361774f5ab340cd8a03b4828a1) [@bep](https://github.com/bep) [#5127](https://github.com/gohugoio/hugo/issues/5127)
+* Remove the remains of Go Dep [fdf3c3b8](https://github.com/gohugoio/hugo/commit/fdf3c3b8234ed340f40a85fb76d96ae3a9ccf195) [@bep](https://github.com/bep) [#5115](https://github.com/gohugoio/hugo/issues/5115)
+* Update CONTRIBUTING.md [312d2252](https://github.com/gohugoio/hugo/commit/312d2252be6b7bf250fa4f8b1b541fdc13641940) [@bep](https://github.com/bep)
+* Update README.md [f627903e](https://github.com/gohugoio/hugo/commit/f627903efaa1a5f7e137c2d409efd1e1e2db47f6) [@bep](https://github.com/bep)
+* Fix golint issues [400fe96a](https://github.com/gohugoio/hugo/commit/400fe96aee8e38112e347e762661b8389701c938) [@moorereason](https://github.com/moorereason)
+* Fix golint godoc issues [3f45e729](https://github.com/gohugoio/hugo/commit/3f45e729f4e0296bb1a3558d60087bec8321444b) [@moorereason](https://github.com/moorereason)
+* Fix godoc comment [e03eb90a](https://github.com/gohugoio/hugo/commit/e03eb90a366159ed9ef9888246de87f283508866) [@moorereason](https://github.com/moorereason)
+* Fix typo in private func name [c915d0d3](https://github.com/gohugoio/hugo/commit/c915d0d3252007d61b680a388dcbe6b035d0adc8) [@moorereason](https://github.com/moorereason)
+* Fix golint godoc issues [f6f22ad9](https://github.com/gohugoio/hugo/commit/f6f22ad944a1c308fd823792b2fbff1504f42cef) [@moorereason](https://github.com/moorereason)
+* Fix filepath issue in test [d970327d](https://github.com/gohugoio/hugo/commit/d970327d7b994b495ef3bb468c3e0599b0deef5a) [@moorereason](https://github.com/moorereason)
+* Fix golint issues [0013bea9](https://github.com/gohugoio/hugo/commit/0013bea901ee2124f4c18f9728abf47c3880f97d) [@moorereason](https://github.com/moorereason)
+* Fix golint godoc issue [ffaa73dc](https://github.com/gohugoio/hugo/commit/ffaa73dc8aa860edb3476b2a460774071b8470a4) [@moorereason](https://github.com/moorereason)
+* Fix golint godoc issue [f8d8c854](https://github.com/gohugoio/hugo/commit/f8d8c85428f527139c20369910230741dcaf2969) [@moorereason](https://github.com/moorereason)
+* Fix golint issue [10dc87bf](https://github.com/gohugoio/hugo/commit/10dc87bf866f7a4f99c248436c38edf0ecdd157f) [@moorereason](https://github.com/moorereason)
+* Fix golint issues [7231869b](https://github.com/gohugoio/hugo/commit/7231869ba87f4e8d08e94dce18f20b7ed4fa2e15) [@moorereason](https://github.com/moorereason)
+* Fix golint godoc issues [600047ff](https://github.com/gohugoio/hugo/commit/600047ff1cb95d061af1983b9a755157eb4941f8) [@moorereason](https://github.com/moorereason)
+* Fix golint issues [5f2e1cb8](https://github.com/gohugoio/hugo/commit/5f2e1cb8969c2adac6c866b57cc331e1bc16d4e9) [@moorereason](https://github.com/moorereason)
+* Fix golint issues [c8ce6504](https://github.com/gohugoio/hugo/commit/c8ce65046dc7539f3bf5f6dd35fa7ece2bec866d) [@moorereason](https://github.com/moorereason)
+* Fix most golint issues [a53f9623](https://github.com/gohugoio/hugo/commit/a53f962312e273cea9fe460b40655350a82210f2) [@moorereason](https://github.com/moorereason)
+* Fix golint issues [daffeec3](https://github.com/gohugoio/hugo/commit/daffeec30d9d67017ec84064e15fd946b0b0cb0d) [@moorereason](https://github.com/moorereason)
+* Fix golint errors [b8b91f55](https://github.com/gohugoio/hugo/commit/b8b91f550646b2620649c3504e14a441975bea9f) [@moorereason](https://github.com/moorereason)
+* Fix golint issues [f0effac8](https://github.com/gohugoio/hugo/commit/f0effac80426325040c4bc703cd610f434d0b5a8) [@moorereason](https://github.com/moorereason)
+* Fix broken Travis config [2cf8fe2e](https://github.com/gohugoio/hugo/commit/2cf8fe2ea218d37776af72893691e772737750e3) [@bep](https://github.com/bep)
+* Fix error message for go vet [47d4edce](https://github.com/gohugoio/hugo/commit/47d4edce6083bab1c190dad99fefb7c73afc6af8) [@mdhender](https://github.com/mdhender)
+
+
+## Fixes
+
+* Compare every element in pages cache [ed4f1edb](https://github.com/gohugoio/hugo/commit/ed4f1edbd729bf75af89879b76fbad931693cd67) [@bep](https://github.com/bep) [#5239](https://github.com/gohugoio/hugo/issues/5239)
+* Revise error handling in `getJSON` and `getCSV` [43d44652](https://github.com/gohugoio/hugo/commit/43d446522a7c09af4bf6879f93341d8ff62654d1) [@bep](https://github.com/bep) [#5076](https://github.com/gohugoio/hugo/issues/5076)
+* Show error on `union` or `intersect` of uncomparable types [4f72e791](https://github.com/gohugoio/hugo/commit/4f72e79120a4f964330d10c8ebe9aceb2b5761a7) [@moorereason](https://github.com/moorereason) [#3820](https://github.com/gohugoio/hugo/issues/3820)
+* Do not set RSS as Kind in RSS output [555a5612](https://github.com/gohugoio/hugo/commit/555a5612b2641075b3e1b3b7af8ce9b5aba9f200) [@bep](https://github.com/bep) [#5138](https://github.com/gohugoio/hugo/issues/5138)
+
+
+
+
+
+
+
+
diff --git a/docs/content/en/news/0.49.1-relnotes/index.md b/docs/content/en/news/0.49.1-relnotes/index.md
new file mode 100644
index 000000000..a3858a9e1
--- /dev/null
+++ b/docs/content/en/news/0.49.1-relnotes/index.md
@@ -0,0 +1,22 @@
+
+---
+date: 2018-10-10
+title: "Hugo 0.49.1: Bug Fix"
+description: "This release fixes an issue where resources.Concat would sometimes fail."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+This is a bug-fix release with 2 related fixes. This was introduced in Hugo 0.49. The most notable error situation was that `resources.Concat` could fail in some situations.
+
+
+* Fix handling of different interface types in Slice [e2201ef1](https://github.com/gohugoio/hugo/commit/e2201ef15fdefe257ad284b2df4ccc8f8c38fac2) [@bep](https://github.com/bep) [#5269](https://github.com/gohugoio/hugo/issues/5269)
+
+* Improve append in Scratch [23f48c30](https://github.com/gohugoio/hugo/commit/23f48c300cb5ffe0fe43c88464f38c68831a17ad) [@bep](https://github.com/bep) [#5275](https://github.com/gohugoio/hugo/issues/5275)
+
+
+
+
+
diff --git a/docs/content/en/news/0.49.2-relnotes/index.md b/docs/content/en/news/0.49.2-relnotes/index.md
new file mode 100644
index 000000000..1d24cd624
--- /dev/null
+++ b/docs/content/en/news/0.49.2-relnotes/index.md
@@ -0,0 +1,17 @@
+---
+date: 2018-10-11
+title: "Hugo 0.49.2: One Bug Fix"
+description: "Fixes a type issue in append and Scratch.Add"
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+---
+
+This fixes one regression from Hugo `0.42.1`:
+
+* Fix type checking in Append [2159d77f](https://github.com/gohugoio/hugo/commit/2159d77f368eb1f78e51dd94133554f88052d85f) [@bep](https://github.com/bep) [#5303](https://github.com/gohugoio/hugo/issues/5303)
+
+
+
+
+
diff --git a/docs/content/en/news/0.50-relnotes/featured-hugo-50-poster.png b/docs/content/en/news/0.50-relnotes/featured-hugo-50-poster.png
new file mode 100644
index 000000000..de5b76d79
--- /dev/null
+++ b/docs/content/en/news/0.50-relnotes/featured-hugo-50-poster.png
Binary files differ
diff --git a/docs/content/en/news/0.50-relnotes/index.md b/docs/content/en/news/0.50-relnotes/index.md
new file mode 100644
index 000000000..46ab61cd0
--- /dev/null
+++ b/docs/content/en/news/0.50-relnotes/index.md
@@ -0,0 +1,150 @@
+
+---
+date: 2018-10-29
+title: "Hugo 0.50: Errors so Good, You’ll Want to Fail!"
+description: "Errors with full filename and line and column number, shown in browser. And improved Fast Render Mode …"
+categories: ["Releases"]
+---
+
+Hugo `0.50` brings **greatly improved error messages**, and we now also show them in the browser. Having error messages with filename, line- and column number greatly simplify troubleshooting. Many editors (like VS Code) even let you click and navigate directly to the problematic line. If your editor requires a different log format, you can set it via the `HUGO_FILE_LOG_FORMAT` OS environment variable:
+
+
+```bash
+env HUGO_FILE_LOG_FORMAT="\":file::line::col\"" hugo server
+```
+
+But this release isn't all about error handling. Getting line- and column number into "every" error also meant that we had to consolidate and simplify some code paths, which, as a nice side effect, made Hugo a little bit faster. Benchmarks show it running **about 5% faster and consume about 8% less memory**.
+
+Also, we have now implemented **"render on demand"** in Hugo's Fast Render Mode (default when running `hugo server`). This means that you should now always see updated content when navigating around the site after a change.
+
+This release represents **88 contributions by 14 contributors** to the main Hugo code base.
+[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@moorereason](https://github.com/moorereason), [@anthonyfok](https://github.com/anthonyfok), and [@GregorioMartinez](https://github.com/GregorioMartinez) for their ongoing contributions.
+
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) and [@onedrawingperday](https://github.com/onedrawingperday) for their relentless work on keeping the themes site in pristine condition and to [@kaushalmodi](https://github.com/kaushalmodi) for his great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **14 contributions by 9 contributors**. A special thanks to [@bep](https://github.com/bep), [@NotWoods](https://github.com/NotWoods), [@Nick-Rivera](https://github.com/Nick-Rivera), and [@tomanistor](https://github.com/tomanistor) for their work on the documentation site.
+
+Hugo now has:
+
+* 29842+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 441+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 275+ [themes](http://themes.gohugo.io/)
+
+## Notes
+
+* You should not get stale content in Fast Render Mode anymore.
+* Errors will now show up in the browser by default, turn it off by running `hugo server --disableBrowserError`
+* `jsonify` will now produce pretty/indented output
+
+## Enhancements
+
+### Templates
+
+* Handle truncated identifiers in Go template errors [2d7709d1](https://github.com/gohugoio/hugo/commit/2d7709d15584e4c11138cd7fe92717a2a58e4585) [@bep](https://github.com/bep) [#5346](https://github.com/gohugoio/hugo/issues/5346)
+* Update Jsonify to return pretty-print output [5a52cd5f](https://github.com/gohugoio/hugo/commit/5a52cd5f920bb3d067ab1682adece9f813c67ba1) [@SeanPrashad](https://github.com/SeanPrashad) [#5040](https://github.com/gohugoio/hugo/issues/5040)
+* Improve the Execute panic error message [0fe4ff18](https://github.com/gohugoio/hugo/commit/0fe4ff18751156fa072e1f83077e49a8597e7dcd) [@bep](https://github.com/bep) [#5327](https://github.com/gohugoio/hugo/issues/5327)
+* Use .Lastmod in embedded schema template [c21e5179](https://github.com/gohugoio/hugo/commit/c21e5179ce9a370c416c01fbe9472be1fb5c6650) [@akshaybabloo](https://github.com/akshaybabloo) [#5320](https://github.com/gohugoio/hugo/issues/5320)
+* Cast IsSet key to int for indexed types [0d5110d0](https://github.com/gohugoio/hugo/commit/0d5110d03324380cb4a288d3fa08c1b86ba227da) [@moorereason](https://github.com/moorereason) [#3681](https://github.com/gohugoio/hugo/issues/3681)
+* Add a delimiter parameter to lang.NumFmt [ce264b93](https://github.com/gohugoio/hugo/commit/ce264b936ce9f589bd889e18762881cff8bc9cd0) [@moorereason](https://github.com/moorereason) [#5260](https://github.com/gohugoio/hugo/issues/5260)
+
+### Core
+
+* Adjust error test to make it pass on Go tip [acc14b46](https://github.com/gohugoio/hugo/commit/acc14b4646d849e09e8da37552d4f4f777d0fce2) [@bep](https://github.com/bep)
+* Rename some page_* files [e3ed4a83](https://github.com/gohugoio/hugo/commit/e3ed4a83b8e92ce9bf070f7b41780798b006e848) [@bep](https://github.com/bep)
+* Get file context in "config parse failed" errors [ed7b3e26](https://github.com/gohugoio/hugo/commit/ed7b3e261909fe425ef64216f12806840c45b205) [@bep](https://github.com/bep) [#5325](https://github.com/gohugoio/hugo/issues/5325)
+* Improve errors in /i18n handlling [2bf686ee](https://github.com/gohugoio/hugo/commit/2bf686ee217808186385bfcf6156f15bbdb33651) [@bep](https://github.com/bep) [#5324](https://github.com/gohugoio/hugo/issues/5324)
+* Improve errors in /data handlling [9f74dc2a](https://github.com/gohugoio/hugo/commit/9f74dc2a52b6f568b5a060b7a4be47196804b01f) [@bep](https://github.com/bep) [#5324](https://github.com/gohugoio/hugo/issues/5324)
+* Continue the file context/line number errors work [d1661b82](https://github.com/gohugoio/hugo/commit/d1661b823af25c50d3bbe5366ea40a3cdd52e237) [@bep](https://github.com/bep) [#5324](https://github.com/gohugoio/hugo/issues/5324)
+* Remove the now superflous Source struct [7930d213](https://github.com/gohugoio/hugo/commit/7930d2132a3c36c1aaca20f16f56978c84656b0a) [@bep](https://github.com/bep) [#5324](https://github.com/gohugoio/hugo/issues/5324)
+* Redo the summary delimiter logic [44da60d8](https://github.com/gohugoio/hugo/commit/44da60d869578423dea529db62ed613588a2a560) [@bep](https://github.com/bep) [#5324](https://github.com/gohugoio/hugo/issues/5324)
+* Integrate new page parser [1e3e3400](https://github.com/gohugoio/hugo/commit/1e3e34002dae3d4a980141efcc86886e7de5bef8) [@bep](https://github.com/bep) [#5324](https://github.com/gohugoio/hugo/issues/5324)
+* Use []byte in shortcode parsing [1b7ecfc2](https://github.com/gohugoio/hugo/commit/1b7ecfc2e176315b69914756c70b46306561e4d1) [@bep](https://github.com/bep) [#5324](https://github.com/gohugoio/hugo/issues/5324)
+* Use stdlib context package [4b4af2c5](https://github.com/gohugoio/hugo/commit/4b4af2c52e658d516dd4bfaf59fef4f054dabec3) [@GregorioMartinez](https://github.com/GregorioMartinez)
+* Normalize permalink path segments [fae48d74](https://github.com/gohugoio/hugo/commit/fae48d7457de96969ec53349194dcbfa45adc269) [@moorereason](https://github.com/moorereason) [#5223](https://github.com/gohugoio/hugo/issues/5223)[#4926](https://github.com/gohugoio/hugo/issues/4926)
+* Improve error message for bad taxonomy weights [d3b81ee5](https://github.com/gohugoio/hugo/commit/d3b81ee58e8fd3a0ab8265a2898d66cbcdf6a7c1) [@moorereason](https://github.com/moorereason)
+* Cast taxonomy weight parameters to int [1fd30d46](https://github.com/gohugoio/hugo/commit/1fd30d462ee7f67fde6f29d170af1d225258322b) [@moorereason](https://github.com/moorereason) [#4628](https://github.com/gohugoio/hugo/issues/4628)
+* Allow nil to be unwrapped as *Page [498d6299](https://github.com/gohugoio/hugo/commit/498d6299581bead0f582431b8133d8b5f8760618) [@moorereason](https://github.com/moorereason) [#5043](https://github.com/gohugoio/hugo/issues/5043)
+* Be a litle more specific in NextPage TODO [fb732d53](https://github.com/gohugoio/hugo/commit/fb732d5322381ee7f3a849258419cef7bbf1487b) [@bep](https://github.com/bep)
+* Introduce Page.NextPage and Page.PrevPage [ad705aac](https://github.com/gohugoio/hugo/commit/ad705aac0649fa3102f7639bc4db65d45e108ee2) [@felicianotech](https://github.com/felicianotech) [#1061](https://github.com/gohugoio/hugo/issues/1061)
+
+### Other
+
+* Update go.sum [7082a5d1](https://github.com/gohugoio/hugo/commit/7082a5d14382acfc300ae4f66d07a14100e2358c) [@bep](https://github.com/bep)
+* Update minify [aa281b51](https://github.com/gohugoio/hugo/commit/aa281b5135db2e84b9e21b5f38a6cb63cf3ab158) [@bep](https://github.com/bep) [#5261](https://github.com/gohugoio/hugo/issues/5261)
+* Regenerate CLI docs [32501987](https://github.com/gohugoio/hugo/commit/325019872467ee152ea56329a796acf35dec6fb3) [@bep](https://github.com/bep)
+* Make sure the global logger also gets colored labels [9c88a8a5](https://github.com/gohugoio/hugo/commit/9c88a8a55adf7779039504fa77d74ec80d658c40) [@bep](https://github.com/bep) [#4414](https://github.com/gohugoio/hugo/issues/4414)
+* Avoid using the global logger [95e72f5e](https://github.com/gohugoio/hugo/commit/95e72f5e8e4634fbbb2ea7ece2156487230ad1d4) [@bep](https://github.com/bep) [#4414](https://github.com/gohugoio/hugo/issues/4414)
+* Add color to ERROR and WARN [1c7b7b4e](https://github.com/gohugoio/hugo/commit/1c7b7b4ef293aa133e5b55f3ebb2d37d8839532f) [@bep](https://github.com/bep) [#4414](https://github.com/gohugoio/hugo/issues/4414)
+* Make the file error log format configurable [1ad117cb](https://github.com/gohugoio/hugo/commit/1ad117cbe2903aa9d029f90750acf633eb2a51a2) [@bep](https://github.com/bep) [#5352](https://github.com/gohugoio/hugo/issues/5352)
+* Allow a mix of slice types in append/Scratch.Add [dac7092a](https://github.com/gohugoio/hugo/commit/dac7092a9cb22d59db28fb15af15f7b14ff47588) [@bep](https://github.com/bep) [#5361](https://github.com/gohugoio/hugo/issues/5361)
+* Allow .Data.Integrity to be accessed on its own [b27ccf34](https://github.com/gohugoio/hugo/commit/b27ccf34bf4e5ee618a66fa11c68a9690e395034) [@bep](https://github.com/bep) [#5296](https://github.com/gohugoio/hugo/issues/5296)
+* Update minify [83c873ff](https://github.com/gohugoio/hugo/commit/83c873ff37ddd379181540021232f026e7678486) [@bep](https://github.com/bep) [#5261](https://github.com/gohugoio/hugo/issues/5261)
+* Update cast [a2440dc0](https://github.com/gohugoio/hugo/commit/a2440dc0e2d46ef774305cd5e4fea5ff2bdd5f11) [@bep](https://github.com/bep) [#5340](https://github.com/gohugoio/hugo/issues/5340)
+* Truncate the error log on repeated config errors [1e9ac3dc](https://github.com/gohugoio/hugo/commit/1e9ac3dcc21e8f78d3f0a0ba4f35f6c142dfa6bc) [@bep](https://github.com/bep)
+* Regenerate CLI docs [40e99672](https://github.com/gohugoio/hugo/commit/40e99672b6f697a614485aace07ca84268f6c787) [@bep](https://github.com/bep) [#5354](https://github.com/gohugoio/hugo/issues/5354)
+* Serialize image processing [3a3badfd](https://github.com/gohugoio/hugo/commit/3a3badfd1d4b1d4c9863ecaf029512d36136fa0f) [@bep](https://github.com/bep) [#5220](https://github.com/gohugoio/hugo/issues/5220)
+* Only show Ansi escape codes if in a terminal [df021317](https://github.com/gohugoio/hugo/commit/df021317a964a482cd1cd579de5a12d50faf0d08) [@bep](https://github.com/bep)
+* Read disableFastRender from flag even if it's not changed [78a4c2e3](https://github.com/gohugoio/hugo/commit/78a4c2e32ef9ea8e92bb7bb3586e4c22b02eb494) [@bep](https://github.com/bep) [#5353](https://github.com/gohugoio/hugo/issues/5353)
+* Use overflow-x: auto; for browser errors [d4ebfea1](https://github.com/gohugoio/hugo/commit/d4ebfea1fffdc35059f42a46387e0aaf0ea877d2) [@bep](https://github.com/bep)
+* Remove the ANSI color for the browser error version [93aa6261](https://github.com/gohugoio/hugo/commit/93aa6261b4fc8caa74afef97b6304ea35dfd7d0e) [@bep](https://github.com/bep)
+* Add some color to the relevant filenames in terminal log [deff9e15](https://github.com/gohugoio/hugo/commit/deff9e154bc0371af56741ddb22cb1f9e392838a) [@bep](https://github.com/bep) [#5344](https://github.com/gohugoio/hugo/issues/5344)
+* Run gofmt -s [889aca05](https://github.com/gohugoio/hugo/commit/889aca054a267506a1c7cfaa3992d324764d6358) [@bep](https://github.com/bep)
+* Resolve error handling/parser related TODOs [6636cf1b](https://github.com/gohugoio/hugo/commit/6636cf1bea77d20ef2a72a45fae59ac402fb133b) [@bep](https://github.com/bep) [#5324](https://github.com/gohugoio/hugo/issues/5324)
+* Improve handling of JSON errors [f669ef6b](https://github.com/gohugoio/hugo/commit/f669ef6bec25155d015b6ab231c53caef4fa5cdc) [@bep](https://github.com/bep) [#5324](https://github.com/gohugoio/hugo/issues/5324)
+* Convert the rest to new page parser code paths [eb038cfa](https://github.com/gohugoio/hugo/commit/eb038cfa0a8ada29dfcba1204ec5c432da9ed7e0) [@bep](https://github.com/bep) [#5324](https://github.com/gohugoio/hugo/issues/5324)
+* Consolidate the metadata decoders [129c27ee](https://github.com/gohugoio/hugo/commit/129c27ee6e9fed98dbfebeaa272fd52757b475b2) [@bep](https://github.com/bep) [#5324](https://github.com/gohugoio/hugo/issues/5324)
+* Use []byte in page lexer [27f5a906](https://github.com/gohugoio/hugo/commit/27f5a906a2a34e3b8348c8baeea48355352b5bbb) [@bep](https://github.com/bep) [#5324](https://github.com/gohugoio/hugo/issues/5324)
+* Add front matter etc. support [2fdc4a24](https://github.com/gohugoio/hugo/commit/2fdc4a24d5450a98cf38a4456e8e0e8e97a3343d) [@bep](https://github.com/bep) [#5324](https://github.com/gohugoio/hugo/issues/5324)
+* File renames and splitting [f6863e1e](https://github.com/gohugoio/hugo/commit/f6863e1ef725f654a4c869ef4955f9add6908a46) [@bep](https://github.com/bep) [#5324](https://github.com/gohugoio/hugo/issues/5324)
+* Move the shortcode parser to the new pageparser package [d6c16afd](https://github.com/gohugoio/hugo/commit/d6c16afde0ce62cfea73447f30d6ed2b8ef4b411) [@bep](https://github.com/bep) [#5324](https://github.com/gohugoio/hugo/issues/5324)
+* Avoid panic in error handler on config errors [6f3716dc](https://github.com/gohugoio/hugo/commit/6f3716dc22e373097a38d053f5415feca602f330) [@bep](https://github.com/bep)
+* Prevent stale content in Fast Render Mode [4a366fcf](https://github.com/gohugoio/hugo/commit/4a366fcfee24b3a5a5045b16c3b87b76147adf5e) [@bep](https://github.com/bep) [#5281](https://github.com/gohugoio/hugo/issues/5281)
+* Allow date and slug from filename for leaf bundles [1f42e47e](https://github.com/gohugoio/hugo/commit/1f42e47e475c0cd684426dd230de411d4c385a3c) [@Japanuspus](https://github.com/Japanuspus) [#4558](https://github.com/gohugoio/hugo/issues/4558)
+* Show server error info in browser [35fbfb19](https://github.com/gohugoio/hugo/commit/35fbfb19a173b01bc881f2bbc5d104136633a7ec) [@bep](https://github.com/bep) [#5284](https://github.com/gohugoio/hugo/issues/5284)[#5290](https://github.com/gohugoio/hugo/issues/5290)[#5325](https://github.com/gohugoio/hugo/issues/5325)[#5324](https://github.com/gohugoio/hugo/issues/5324)
+* Add .gitignore "hugo new site" [92979d92](https://github.com/gohugoio/hugo/commit/92979d92889ff8991acfadd42982c2e55d01b163) [@napei](https://github.com/napei)
+* Optimize integrity string generation [0a3340e9](https://github.com/gohugoio/hugo/commit/0a3340e95254597bc8a9feb250f2733b7d51edf8) [@moorereason](https://github.com/moorereason)
+* Add help text to "hugo new" [6b21ac3e](https://github.com/gohugoio/hugo/commit/6b21ac3e67cb101255e8c3d9dbf076391a9eed8d) [@elliotforbes](https://github.com/elliotforbes)
+* Set "extended" tag based on build_url on Launchpad [d1442053](https://github.com/gohugoio/hugo/commit/d14420539ac04d31dde2252eee66d7e4c7749780) [@anthonyfok](https://github.com/anthonyfok)
+* Call rst2html directly on *nix [3d4a9882](https://github.com/gohugoio/hugo/commit/3d4a9882bfc81215fb4f9eba8859324958747d4a) [@shreyanshk](https://github.com/shreyanshk)
+* Update URLs to stop 301 redirects [bdca9727](https://github.com/gohugoio/hugo/commit/bdca9727944e4cbb5a9372a8404e948ffea7c31c) [@benabbottnz](https://github.com/benabbottnz)
+* Merge branch 'release-0.49.2' [604ddb90](https://github.com/gohugoio/hugo/commit/604ddb90c5d6f1ca5583be1ec0ea8e48f014741a) [@bep](https://github.com/bep)
+* Release 0.49.2 [c397f2c0](https://github.com/gohugoio/hugo/commit/c397f2c08087cf4cda3abe2d146e30f58d6d3216) [@bep](https://github.com/bep)
+* Merge branch 'release-0.49.1' [3583dd6d](https://github.com/gohugoio/hugo/commit/3583dd6d713c243808b5e8724b32565ceaf66104) [@bep](https://github.com/bep)
+* Relase 0.49.1 [235acf22](https://github.com/gohugoio/hugo/commit/235acf22321475895442ce49ca5d16be273c1e1f) [@bep](https://github.com/bep)
+* Improve append in Scratch [23f48c30](https://github.com/gohugoio/hugo/commit/23f48c300cb5ffe0fe43c88464f38c68831a17ad) [@bep](https://github.com/bep) [#5275](https://github.com/gohugoio/hugo/issues/5275)
+* Add GOPATH Hugo building tip [b5e17f7c](https://github.com/gohugoio/hugo/commit/b5e17f7c837ce796e1094c8033fa7084510402fb) [@bep](https://github.com/bep)
+* Consolidate MakeSegment vs MakePathSanitized [e421696d](https://github.com/gohugoio/hugo/commit/e421696d02bfb8764ae57238e211ce0e85e9782e) [@bep](https://github.com/bep) [#4926](https://github.com/gohugoio/hugo/issues/4926)
+* Render Markdown in figure shortcode "caption" and "attr" params [68181703](https://github.com/gohugoio/hugo/commit/6818170308994b5f01dec7a559f92d6c7c5ca100) [@kaushalmodi](https://github.com/kaushalmodi)
+* Re-organize the figure shortcode for better readability [c5279064](https://github.com/gohugoio/hugo/commit/c5279064df9664d6b2ad277e2fba1e4bb3b0f4be) [@kaushalmodi](https://github.com/kaushalmodi)
+* Update README & CONTRIBUTING [152cffb1](https://github.com/gohugoio/hugo/commit/152cffb13a237651c2277dc6c2c9e4172d58b3df) [@GregorioMartinez](https://github.com/GregorioMartinez)
+* Add custom x-nodejs plugin to support ppc64el and s390x [91f49c07](https://github.com/gohugoio/hugo/commit/91f49c0700dde13e16f42c745584a0bef60c6fe2) [@anthonyfok](https://github.com/anthonyfok)
+* Fetch mage with GO111MODULE=off [a475bf12](https://github.com/gohugoio/hugo/commit/a475bf125cd76dacc1bf7ccbcc263a7b59efc510) [@anthonyfok](https://github.com/anthonyfok)
+* Use build-snaps instead of building go from source [fa873a6c](https://github.com/gohugoio/hugo/commit/fa873a6cb3f0fa81002fcd725ecd52fc4b9df48f) [@anthonyfok](https://github.com/anthonyfok)
+* Skip "mage -v test" due to build failure on Launchpad [52ac85fb](https://github.com/gohugoio/hugo/commit/52ac85fbc4d4066b5e13df454593597df0166262) [@anthonyfok](https://github.com/anthonyfok)
+* Move snapcraft.yaml to snap/snapcraft.yaml [27d42111](https://github.com/gohugoio/hugo/commit/27d4211187d4617f4b3afa970f91349567886748) [@anthonyfok](https://github.com/anthonyfok)
+* Update the temp docker script [48413d76](https://github.com/gohugoio/hugo/commit/48413d76f44ecfc9b90f9df63974080f6b285667) [@bep](https://github.com/bep)
+
+## Fixes
+
+### Templates
+
+* Fix baseof.html in error message [646a52a5](https://github.com/gohugoio/hugo/commit/646a52a5c5f52890f2d0270b68ba0f863047484a) [@bep](https://github.com/bep) [#5288](https://github.com/gohugoio/hugo/issues/5288)
+* Fix handling of different interface types in Slice [10ac2ec4](https://github.com/gohugoio/hugo/commit/10ac2ec4466090957e1f6897906ddeb1e0b13673) [@bep](https://github.com/bep) [#5269](https://github.com/gohugoio/hugo/issues/5269)
+
+### Core
+
+* Fix test on Windows [083311d0](https://github.com/gohugoio/hugo/commit/083311d0336ced35909b3375950f7817ecf95ed0) [@bep](https://github.com/bep)
+* Fix FuzzyWordCount test error message [06d28a46](https://github.com/gohugoio/hugo/commit/06d28a464d086880f52dd850f91e668ab957b31f) [@GregorioMartinez](https://github.com/GregorioMartinez)
+
+### Other
+
+* Fix archetype handling of directories in theme [78578632](https://github.com/gohugoio/hugo/commit/78578632f545283741a01f024a6ccedc0b695a30) [@bep](https://github.com/bep) [#5318](https://github.com/gohugoio/hugo/issues/5318)
+* Simple doc fix in CONTRIBUTING.md [3a308912](https://github.com/gohugoio/hugo/commit/3a3089121b852332b5744d1f566959c8cf93cef4) [@krisbudhram](https://github.com/krisbudhram)
+* Fix type checking in Append [2159d77f](https://github.com/gohugoio/hugo/commit/2159d77f368eb1f78e51dd94133554f88052d85f) [@bep](https://github.com/bep) [#5303](https://github.com/gohugoio/hugo/issues/5303)
+* Fix go plugin build failure by renaming go.mod [3033a9a3](https://github.com/gohugoio/hugo/commit/3033a9a37eb66c08e60f9fe977f29d22bd646857) [@anthonyfok](https://github.com/anthonyfok)
+
+
+
+
+
diff --git a/docs/content/en/news/0.51-relnotes/featured-hugo-51-poster.png b/docs/content/en/news/0.51-relnotes/featured-hugo-51-poster.png
new file mode 100644
index 000000000..07755a1ab
--- /dev/null
+++ b/docs/content/en/news/0.51-relnotes/featured-hugo-51-poster.png
Binary files differ
diff --git a/docs/content/en/news/0.51-relnotes/index.md b/docs/content/en/news/0.51-relnotes/index.md
new file mode 100644
index 000000000..8590a422c
--- /dev/null
+++ b/docs/content/en/news/0.51-relnotes/index.md
@@ -0,0 +1,102 @@
+
+---
+date: 2018-11-07
+title: "Hugo 0.51: The 30K Stars Edition!"
+description: "Bug fixes, new template functions and more error improvements."
+categories: ["Releases"]
+---
+
+Hugo reached [30 000 stars on GitHub](https://github.com/gohugoio/hugo/stargazers) this week, which is a good occasion to do a follow-up release of the great Hugo `0.50`. This is mostly a bug fix release, but it also adds some useful new functionality, two examples are the new template funcs [complement](https://gohugo.io/functions/complement/) and [symdiff](https://gohugo.io/functions/symdiff/). This release also continues the work on improving Hugo's error messages. And with `.Position` now available on shortcodes, you can also improve your own error messages inside your custom shortcodes:
+
+
+```bash
+{{ with .Get "name" }}
+{{ else }}
+{{ errorf "missing value for param 'name': %s" .Position }}
+{{ end }}
+```
+
+When the above fails, you will see an `ERROR` log similar to the below:
+
+```bash
+ERROR 2018/11/07 10:05:55 missing value for param name: "/sites/hugoDocs/content/en/variables/shortcodes.md:32:1"
+```
+
+This release represents **31 contributions by 5 contributors** to the main Hugo code base.
+[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@krisbudhram](https://github.com/krisbudhram), [@LorenzCK](https://github.com/LorenzCK), and [@coliff](https://github.com/coliff) for their ongoing contributions.
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) and [@onedrawingperday](https://github.com/onedrawingperday) for their relentless work on keeping the themes site in pristine condition and to [@kaushalmodi](https://github.com/kaushalmodi) for his great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **6 contributions by 5 contributors**. A special thanks to [@ikemo3](https://github.com/ikemo3), [@maiki](https://github.com/maiki), [@morya](https://github.com/morya), and [@regisphilibert](https://github.com/regisphilibert) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 30095+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 441+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 276+ [themes](http://themes.gohugo.io/)
+
+
+## Notes
+
+* Remove deprecated useModTimeAsFallback [0bc4b024](https://github.com/gohugoio/hugo/commit/0bc4b0246dd6b7d71f8676a52644077a4f70ec8f) [@bep](https://github.com/bep)
+* Bump to ERROR for the deprecated Pages.Sort [faeb55c1](https://github.com/gohugoio/hugo/commit/faeb55c1d827f0ea994551a103ff4f7448786d39) [@bep](https://github.com/bep)
+* Deprecate .Site.Ref and .Site.RelRef [6c6a6c87](https://github.com/gohugoio/hugo/commit/6c6a6c87ec2b5ac7342e268ab47861429230f7f4) [@bep](https://github.com/bep) [#5386](https://github.com/gohugoio/hugo/issues/5386)
+
+## Enhancements
+
+### Templates
+
+* Properly handle pointer types in complement/symdiff [79a06aa4](https://github.com/gohugoio/hugo/commit/79a06aa4b64b526c242dfa41f2c7bc24e1352d5b) [@bep](https://github.com/bep)
+* Add collections.SymDiff [488776b6](https://github.com/gohugoio/hugo/commit/488776b6498d1377718133d42daa87ce1236215d) [@bep](https://github.com/bep) [#5410](https://github.com/gohugoio/hugo/issues/5410)
+* Add collections.Complement [42d8dfc8](https://github.com/gohugoio/hugo/commit/42d8dfc8c88af03ea926a59bc2332acc70cca5f6) [@bep](https://github.com/bep) [#5400](https://github.com/gohugoio/hugo/issues/5400)
+
+### Core
+
+* Improve error message on duplicate menu items [3a44920e](https://github.com/gohugoio/hugo/commit/3a44920e79ef86003555d8a4860c29257b2914f0) [@bep](https://github.com/bep)
+* Add .Position to shortcode [33a7b36f](https://github.com/gohugoio/hugo/commit/33a7b36fd42ee31dd79115ec6639bed24247332f) [@bep](https://github.com/bep) [#5371](https://github.com/gohugoio/hugo/issues/5371)
+
+### Other
+
+* Document shortcode error handling [e456e34b](https://github.com/gohugoio/hugo/commit/e456e34bdbde058243eb0a5d3c0017748639e08e) [@bep](https://github.com/bep)
+* Document symdiff [5d14d04a](https://github.com/gohugoio/hugo/commit/5d14d04ac678ad24e4946ed2a581ab71b3834def) [@bep](https://github.com/bep)
+* Document complement [ddcb4028](https://github.com/gohugoio/hugo/commit/ddcb402859b50193bfd6d8b752b568d26d14f603) [@bep](https://github.com/bep)
+* Update minify [d212f609](https://github.com/gohugoio/hugo/commit/d212f60949b6afefbe5aa79394f98dbddf7be068) [@bep](https://github.com/bep)
+* Re-generate CLI docs [2998fa0c](https://github.com/gohugoio/hugo/commit/2998fa0cd5bad161b9c802d2409d8c9c81155011) [@bep](https://github.com/bep)
+* Add --minify to hugo server [5b1edd28](https://github.com/gohugoio/hugo/commit/5b1edd281a493bdb27af4dc3c8fae7e10dd54830) [@bep](https://github.com/bep)
+* Make WARN the new default log log level [4b7d3e57](https://github.com/gohugoio/hugo/commit/4b7d3e57a40214a1269eda59731aa22a8f4463dd) [@bep](https://github.com/bep) [#5203](https://github.com/gohugoio/hugo/issues/5203)
+* Regenerate the docs helper [486bc46a](https://github.com/gohugoio/hugo/commit/486bc46a5217a9d70fe0d14ab9261d7b4eb026d6) [@bep](https://github.com/bep)
+* Skip watcher event files if matched in ignoreFiles [f8446188](https://github.com/gohugoio/hugo/commit/f8446188dbec8378f34f0fea39161a49fcc46083) [@krisbudhram](https://github.com/krisbudhram)
+* Update Chroma [d523aa4b](https://github.com/gohugoio/hugo/commit/d523aa4bb03e913f55c2f89544e6112e320c975a) [@bep](https://github.com/bep) [#5392](https://github.com/gohugoio/hugo/issues/5392)
+* Add file (line/col) info to ref/relref errors [1d18eb05](https://github.com/gohugoio/hugo/commit/1d18eb0574a57c3e9f468659d076a666a3dd76f2) [@bep](https://github.com/bep) [#5371](https://github.com/gohugoio/hugo/issues/5371)
+* Improve log color regexp [d3a98325](https://github.com/gohugoio/hugo/commit/d3a98325c31d7f02f0762e589a4986e55b2a0da2) [@bep](https://github.com/bep)
+* Correct minor typo (#5372) [e65268f2](https://github.com/gohugoio/hugo/commit/e65268f2c2dd5ac54681d3266564901d99ed3ea3) [@coliff](https://github.com/coliff)
+
+## Fixes
+
+### Templates
+
+* Fix the docshelper [61f210dd](https://github.com/gohugoio/hugo/commit/61f210dd7abe5de77c27dc6a6995a3ad5e77afa1) [@bep](https://github.com/bep)
+* Fix BOM issue in templates [3a786a24](https://github.com/gohugoio/hugo/commit/3a786a248d3eff6e732aa94e87d6e88196e5147a) [@bep](https://github.com/bep) [#4895](https://github.com/gohugoio/hugo/issues/4895)
+
+### Output
+
+* Fix ANSI character output regression on Windows [b8725f51](https://github.com/gohugoio/hugo/commit/b8725f5181f6a2709274a82c1c3fdfd8f2e3e28c) [@LorenzCK](https://github.com/LorenzCK) [#5377](https://github.com/gohugoio/hugo/issues/5377)
+
+### Core
+
+* Fix changing paginators in lazy render [b8b8436f](https://github.com/gohugoio/hugo/commit/b8b8436fcca17c152e94cae2a1acad32efc3946c) [@bep](https://github.com/bep) [#5406](https://github.com/gohugoio/hugo/issues/5406)
+* Fix REF_NOT_FOUND logging to include page path [6180c85f](https://github.com/gohugoio/hugo/commit/6180c85fb8f95e01446b74c50cab3f0480305fe4) [@bep](https://github.com/bep) [#5371](https://github.com/gohugoio/hugo/issues/5371)
+* Fix broken manual summary handling [b2a676f5](https://github.com/gohugoio/hugo/commit/b2a676f5f09a3eea360887b099b9d5fc25a88492) [@bep](https://github.com/bep) [#5381](https://github.com/gohugoio/hugo/issues/5381)
+* Fix deadlock when content building times out [729593c8](https://github.com/gohugoio/hugo/commit/729593c842794eaf7127050953a5c2256d332051) [@bep](https://github.com/bep) [#5375](https://github.com/gohugoio/hugo/issues/5375)
+
+### Other
+
+* Fix spelling [47506d16](https://github.com/gohugoio/hugo/commit/47506d164467eb7ddbcada81b767d8df5f9c8786) [@qeesung](https://github.com/qeesung)
+* Fix shortcode directly following a shortcode delimiter [d16a7a33](https://github.com/gohugoio/hugo/commit/d16a7a33ff1f22b9fa357189a901a4f1de4e65e7) [@bep](https://github.com/bep) [#5402](https://github.com/gohugoio/hugo/issues/5402)
+* Fix recently broken error template [2bd9d909](https://github.com/gohugoio/hugo/commit/2bd9d9099db267831731ed2d2200eb09305df9fc) [@bep](https://github.com/bep)
+
+
+
+
+
diff --git a/docs/content/en/news/0.52-relnotes/featured-hugo-52-poster.png b/docs/content/en/news/0.52-relnotes/featured-hugo-52-poster.png
new file mode 100644
index 000000000..190f5758a
--- /dev/null
+++ b/docs/content/en/news/0.52-relnotes/featured-hugo-52-poster.png
Binary files differ
diff --git a/docs/content/en/news/0.52-relnotes/index.md b/docs/content/en/news/0.52-relnotes/index.md
new file mode 100644
index 000000000..849a0028c
--- /dev/null
+++ b/docs/content/en/news/0.52-relnotes/index.md
@@ -0,0 +1,74 @@
+
+---
+date: 2018-11-28
+title: "And Now: Hugo 0.52"
+description: "Configurable file caches, inline shortcodes, and more ..."
+categories: ["Releases"]
+---
+
+The two big new items in this release is [Inline Shortcodes](https://gohugo.io//templates/shortcode-templates/#inline-shortcodes) and [Consolidated File Caches](https://gohugo.io/getting-started/configuration/#configure-file-caches). In Hugo we really care about build speed, and caching is important. With this release, you get much better control over your cache configuration, which is especially useful when building on a Continuous Integration server (Netlify, CircleCI or similar). Inline Shortcodes was implemented to help the Bootstrap project [move their documentation site](https://github.com/twbs/bootstrap/issues/24475#issuecomment-441238128) to Hugo. Note that this feature is disabled by default. To enable, set `enableInlineShortcodes = true` in your site config. Worth mentioning is also the new `param` shortcode, which looks up the param in page front matter with the site's parameter as a fall back.
+
+This release represents **33 contributions by 7 contributors** to the main Hugo code base.
+[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@moorereason](https://github.com/moorereason), [@emirb](https://github.com/emirb), and [@allizad](https://github.com/allizad) for their ongoing contributions.
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) and [@onedrawingperday](https://github.com/onedrawingperday) for their relentless work on keeping the themes site in pristine condition and to [@kaushalmodi](https://github.com/kaushalmodi) for his great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **10 contributions by 4 contributors**. A special thanks to [@budparr](https://github.com/budparr), [@bep](https://github.com/bep), [@allizad](https://github.com/allizad), and [@funkydan2](https://github.com/funkydan2) for their work on the documentation site.
+
+Hugo now has:
+
+* 30595+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 441+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 270+ [themes](http://themes.gohugo.io/)
+
+## Enhancements
+
+### Templates
+
+* Add tests [ed698e94](https://github.com/gohugoio/hugo/commit/ed698e94c12c05bfc392eaca4f0c8442eac64906) [@moorereason](https://github.com/moorereason)
+* Regenerate templates [89e2716d](https://github.com/gohugoio/hugo/commit/89e2716d290708ccde0a6f65504c1650c2f41b3d) [@bep](https://github.com/bep)
+* Add "param" shortcode [f37c5a25](https://github.com/gohugoio/hugo/commit/f37c5a25676db89c0e804ccaac69bb392758192b) [@bep](https://github.com/bep) [#4010](https://github.com/gohugoio/hugo/issues/4010)
+* Add float64 support to where [112461fd](https://github.com/gohugoio/hugo/commit/112461fded0d7970817ce7bf476c4763922ad314) [@moorereason](https://github.com/moorereason) [#5466](https://github.com/gohugoio/hugo/issues/5466)
+
+### Core
+
+* Fall back to title in ByLinkTitle sort [a9a93d08](https://github.com/gohugoio/hugo/commit/a9a93d082d8640684b7fd0076c64ea808ea7f762) [@bep](https://github.com/bep) [#4953](https://github.com/gohugoio/hugo/issues/4953)
+* Improve nil handling in IsDescendant and IsAncestor [b09a4033](https://github.com/gohugoio/hugo/commit/b09a40333f382cc1034d2eda856230258ab6b8cc) [@bep](https://github.com/bep) [#5461](https://github.com/gohugoio/hugo/issues/5461)
+
+### Other
+
+* Remove duplicate mapstructure depdendency [7e75aeca](https://github.com/gohugoio/hugo/commit/7e75aeca80aead50d64902d2ff47e4ad4d013352) [@bep](https://github.com/bep)
+* Add dependency list to README [e14e0b19](https://github.com/gohugoio/hugo/commit/e14e0b192f39812e3c3d5202d34ee907021412bb) [@bep](https://github.com/bep)
+* Document inline shortcodes [aded0f25](https://github.com/gohugoio/hugo/commit/aded0f25fd23a78804b10e127aebe0e4b6fed2ac) [@bep](https://github.com/bep) [#4011](https://github.com/gohugoio/hugo/issues/4011)
+* Add inline shortcode support [bc337e6a](https://github.com/gohugoio/hugo/commit/bc337e6ab5a75f1f1bfe3a83f3786d0afdb6346c) [@bep](https://github.com/bep) [#4011](https://github.com/gohugoio/hugo/issues/4011)
+* Include drafts in convert command [dcfeed35](https://github.com/gohugoio/hugo/commit/dcfeed35c6e14c1ce593d23be9d2b89c66ce9bee) [@bep](https://github.com/bep) [#5457](https://github.com/gohugoio/hugo/issues/5457)
+* Handle themes in the new file cache (for images, assets) [f9b4eb4f](https://github.com/gohugoio/hugo/commit/f9b4eb4f3968d32f45e0168c854e6b0c7f3a90b0) [@bep](https://github.com/bep) [#5460](https://github.com/gohugoio/hugo/issues/5460)
+* Add tests for permalink on Resource with baseURL with path [12742bac](https://github.com/gohugoio/hugo/commit/12742bac71c65d65dc56548b643debda94757aee) [@bep](https://github.com/bep) [#5226](https://github.com/gohugoio/hugo/issues/5226)
+* Add a comment about file mode for new files [fabf026f](https://github.com/gohugoio/hugo/commit/fabf026f4937bf6fbbb944aa7d6e721839ae4c92) [@bep](https://github.com/bep) [#5434](https://github.com/gohugoio/hugo/issues/5434)
+* Add a :project placeholder [94f0f7e5](https://github.com/gohugoio/hugo/commit/94f0f7e59788e802e706a55cac0d52a9e70ff745) [@bep](https://github.com/bep) [#5439](https://github.com/gohugoio/hugo/issues/5439)
+* Add a cache prune func [3c29c5af](https://github.com/gohugoio/hugo/commit/3c29c5af8ee865ef20741f576088e031e940c3d2) [@bep](https://github.com/bep) [#5439](https://github.com/gohugoio/hugo/issues/5439)
+* Add a filecache root dir [33502667](https://github.com/gohugoio/hugo/commit/33502667fbacf57167ede66df8f13e308a4a9aec) [@bep](https://github.com/bep)
+* Use time.Duration for maxAge [d3489eba](https://github.com/gohugoio/hugo/commit/d3489eba5dfc0ecdc032016d9db0746213dd5f0e) [@bep](https://github.com/bep) [#5438](https://github.com/gohugoio/hugo/issues/5438)
+* Split implementation and config into separate files [17d7ecde](https://github.com/gohugoio/hugo/commit/17d7ecde2b261d2ab29049d12361b66504e3f995) [@bep](https://github.com/bep)
+* Update to LibSASS 3.5.5 [e4b25728](https://github.com/gohugoio/hugo/commit/e4b2572880550a997d51dab3b198dac1fd642690) [@bep](https://github.com/bep) [#5432](https://github.com/gohugoio/hugo/issues/5432)[#5435](https://github.com/gohugoio/hugo/issues/5435)
+* More spelling corrections [782dd158](https://github.com/gohugoio/hugo/commit/782dd15858128d8dfe78970c86e543b6590a004c) [@bep](https://github.com/bep)
+* Spelling corrections [aff9c091](https://github.com/gohugoio/hugo/commit/aff9c091669a022b59f493c9dccf72be29511299) [@bep](https://github.com/bep)
+* Remove appveyor [fdd4a768](https://github.com/gohugoio/hugo/commit/fdd4a768f053b21271d4520bf0d43baf62d516da) [@bep](https://github.com/bep)
+* Document the new file cache [abeeff13](https://github.com/gohugoio/hugo/commit/abeeff1325267f8d8f1f66f0ec4ed175ffc140ad) [@bep](https://github.com/bep) [#5404](https://github.com/gohugoio/hugo/issues/5404)
+* Add a consolidated file cache [f7aeaa61](https://github.com/gohugoio/hugo/commit/f7aeaa61291dd75f92901bcbeecc7fce07a28dec) [@bep](https://github.com/bep) [#5404](https://github.com/gohugoio/hugo/issues/5404)
+* Add Windows build config to Travis [7d78a2af](https://github.com/gohugoio/hugo/commit/7d78a2afd3c4a6c4af77a4ddcbd2a82f15986048) [@emirb](https://github.com/emirb)
+* Add Elasticsearch/bonsai.io to services doc. [c0b3a1af](https://github.com/gohugoio/hugo/commit/c0b3a1af0354e3aa9979cc00ae8630d7f0be63dc) [@allizad](https://github.com/allizad)
+
+## Fixes
+
+### Templates
+
+* Fix whitespace issue [aba2647c](https://github.com/gohugoio/hugo/commit/aba2647c152ffff927f42523b77ee6651630cd67) [@max-arnold](https://github.com/max-arnold)
+* Fix test to pass with gccgo [a8cb1b07](https://github.com/gohugoio/hugo/commit/a8cb1b07b4cf7fcf0e949657cb03c1a4838f975e) [@ianlancetaylor](https://github.com/ianlancetaylor)
+
+### Other
+
+* Fix handling of commented out front matter [7540a628](https://github.com/gohugoio/hugo/commit/7540a62834d4465af8936967e430a9e05a1e1359) [@bep](https://github.com/bep) [#5478](https://github.com/gohugoio/hugo/issues/5478)
+* Fix when only shortcode and then summary [94ab125b](https://github.com/gohugoio/hugo/commit/94ab125b27a29a65e5ea45efd99dd247084b4c37) [@bep](https://github.com/bep) [#5464](https://github.com/gohugoio/hugo/issues/5464)
+* Fix ignored --config flag with 'new' command [e82b2dc8](https://github.com/gohugoio/hugo/commit/e82b2dc8c1628f2da33e5fb0bae1b03e0594ad2c) [@krisbudhram](https://github.com/krisbudhram)
+* Fix Permalink for resource, baseURL with path and canonifyURLs set [5df2b79d](https://github.com/gohugoio/hugo/commit/5df2b79dd2734e9a00ed1692328f58c385676468) [@bep](https://github.com/bep) [#5226](https://github.com/gohugoio/hugo/issues/5226)
diff --git a/docs/content/en/news/0.53-relnotes/featured-hugo-53-poster.png b/docs/content/en/news/0.53-relnotes/featured-hugo-53-poster.png
new file mode 100644
index 000000000..c3cee3adc
--- /dev/null
+++ b/docs/content/en/news/0.53-relnotes/featured-hugo-53-poster.png
Binary files differ
diff --git a/docs/content/en/news/0.53-relnotes/index.md b/docs/content/en/news/0.53-relnotes/index.md
new file mode 100644
index 000000000..b61ab9074
--- /dev/null
+++ b/docs/content/en/news/0.53-relnotes/index.md
@@ -0,0 +1,94 @@
+
+---
+date: 2018-12-24
+title: "Hugo Christmas Edition"
+description: "Hugo 0.53: Faster, config dir support, new unmarshal func, global site var, and more ..."
+categories: ["Releases"]
+---
+
+From all of us to all of you, a very Merry Christmas -- and Hugo `0.53`!
+
+The main new features in this release are:
+
+**Config Dir:** You can now split your configuration sections into directories per environment. Hugo did support multiple configuration files before this release, but it was hard to manage for bigger sites, especially those with multiple languages. With this we have also formalized the concept of an `environment`; the defaults are `production` (when running `hugo`) or `development` (when running `hugo server`) but you can create any environment you like. We will update the documentation, but all the details are in [this issue](https://github.com/gohugoio/hugo/pull/5501#issue-236237630). Also, see [this PR](https://github.com/gohugoio/hugoDocs/pull/683) for how the refactored configuration for the Hugo website looks like.
+
+**Unmarshal JSON, TOML, YAML or CSV:** `transform.Unmarshal` (see the [documentation](https://gohugo.io//functions/transform.unmarshal/) is a new and powerful template function that can turn `Resource` objects or strings with JSON, TOML, YAML or CSV into maps/arrays.
+
+**Global site and hugo var:** Two new global variables in `site` and `hugo`. `hugo` gives you version info etc. (`{{ hugo.Version }}`, `{{ hugo.Environment }}`), but the `site` is probably more useful, as it allows you to access the current [site's variables](https://gohugo.io/variables/site/) (e.g. `{{ site.RegularPages }}`) without any context (or ".").
+
+This version is also the fastest to date. A site building benchmark shows around 10% faster, but that depends on the site. The important part here is that we're not getting slower. It’s quite a challenge to consistently add significant new functionality and simultaneously improve performance. It's like not gaining weight during Christmas. We also had a small performance boost in version `0.50`. A user then reported that his big and complicated site had a 30% reduction in build time. This is important to us, one of the core features. It's in the slogan: "The world’s fastest framework for building websites."
+
+This release represents **37 contributions by 5 contributors** to the main Hugo code base. [@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@moorereason](https://github.com/moorereason), [@coliff](https://github.com/coliff), and [@jfyuen](https://github.com/jfyuen) for their ongoing contributions. And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) and [@onedrawingperday](https://github.com/onedrawingperday) for their relentless work on keeping the themes site in pristine condition and to [@kaushalmodi](https://github.com/kaushalmodi) for his great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **19 contributions by 8 contributors**. A special thanks to [@bep](https://github.com/bep), [@kaushalmodi](https://github.com/kaushalmodi), [@peaceiris](https://github.com/peaceiris), and [@moorereason](https://github.com/moorereason) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 31174+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 441+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 279+ [themes](http://themes.gohugo.io/)
+
+
+## Notes
+
+* The `hugo benchmark` command is removed
+* We now do not publish transformed inline resources, e.g. minified CSS only accessed via `.Content.`, e.g. `{{ ($css | minify).Content }}`. Before this version, the minified CSS in that example would be copied to `/public`, which was never the intention. If you want that, you need to access either `.RelPermalink` or `.Permalink`.
+
+
+## Enhancements
+
+### Templates
+
+* Include options in cache key [be58c7b9](https://github.com/gohugoio/hugo/commit/be58c7b9c88116094ca2b424c77210ddcccfff8e) [@bep](https://github.com/bep) [#5555](https://github.com/gohugoio/hugo/issues/5555)
+* Simplify transform.Unmarshal func [094709e1](https://github.com/gohugoio/hugo/commit/094709e105d48547bf5297adc0ad0c777678b0a6) [@bep](https://github.com/bep) [#5428](https://github.com/gohugoio/hugo/issues/5428)
+* Add transform.Unmarshal func [822dc627](https://github.com/gohugoio/hugo/commit/822dc627a1cfdf1f97882f27761675ac6ace7669) [@bep](https://github.com/bep) [#5428](https://github.com/gohugoio/hugo/issues/5428)
+* Remove "double layout" lookup [d5a0b6bb](https://github.com/gohugoio/hugo/commit/d5a0b6bbbc83a3e274c62ed397a293f04ee8d241) [@bep](https://github.com/bep) [#5390](https://github.com/gohugoio/hugo/issues/5390)
+* Add reflect namespace [c84f506f](https://github.com/gohugoio/hugo/commit/c84f506f8ef1f2ca94ab96718a22ba6e290235ac) [@moorereason](https://github.com/moorereason) [#4081](https://github.com/gohugoio/hugo/issues/4081)
+* Use the correct Hugo var [931a1324](https://github.com/gohugoio/hugo/commit/931a1324503a4414e38d26efe82e1add811a8d29) [@bep](https://github.com/bep) [#5467](https://github.com/gohugoio/hugo/issues/5467)
+* Add tpl/site and tpl/hugo [831d23cb](https://github.com/gohugoio/hugo/commit/831d23cb4d1ca99cdc15ed31c8ee1f981497be8f) [@bep](https://github.com/bep) [#5470](https://github.com/gohugoio/hugo/issues/5470)[#5467](https://github.com/gohugoio/hugo/issues/5467)[#5503](https://github.com/gohugoio/hugo/issues/5503)
+* Add godoc packages comments [30a7c9ea](https://github.com/gohugoio/hugo/commit/30a7c9ea37a0f36451946f8688a3f807618a7eff) [@moorereason](https://github.com/moorereason)
+
+### Core
+
+* Adjust test [25ddbb09](https://github.com/gohugoio/hugo/commit/25ddbb09fea7794edbbafa2ffce4e361cdc9bacf) [@bep](https://github.com/bep) [#5544](https://github.com/gohugoio/hugo/issues/5544)
+* Add .Name as a shortcode variable [10217144](https://github.com/gohugoio/hugo/commit/1021714449a05ef85b2fdfaf65b354cbdee44f23) [@bep](https://github.com/bep) [#5546](https://github.com/gohugoio/hugo/issues/5546)
+* Improve logic of output path trimming [0483299b](https://github.com/gohugoio/hugo/commit/0483299bc06a742d40528e0d675e42e149910853) [@moorereason](https://github.com/moorereason) [#4666](https://github.com/gohugoio/hugo/issues/4666)
+* Enable Emoji in site benchmark [4d93aca2](https://github.com/gohugoio/hugo/commit/4d93aca27dfdebc9e06948ccf37a7922dac09d65) [@bep](https://github.com/bep)
+* Restore taxonomy term path separation [9ce0a1fb](https://github.com/gohugoio/hugo/commit/9ce0a1fb7011bd75eb0e2262e35354c49ce98ac5) [@bep](https://github.com/bep) [#5513](https://github.com/gohugoio/hugo/issues/5513)
+* Add .Site.Sites [83783588](https://github.com/gohugoio/hugo/commit/8378358857d852458d01c667d59d13baa59a719c) [@bep](https://github.com/bep) [#5504](https://github.com/gohugoio/hugo/issues/5504)
+
+### Other
+
+* Adjust CSV example [62d031ae](https://github.com/gohugoio/hugo/commit/62d031aedfc128729b460241bd99d97b5d902e62) [@bep](https://github.com/bep) [#5555](https://github.com/gohugoio/hugo/issues/5555)
+* Rename CSV option from comma to delimiter [ce06bdb1](https://github.com/gohugoio/hugo/commit/ce06bdb16a64dd39a8ebbb2e5a53b33520b00bb1) [@bep](https://github.com/bep) [#5555](https://github.com/gohugoio/hugo/issues/5555)
+* Document transform.Unmarshal [2efc1a64](https://github.com/gohugoio/hugo/commit/2efc1a64c391420b1007f6e94b6ff616fb136635) [@bep](https://github.com/bep) [#5556](https://github.com/gohugoio/hugo/issues/5556)
+* Regenerate CLI docs [e691c48a](https://github.com/gohugoio/hugo/commit/e691c48a5a9b4db5aa5383de6b83352fc18cc633) [@bep](https://github.com/bep) [#5544](https://github.com/gohugoio/hugo/issues/5544)
+* Add CSV support to transform.Unmarshal [a5744697](https://github.com/gohugoio/hugo/commit/a5744697971d296eb973e04e4259fe9e516b908f) [@bep](https://github.com/bep) [#5555](https://github.com/gohugoio/hugo/issues/5555)
+* Prevent resource publishing for transformed inline resources [43f9df01](https://github.com/gohugoio/hugo/commit/43f9df0194d229805d80b13c9e38a7a0fec12cf4) [@bep](https://github.com/bep) [#4944](https://github.com/gohugoio/hugo/issues/4944)
+* Remove the benchmark command [35bfca3b](https://github.com/gohugoio/hugo/commit/35bfca3b14977eaebab4003b43b5236c1888d93d) [@bep](https://github.com/bep) [#5543](https://github.com/gohugoio/hugo/issues/5543)
+* Move the emoji parsing to pageparser [9cd54cab](https://github.com/gohugoio/hugo/commit/9cd54cab20a03475e34ca462bd943069111481ae) [@bep](https://github.com/bep) [#5534](https://github.com/gohugoio/hugo/issues/5534)
+* Split the page lexer into some more files [a8853f1c](https://github.com/gohugoio/hugo/commit/a8853f1c5ace30ae8d256ad374bdb280c95d4228) [@bep](https://github.com/bep) [#5534](https://github.com/gohugoio/hugo/issues/5534)
+* parser/pageparser: Add a benchmark [f2167de8](https://github.com/gohugoio/hugo/commit/f2167de83493f13f02dd622425364668834f8208) [@bep](https://github.com/bep)
+* Update to Go 1.11.4 [bb9c2988](https://github.com/gohugoio/hugo/commit/bb9c2988f871ca5fe6af9c8e207ec852c631c3b3) [@bep](https://github.com/bep) [#5524](https://github.com/gohugoio/hugo/issues/5524)
+* Simplify implementation [f7691fe9](https://github.com/gohugoio/hugo/commit/f7691fe9652aa12b6c582dea0ae2555e772d1a5f) [@bep](https://github.com/bep)
+* Support unquoted URLs in canonifyURLs replacer [efe0b4e5](https://github.com/gohugoio/hugo/commit/efe0b4e5c0292c1e5e27b0c32fbc368062fde3e8) [@bep](https://github.com/bep) [#5529](https://github.com/gohugoio/hugo/issues/5529)
+* Regenerate CLI docs [50686817](https://github.com/gohugoio/hugo/commit/50686817072c8bef947959cb2bcc7f1914c7f839) [@bep](https://github.com/bep) [#5507](https://github.com/gohugoio/hugo/issues/5507)
+* Add /config dir support [78294740](https://github.com/gohugoio/hugo/commit/7829474088f835251f04caa1121d47e35fe89f7e) [@bep](https://github.com/bep) [#5422](https://github.com/gohugoio/hugo/issues/5422)
+* cache/filecache: Simplify test [514e18dc](https://github.com/gohugoio/hugo/commit/514e18dc27ce37a0e9a231741d616cf29d50d610) [@bep](https://github.com/bep) [#5497](https://github.com/gohugoio/hugo/issues/5497)
+* Use OS fs for test [b804a708](https://github.com/gohugoio/hugo/commit/b804a70881c7be26dc15274c4f98f1057469cbc1) [@bep](https://github.com/bep) [#5497](https://github.com/gohugoio/hugo/issues/5497)
+
+## Fixes
+
+### Templates
+
+* Fix case handling in cast params [64b6b290](https://github.com/gohugoio/hugo/commit/64b6b290751df01c47ff8d8fe21a3eca7a5db283) [@bep](https://github.com/bep) [#5538](https://github.com/gohugoio/hugo/issues/5538)
+
+### Other
+
+* Fix "failed to create file caches from configuration: file exists" on Windows [5178cd13](https://github.com/gohugoio/hugo/commit/5178cd13a7da3c5f5ec5d3217c9e40fc0be7152a) [@bep](https://github.com/bep) [#5497](https://github.com/gohugoio/hugo/issues/5497)
+* fix jekyll import highlight options [ab921476](https://github.com/gohugoio/hugo/commit/ab9214768de4ce10032d3fe7ec8c7b2932ead892) [@jfyuen](https://github.com/jfyuen)
+* Fix "always false" condition [25641891](https://github.com/gohugoio/hugo/commit/256418917c6642f7e5b3d3206ff4b6fa03b1cb28) [@Quasilyte](https://github.com/Quasilyte)
+* Fixx CSS2 color code handling [4b5f7439](https://github.com/gohugoio/hugo/commit/4b5f743959394d443c4dcaa0ccae21842b51adaf) [@bep](https://github.com/bep) [#5506](https://github.com/gohugoio/hugo/issues/5506)
+* common/collections: Fix defines typo [83468481](https://github.com/gohugoio/hugo/commit/8346848109ab57cb04de87c6d86859c6b3de8ffa) [@coliff](https://github.com/coliff)
diff --git a/docs/content/en/news/0.54.0-relnotes/featured-hugo-54.0-poster.png b/docs/content/en/news/0.54.0-relnotes/featured-hugo-54.0-poster.png
new file mode 100644
index 000000000..10fe563c3
--- /dev/null
+++ b/docs/content/en/news/0.54.0-relnotes/featured-hugo-54.0-poster.png
Binary files differ
diff --git a/docs/content/en/news/0.54.0-relnotes/index.md b/docs/content/en/news/0.54.0-relnotes/index.md
new file mode 100644
index 000000000..8fc56620b
--- /dev/null
+++ b/docs/content/en/news/0.54.0-relnotes/index.md
@@ -0,0 +1,69 @@
+
+---
+date: 2019-02-01
+title: "0.54.0: Mostly Bugfixes"
+description: "0.54.0 is mostly a bugfix-release, but also some nice improvements."
+categories: ["Releases"]
+
+---
+
+This release represents **27 contributions by 7 contributors** to the main Hugo code base. [@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@tryzniak](https://github.com/tryzniak), [@anthonyfok](https://github.com/anthonyfok), and [@mywaiting](https://github.com/mywaiting) for their ongoing contributions. And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) and [@onedrawingperday](https://github.com/onedrawingperday) for their relentless work on keeping the themes site in pristine condition and to [@kaushalmodi](https://github.com/kaushalmodi) for his great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs), which has received **38 contributions by 17 contributors**. A special thanks to [@bep](https://github.com/bep), [@kaushalmodi](https://github.com/kaushalmodi), [@onedrawingperday](https://github.com/onedrawingperday), and [@peaceiris](https://github.com/peaceiris) for their work on the documentation site.
+
+Hugo now has:
+
+* 32265+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 441+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 289+ [themes](http://themes.gohugo.io/)
+
+## Enhancements
+
+### Templates
+
+* Adjust tests [ddc6d4e3](https://github.com/gohugoio/hugo/commit/ddc6d4e30f282f23b703a3b42da552886062c8c8) [@bep](https://github.com/bep) [#5643](https://github.com/gohugoio/hugo/issues/5643)
+* Prevent getJSON and getCSV fetch failure from aborting build [6a2bfcbe](https://github.com/gohugoio/hugo/commit/6a2bfcbec8df14b1741dbe9b5ead08158bf7adb9) [@anthonyfok](https://github.com/anthonyfok) [#5643](https://github.com/gohugoio/hugo/issues/5643)
+
+### Core
+
+* Expand TestPageWithEmoji to cover '+', '-' and '_' too [2a9060a8](https://github.com/gohugoio/hugo/commit/2a9060a85ce430b28f5ec47e1438c6ef1b8e13fa) [@anthonyfok](https://github.com/anthonyfok) [#5635](https://github.com/gohugoio/hugo/issues/5635)
+* Restore 0.48 slash handling in taxonomies [40ffb048](https://github.com/gohugoio/hugo/commit/40ffb0484b96b7b77fb66202b33073b241807199) [@bep](https://github.com/bep) [#5571](https://github.com/gohugoio/hugo/issues/5571)
+
+### Other
+
+* Use official semver even for main releases [fab41f42](https://github.com/gohugoio/hugo/commit/fab41f42d3e23c11651ab75413b01d97e5d37c30) [@bep](https://github.com/bep) [#5639](https://github.com/gohugoio/hugo/issues/5639)
+* Add test for --configDir [59d87044](https://github.com/gohugoio/hugo/commit/59d87044a4146f578b92b3d67b46660212940912) [@bep](https://github.com/bep) [#5662](https://github.com/gohugoio/hugo/issues/5662)
+* Ignore unknown config files in config dir [3244cb3b](https://github.com/gohugoio/hugo/commit/3244cb3b31f8f8c39d9dfa82bc01fb2d6db59257) [@bep](https://github.com/bep) [#5646](https://github.com/gohugoio/hugo/issues/5646)
+* Store supported config formats in a variable [d9282cf9](https://github.com/gohugoio/hugo/commit/d9282cf98a346fcf98f363d9c353e4920ca85fc7) [@tryzniak](https://github.com/tryzniak)
+* Bump to Go 1.11.5 [8ed2a1ca](https://github.com/gohugoio/hugo/commit/8ed2a1caa9e0892d5bf97ed1b7279befa159f764) [@bep](https://github.com/bep) [#5654](https://github.com/gohugoio/hugo/issues/5654)
+* Update Afero [e8596139](https://github.com/gohugoio/hugo/commit/e85961390a050cd4f2e6ce4f2666012bc83bb449) [@bep](https://github.com/bep) [#5650](https://github.com/gohugoio/hugo/issues/5650)
+* Accept hyphen and plus sign in emoji detection [3038464e](https://github.com/gohugoio/hugo/commit/3038464ea6f931c8a08ee49d47f1eaec99ba4817) [@anthonyfok](https://github.com/anthonyfok) [#5635](https://github.com/gohugoio/hugo/issues/5635)
+* Support numeric sort in ByParam [26f75edb](https://github.com/gohugoio/hugo/commit/26f75edb7a76c816349749a05edf98fb36dc338a) [@tryzniak](https://github.com/tryzniak) [#5305](https://github.com/gohugoio/hugo/issues/5305)
+* Make hugo server -t work again [db3c49d0](https://github.com/gohugoio/hugo/commit/db3c49d049193e0fc225fe4bdb95712c311d6615) [@tryzniak](https://github.com/tryzniak) [#5569](https://github.com/gohugoio/hugo/issues/5569)[#5061](https://github.com/gohugoio/hugo/issues/5061)[#4868](https://github.com/gohugoio/hugo/issues/4868)
+* Add configFile(s) back to the watch list after RENAME event too [e3cb8e6c](https://github.com/gohugoio/hugo/commit/e3cb8e6c7874d7dfe1d4d1c7f5c9765b681fb647) [@anthonyfok](https://github.com/anthonyfok) [#5205](https://github.com/gohugoio/hugo/issues/5205)
+* Remove historical rssURI config [55251aa8](https://github.com/gohugoio/hugo/commit/55251aa89099358c040d38f3af48e3699d67bab2) [@mywaiting](https://github.com/mywaiting)
+* Use subtests with server_test.go [843fcd19](https://github.com/gohugoio/hugo/commit/843fcd19d4d97bac979410a4e0abed72586a0aa0) [@tryzniak](https://github.com/tryzniak)
+* Move resource interfaces into its own package [ce8a09a4](https://github.com/gohugoio/hugo/commit/ce8a09a4c0661dece931ab1173e4f09e8e04aa38) [@bep](https://github.com/bep)
+* Move resource processors into sub-packages [669ada43](https://github.com/gohugoio/hugo/commit/669ada436787311cc5d02dae5b88e60a09adda58) [@bep](https://github.com/bep)
+* Update _index.md [50745122](https://github.com/gohugoio/hugo/commit/507451229c2255788d72b757a85ad5bb3ba00f4f) [@vrMarc](https://github.com/vrMarc)
+* Update go.sum [0584432b](https://github.com/gohugoio/hugo/commit/0584432b078f1e3a488ad4f27f39edac0557e042) [@bep](https://github.com/bep)
+* Update Chroma [cc351958](https://github.com/gohugoio/hugo/commit/cc351958e12d4dc83f664a1d51be76a447fea9b8) [@bep](https://github.com/bep) [#4993](https://github.com/gohugoio/hugo/issues/4993)
+* Make docshelper run again [c24f3ae2](https://github.com/gohugoio/hugo/commit/c24f3ae22b27dfe5339662277f8183596a6d148d) [@bep](https://github.com/bep) [#5568](https://github.com/gohugoio/hugo/issues/5568)
+
+## Fixes
+
+### Templates
+
+* Fix reflect [9e4f9e0b](https://github.com/gohugoio/hugo/commit/9e4f9e0bb69276e9bca0dfbdbc7aefbf5f6fc9e5) [@moorereason](https://github.com/moorereason) [#5564](https://github.com/gohugoio/hugo/issues/5564)
+
+### Other
+
+* Fix some inline shortcode issues [c52045bb](https://github.com/gohugoio/hugo/commit/c52045bbb38cbf64b9cb39352230060aa122cc9f) [@bep](https://github.com/bep) [#5645](https://github.com/gohugoio/hugo/issues/5645)[#5653](https://github.com/gohugoio/hugo/issues/5653)
+* Fix OpenGraph image fallback to site params [526b5b1c](https://github.com/gohugoio/hugo/commit/526b5b1c4986d43d6184671b02f45ca40f041b65) [@statik](https://github.com/statik)
+* Fix Params case handling in the new site global [e1a66c73](https://github.com/gohugoio/hugo/commit/e1a66c7343db9d232749255dd9e3a58d94b86997) [@bep](https://github.com/bep) [#5615](https://github.com/gohugoio/hugo/issues/5615)
+* cache/namedmemcache: Fix data race [3f3187de](https://github.com/gohugoio/hugo/commit/3f3187de0f62107da19d9341aebd1d8414bff0ea) [@bep](https://github.com/bep)
+
+
+
+
+
diff --git a/docs/content/en/news/0.55.0-relnotes/featured.png b/docs/content/en/news/0.55.0-relnotes/featured.png
new file mode 100644
index 000000000..0d3180579
--- /dev/null
+++ b/docs/content/en/news/0.55.0-relnotes/featured.png
Binary files differ
diff --git a/docs/content/en/news/0.55.0-relnotes/index.md b/docs/content/en/news/0.55.0-relnotes/index.md
new file mode 100644
index 000000000..c22eaf366
--- /dev/null
+++ b/docs/content/en/news/0.55.0-relnotes/index.md
@@ -0,0 +1,194 @@
+
+---
+date: 2019-04-08
+title: "Hugo 0.55.0: The early Easter Egg Edition!"
+description: "Faster, virtualized Output Formats, revised shortcodes, new return keyword, and much more …"
+categories: ["Releases"]
+---
+
+Hugo `0.55` is **the early Easter Egg Edition** with lots of great improvements and fixes. The original motivation for this release was to prepare for [Issue #5074](https://github.com/gohugoio/hugo/issues/5074), but the structural changes needed for that paved the way for lots of others. Please study the list of changes below, and especially the **Notes** section, but some headlines include:
+
+## Virtualized Output Formats
+
+[Custom Output Formats](https://gohugo.io/templates/output-formats) has been a really useful feature, but it has had some annoying and not so obvious restrictions that are now lifted. Now all `Page` collections are aware of the output format being rendered. This means, to give some examples, that:
+
+* In a `RSS` template, listing pages with their content will use output format specific shortcode templates even if the pages themselves are not configured to output to that output format.
+* Using `.Render` when looping over a `Page` collection will now work as expected.
+* Every Output Format can be paginated.
+
+We have now also added a new `Permalinkable` configuration attribute, which is enabled by default for `HTML` and `AMP`.
+
+## Shortcodes Revised
+
+Shortcodes using the `{{%/* */%}}` as the outer-most delimiter will now be fully rendered when sent to the content renderer (e.g. Blackfriday for Markdown), meaning they can be part of the generated table of contents, footnotes, etc.
+
+If you want the old behavior, you can put the following line in the start of your shortcode template:
+
+```
+{{ $_hugo_config := `{ "version": 1 }` }}
+```
+
+But using the `{{</* */>}}` delimiter will, in most cases, be a better alternative, possibly in combination with the `markdownify` template func.
+
+See [#5763](https://github.com/gohugoio/hugo/issues/5763).
+
+## New Return Keyword for Partials
+
+Hugo's `partial` and `partialCached` are great for template macros. With the new `return` keyword you can write partials as proper functions that can return any type:
+
+```go-html-template
+{{ $v := add . 42 }}
+{{ return $v }}
+```
+
+See [#5783](https://github.com/gohugoio/hugo/issues/5783).
+
+## .Page on Taxonomy nodes
+
+The taxonomy nodes now have a `.Page` accessor which makes it much simpler to get a proper `.Title` etc. This means that older and clumsy constructs can be simplified. Some examples:
+
+```go-html-template
+<ul>
+ {{ range .Data.Terms.Alphabetical }}
+ <li><a href="{{ .Page.Permalink }}">{{ .Page.Title }}</a> {{ .Count }}</li>
+ {{ end }}
+</ul>
+```
+
+```go-html-template
+<ul>
+ {{ range .Site.Taxonomies.tags }}
+ <li><a href="{{ .Page.Permalink }}">{{ .Page.Title }}</a> {{ .Count }}</li>
+ {{ end }}
+</ul>
+```
+
+See [#5719](https://github.com/gohugoio/hugo/issues/5719).
+
+## And it's Faster!
+
+This version is also the **fastest to date**. A site building benchmark shows more than 10% decrease in both build time and memory consumption, but that depends on the site. It’s quite a challenge to consistently add significant new functionality and simultaneously improve performance. Also, note that we are now more honest about build times reported (`Total in 1234 ms`). We now do all initialization in the `Build` step, so you may get a higher time reported if you, as an example, have `--enableGitInfo` enabled, which now is included in the reported time.
+
+![Benchmark](https://pbs.twimg.com/media/D3kGYiMXsAUjYxS.png)
+
+## Thanks!
+
+This release represents **59 contributions by 10 contributors** to the main Hugo code base.
+[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@mcdee](https://github.com/mcdee), [@quasilyte](https://github.com/quasilyte), and [@danielcompton](https://github.com/danielcompton) for their ongoing contributions.
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) and [@onedrawingperday](https://github.com/onedrawingperday) for their relentless work on keeping the themes site in pristine condition and to [@kaushalmodi](https://github.com/kaushalmodi) for his great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **36 contributions by 21 contributors**. A special thanks to [@bep](https://github.com/bep), [@peaceiris](https://github.com/peaceiris), [@budparr](https://github.com/budparr), and [@tinymachine](https://github.com/tinymachine) for their work on the documentation site.
+
+As this release has required a significant effort with manual testing, a special thanks go to [@onedrawingperday](https://github.com/onedrawingperday) (the 300 theme demo sites have been invaluable to check for API-breakage!), [@adiabatic](https://github.com/adiabatic), and [@divinerites](https://github.com/divinerites).
+
+Hugo now has:
+
+* 34077+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 439+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 306+ [themes](http://themes.gohugo.io/)
+
+
+## Notes
+* `{{ %` as the outer-most shortcode delimiter means "pass the inner content to the content renderer" (e.g. Blackfriday); the old behavior can be had, see [#5763](https://github.com/gohugoio/hugo/issues/5763)
+* `preserveTaxonomyNames`configuration option is removed. Use `.Page.Title`.
+* We no longer limit the number of pages passed to the `RSS` Output Format. We have moved that limit to the internal `RSS` template, and you can do so yourself using the `Config.Services.RSS.Limit` in your custom template.
+* We no longer add XML headers to Output Formats that output XML (`<?xml version="1.0" encoding="utf-8" standalone="yes" ?>`). This header is moved to the templates. If you have custom RSS or sitemap templates you may want to add the XML declaration to these. Since they, by default, is handled by Go's HTML template package, you must do something like this to make sure it's preserved: `{{ printf "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\" ?>" | safeHTML }}`
+* More honest build times reported (`Total in 1234 ms`). We now do all initialization in the `Build` step, so you may get a higher time reported if you, as an example, have `--enableGitInfo` enabled, which now is included in the reported time.
+* The taxonomy nodes now have a `.Page` accessor which makes it much simpler to get a proper `.Title` etc. see [#5719](https://github.com/gohugoio/hugo/issues/5719).
+* The template keywords `with` and `if` now work properly for zero and interface types, see [#5739](https://github.com/gohugoio/hugo/issues/5739)
+* Taxonomy terms lists (`Page` of `Kind` `taxonomyTerm`) without any date(s) set (e.g. from front matter) will now pick the latest dates from the child pages. This is in line with how other branch nodes work in Hugo.
+* A new configuration option, `Permalinkable`, is added to Output Format and enabled that by default for `HTML` and `AMP` types. See [#5706](https://github.com/gohugoio/hugo/issues/5706)
+* `--stepAnalysis` is removed. If you want to really understand the latency in your project in Hugo, try the new `--trace` flag and pass that file to the many tools that read [Go Trace files](https://golang.org/pkg/runtime/trace/). There are also some newly hidden flags in `--profile-cpu`, `--profile-men`, `--profile-mutex`, hidden because they are considered to be only of interest to developers.
+* Chroma is updated with many fixes and new lexers, see [#5797](https://github.com/gohugoio/hugo/issues/5797)
+* We now support `Page`-relative aliases, e.g. aliases that do not start with a `/`, see [#5757](https://github.com/gohugoio/hugo/issues/5757)
+* We now support context-relative (language) URLs in front matter, meaning that in most cases `url: /en/mypage` can be replaced with the more portable `url: mypage`. See [#5704](https://github.com/gohugoio/hugo/issues/5704)
+
+## Enhancements
+
+### Templates
+
+* Allow the partial template func to return any type [a55640de](https://github.com/gohugoio/hugo/commit/a55640de8e3944d3b9f64b15155148a0e35cb31e) [@bep](https://github.com/bep) [#5783](https://github.com/gohugoio/hugo/issues/5783)
+
+### Output
+
+* Add missing JSON tag [b6a60f71](https://github.com/gohugoio/hugo/commit/b6a60f718e376066456da37e7bb997a7697edc31) [@bep](https://github.com/bep)
+
+### Core
+
+* Log warning on relative front matter url with lang [f34e6172](https://github.com/gohugoio/hugo/commit/f34e6172cf2a4d1d1aef22304ecbc7c8e2d142ff) [@bep](https://github.com/bep) [#5818](https://github.com/gohugoio/hugo/issues/5818)
+* Consider summary in front matter for .Summary [3a62d547](https://github.com/gohugoio/hugo/commit/3a62d54745e2cbfda6772390830042908d725c71) [@mcdee](https://github.com/mcdee) [#5800](https://github.com/gohugoio/hugo/issues/5800)
+* Buffer the render pages chan [95029551](https://github.com/gohugoio/hugo/commit/950295516da882dcc51d83f70835dde230a0b4d6) [@bep](https://github.com/bep)
+* Re-work "fast render" logic in the new flow [d0d661df](https://github.com/gohugoio/hugo/commit/d0d661dffd19d5ed6efbd4dd2c572bad008bd859) [@bep](https://github.com/bep) [#5811](https://github.com/gohugoio/hugo/issues/5811)[#5784](https://github.com/gohugoio/hugo/issues/5784)
+* Allow relative URLs in front matter [5185fb06](https://github.com/gohugoio/hugo/commit/5185fb065b0f8a4142c29ee3e3cd917e917280a4) [@bep](https://github.com/bep) [#5704](https://github.com/gohugoio/hugo/issues/5704)
+* Allow page-relative aliases [92baa14f](https://github.com/gohugoio/hugo/commit/92baa14fd3f45c0917c5988235cd1a0f8692f171) [@bep](https://github.com/bep) [#5757](https://github.com/gohugoio/hugo/issues/5757)
+* Add a simple test for jsonify of Site [8bfd3a54](https://github.com/gohugoio/hugo/commit/8bfd3a54a4142c397cab69bfa9699e5b5db9b40b) [@bep](https://github.com/bep) [#5780](https://github.com/gohugoio/hugo/issues/5780)
+* Do not fall back to site title if not set in content file [9bc6187b](https://github.com/gohugoio/hugo/commit/9bc6187b8337c4a370bd3f21130a764d9ef6f7b3) [@bep](https://github.com/bep) [#5784](https://github.com/gohugoio/hugo/issues/5784)
+* Add a test for home page with no title [bceda1b2](https://github.com/gohugoio/hugo/commit/bceda1b288f0ad6282916826b596cb1fe19983bb) [@bep](https://github.com/bep) [#5784](https://github.com/gohugoio/hugo/issues/5784)
+* Add String() to fileInfo [a7ee9b0b](https://github.com/gohugoio/hugo/commit/a7ee9b0bb98f519e485655af578fb35d755e5c44) [@bep](https://github.com/bep) [#5784](https://github.com/gohugoio/hugo/issues/5784)
+* Remove unused slice [3011f36c](https://github.com/gohugoio/hugo/commit/3011f36c27ecde309325e6c75ca377f4f87fa97a) [@bep](https://github.com/bep)
+* Adjust site benchmark [34c49d78](https://github.com/gohugoio/hugo/commit/34c49d788c102a370006e476d6f6143a51b2a03d) [@bep](https://github.com/bep)
+* Adjust test for Go 1.12 [b4148cd1](https://github.com/gohugoio/hugo/commit/b4148cd1d9ea889b81070d3e84a37bd5d23e5746) [@bep](https://github.com/bep)
+
+### Other
+
+* Misc paginator adjustments [612a06f0](https://github.com/gohugoio/hugo/commit/612a06f0671125be6b42ec2982a18080005994c8) [@bep](https://github.com/bep) [#5825](https://github.com/gohugoio/hugo/issues/5825)
+* Update to Go 1.12.2 and Go 1.11.7 [3db4a1cf](https://github.com/gohugoio/hugo/commit/3db4a1cf7ab12343ce5705ac56aa7ca6ea1677b6) [@bep](https://github.com/bep) [#5819](https://github.com/gohugoio/hugo/issues/5819)
+* Adjust rlimit logic [708d4cee](https://github.com/gohugoio/hugo/commit/708d4ceebd491c6a89f271311eb8d94d6b5d58bc) [@bep](https://github.com/bep) [#5821](https://github.com/gohugoio/hugo/issues/5821)
+* Add information about summary front matter variable [ed65bda3](https://github.com/gohugoio/hugo/commit/ed65bda3b43f6149e41ddb049cbb295a82473bc9) [@mcdee](https://github.com/mcdee)
+* Regenerate JSON wrapper [ebab291c](https://github.com/gohugoio/hugo/commit/ebab291c0e321d23b098684bacaf830a3979e310) [@bep](https://github.com/bep)
+* Add missing GitInfo to Page [75467cd7](https://github.com/gohugoio/hugo/commit/75467cd7852852305549a6c71ac503bb4a57e716) [@bep](https://github.com/bep)
+* Add support for sha384 [d1553b4b](https://github.com/gohugoio/hugo/commit/d1553b4b0f83e4a4305d2b4ab9ba6e305637f134) [@bep](https://github.com/bep) [#5815](https://github.com/gohugoio/hugo/issues/5815)
+* Add HUGO_NUMWORKERMULTIPLIER [87b16abd](https://github.com/gohugoio/hugo/commit/87b16abd93ff60acd245776d5b0d914fd580c259) [@bep](https://github.com/bep) [#5814](https://github.com/gohugoio/hugo/issues/5814)
+* Use YAML for the benchmark compare [8559f5c2](https://github.com/gohugoio/hugo/commit/8559f5c29f20b7b5188f93f8b1d9e510e3dee4f5) [@bep](https://github.com/bep)
+* Update to imaging v1.6.0 [032e6802](https://github.com/gohugoio/hugo/commit/032e6802d1f34cc41f6d1275fdd2deab8bbe5480) [@bep](https://github.com/bep) [#5812](https://github.com/gohugoio/hugo/issues/5812)
+* Adjust the howSimilar logic vs strings [4494a01b](https://github.com/gohugoio/hugo/commit/4494a01b794ab785c64c8e93c61ccbfa845bc478) [@bep](https://github.com/bep)
+* Implement compare.ProbablyEqer for the core slices [e91e222c](https://github.com/gohugoio/hugo/commit/e91e222cd21213961d1e6206e1523bee2c21fa0c) [@bep](https://github.com/bep) [#5808](https://github.com/gohugoio/hugo/issues/5808)
+* Regenerate docshelper data [bfdc4496](https://github.com/gohugoio/hugo/commit/bfdc44964af82807fa91407132d47b6bf52704c3) [@bep](https://github.com/bep) [#5799](https://github.com/gohugoio/hugo/issues/5799)
+* Update Chroma [cc8515f1](https://github.com/gohugoio/hugo/commit/cc8515f18767298da4c6d712d1fd747c7950150b) [@bep](https://github.com/bep) [#5780](https://github.com/gohugoio/hugo/issues/5780)
+* Regenerate CLI docs [bb533ca5](https://github.com/gohugoio/hugo/commit/bb533ca5e1c778c95ed7014eab99c8cc1bd4c85e) [@bep](https://github.com/bep) [#5779](https://github.com/gohugoio/hugo/issues/5779)
+* Update Afero [10bb614a](https://github.com/gohugoio/hugo/commit/10bb614a70db22c01c9a52054ede35bc0a01aa24) [@bep](https://github.com/bep) [#5673](https://github.com/gohugoio/hugo/issues/5673)
+* Avoid nilpointer on no File on Page [4dae52af](https://github.com/gohugoio/hugo/commit/4dae52af680e6ff2c8cdeb4ce1f219330b27001c) [@bep](https://github.com/bep) [#5781](https://github.com/gohugoio/hugo/issues/5781)
+* Improve the "feature not available" error [794d4052](https://github.com/gohugoio/hugo/commit/794d4052b87c98943588b35e1cfecc06e6a0c7f2) [@bep](https://github.com/bep)
+* Re-introduce .Page.Page [91ef9655](https://github.com/gohugoio/hugo/commit/91ef9655aaf2adea3a044bf9a464908084917a98) [@bep](https://github.com/bep) [#5784](https://github.com/gohugoio/hugo/issues/5784)
+* Apply staticcheck recommendations [b5f39d23](https://github.com/gohugoio/hugo/commit/b5f39d23b86f9cb83c51da9fe4abb4c19c01c3b7) [@bep](https://github.com/bep)
+* Run gofmt -s [d30e8454](https://github.com/gohugoio/hugo/commit/d30e845485b416e1c48fade14694b12a9fe59b6b) [@bep](https://github.com/bep)
+* Make Page an interface [597e418c](https://github.com/gohugoio/hugo/commit/597e418cb02883418f2cebb41400e8e61413f651) [@bep](https://github.com/bep) [#5074](https://github.com/gohugoio/hugo/issues/5074)[#5763](https://github.com/gohugoio/hugo/issues/5763)[#5758](https://github.com/gohugoio/hugo/issues/5758)[#5090](https://github.com/gohugoio/hugo/issues/5090)[#5204](https://github.com/gohugoio/hugo/issues/5204)[#4695](https://github.com/gohugoio/hugo/issues/4695)[#5607](https://github.com/gohugoio/hugo/issues/5607)[#5707](https://github.com/gohugoio/hugo/issues/5707)[#5719](https://github.com/gohugoio/hugo/issues/5719)[#3113](https://github.com/gohugoio/hugo/issues/3113)[#5706](https://github.com/gohugoio/hugo/issues/5706)[#5767](https://github.com/gohugoio/hugo/issues/5767)[#5723](https://github.com/gohugoio/hugo/issues/5723)[#5769](https://github.com/gohugoio/hugo/issues/5769)[#5770](https://github.com/gohugoio/hugo/issues/5770)[#5771](https://github.com/gohugoio/hugo/issues/5771)[#5759](https://github.com/gohugoio/hugo/issues/5759)[#5776](https://github.com/gohugoio/hugo/issues/5776)[#5777](https://github.com/gohugoio/hugo/issues/5777)[#5778](https://github.com/gohugoio/hugo/issues/5778)
+* List future and expired dates in CSV format [44f5c1c1](https://github.com/gohugoio/hugo/commit/44f5c1c14cb1f42cc5f01739c289e9cfc83602af) [@danielcompton](https://github.com/danielcompton) [#5610](https://github.com/gohugoio/hugo/issues/5610)
+* Update to Go 1.12.1 and Go 1.11.6 [984a73af](https://github.com/gohugoio/hugo/commit/984a73af9e5b5145297723f26faa38f29ca2918d) [@bep](https://github.com/bep) [#5755](https://github.com/gohugoio/hugo/issues/5755)
+* Update Viper [79d517d8](https://github.com/gohugoio/hugo/commit/79d517d86c02e879bc4a43ab86b817c589b61485) [@bep](https://github.com/bep)
+* Update to Go 1.12 [b9e75afd](https://github.com/gohugoio/hugo/commit/b9e75afd6c007a6af8b71caeebc4a5a24c270861) [@bep](https://github.com/bep) [#5716](https://github.com/gohugoio/hugo/issues/5716)
+* Remove Gitter dev chat link [dfc72d61](https://github.com/gohugoio/hugo/commit/dfc72d61a522f5cb926271d9391a8670f064d198) [@bep](https://github.com/bep)
+* Update Travis config to work for forked builds [bdf47e8d](https://github.com/gohugoio/hugo/commit/bdf47e8da80f87b7689badf48a6b8672c048d7e4) [@grahamjamesaddis](https://github.com/grahamjamesaddis)
+* Add skipHTML option to blackfriday config [75904332](https://github.com/gohugoio/hugo/commit/75904332f3bedcfe656856821d4c9560a177cc51) [@arrtchiu](https://github.com/arrtchiu)
+* Update stretchr/testify to 1.3.0. [60c0eb4e](https://github.com/gohugoio/hugo/commit/60c0eb4e892baedd533424b47baf7039c0005f87) [@QuLogic](https://github.com/QuLogic)
+* Rewrite relative action URLS [c154c2f7](https://github.com/gohugoio/hugo/commit/c154c2f7b2a6703dbde7f6bd2a1817a39c6fd2ea) [@larson004](https://github.com/larson004) [#5701](https://github.com/gohugoio/hugo/issues/5701)
+* Support Docker args TAGS, WORKDIR, CGO; speed up repetitive builds [075b17ee](https://github.com/gohugoio/hugo/commit/075b17ee1d621e0ebbcecf1063f8f68a00ac221a) [@tonymet](https://github.com/tonymet)
+* Support nested keys/fields with missing values with the `where` function [908692fa](https://github.com/gohugoio/hugo/commit/908692fae5c5840a0db8c7dd389b59dd3b8026b9) [@tryzniak](https://github.com/tryzniak) [#5637](https://github.com/gohugoio/hugo/issues/5637)[#5416](https://github.com/gohugoio/hugo/issues/5416)
+* Update debouncer version [7e4b18c5](https://github.com/gohugoio/hugo/commit/7e4b18c5ae409435760ebd86ff9ee3061db34a5d) [@bep](https://github.com/bep)
+
+## Fixes
+
+### Templates
+
+* Fix mutex unlock [e54213f5](https://github.com/gohugoio/hugo/commit/e54213f5257267ed232b2465337c39ddc8c73388) [@bep](https://github.com/bep)
+* Fix template truth logic [02eaddc2](https://github.com/gohugoio/hugo/commit/02eaddc2fbe92c26e67d9f82dd9aabecbbf2106c) [@bep](https://github.com/bep) [#5738](https://github.com/gohugoio/hugo/issues/5738)
+* Fix strings.HasPrefix args order [72010429](https://github.com/gohugoio/hugo/commit/7201042946dde78d5ea4fea9cb006fb4dded55c1) [@quasilyte](https://github.com/quasilyte)
+
+### Core
+
+* Fix default date assignment for sections [1d9dde82](https://github.com/gohugoio/hugo/commit/1d9dde82a0577d93eea8ed0a7ec0b4ae3068eb19) [@bep](https://github.com/bep) [#5784](https://github.com/gohugoio/hugo/issues/5784)
+* Fix the GOMAXPROCS env get [415ca967](https://github.com/gohugoio/hugo/commit/415ca9673d3bd3c06ab94f3d83897c892fce5f27) [@bep](https://github.com/bep) [#5813](https://github.com/gohugoio/hugo/issues/5813)
+* Fix benchmark for YAML front matter [e2dc432f](https://github.com/gohugoio/hugo/commit/e2dc432fe287a280aeba94bafdcce85b7a8646c6) [@bep](https://github.com/bep)
+* Fix alias path for AMP and similar [f9d6feca](https://github.com/gohugoio/hugo/commit/f9d6feca0802cd83c4d843244ce389cf7c792cec) [@bep](https://github.com/bep) [#5760](https://github.com/gohugoio/hugo/issues/5760)
+
+### Other
+
+* Fix image publish ordering issue [439ab033](https://github.com/gohugoio/hugo/commit/439ab0339d9ac6972caabaa55fa41887ace839cb) [@bep](https://github.com/bep) [#5730](https://github.com/gohugoio/hugo/issues/5730)
+* Fix doLiveReload logic [4a2a8aff](https://github.com/gohugoio/hugo/commit/4a2a8afff2021c8e967254c76c159147da7e78fa) [@bep](https://github.com/bep) [#5754](https://github.com/gohugoio/hugo/issues/5754)
+* Fix args order in strings.TrimPrefix [483cf19d](https://github.com/gohugoio/hugo/commit/483cf19d5de05e8a83fd1be6934baa169c7fd7c8) [@quasilyte](https://github.com/quasilyte)
+
+
+
+
+
diff --git a/docs/content/en/news/0.55.1-relnotes/index.md b/docs/content/en/news/0.55.1-relnotes/index.md
new file mode 100644
index 000000000..4e9880dc5
--- /dev/null
+++ b/docs/content/en/news/0.55.1-relnotes/index.md
@@ -0,0 +1,53 @@
+
+---
+date: 2019-04-12
+title: "0.55.1: 3 Bug Fixes"
+description: "Fixes 3 issues introduced in 0.55.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+
+Hugo now has:
+
+* 34225+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 439+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 307+ [themes](http://themes.gohugo.io/)
+
+
+## Notes
+
+* Replace deprecated .GetParam usage [27a8049d](https://github.com/gohugoio/hugo/commit/27a8049da7996b703d02083182b84a002eae2599) [@bep](https://github.com/bep) [#5834](https://github.com/gohugoio/hugo/issues/5834)
+
+## Enhancements
+
+### Core
+
+* Add a test for parent's resources in shortcode [8d7607ae](https://github.com/gohugoio/hugo/commit/8d7607aed10b3fe7373126ff5fa7dae36c559d7f) [@bep](https://github.com/bep) [#5833](https://github.com/gohugoio/hugo/issues/5833)
+
+### Other
+
+* Remove the space in `. RelPermalink` [7966c0b5](https://github.com/gohugoio/hugo/commit/7966c0b5b7b2297527f8be9040b793de5e4e3f48) [@yihui](https://github.com/yihui)
+
+## Fixes
+
+### Core
+
+* Fix simple menu config [9e9a1f92](https://github.com/gohugoio/hugo/commit/9e9a1f92baf151f8d840d6b5b963945d1410ce25) [@bep](https://github.com/bep)
+
+### Other
+
+* Fix [4d425a86](https://github.com/gohugoio/hugo/commit/4d425a86f5c03a5cca27d4e0f99d61acbb938d80) [@bep](https://github.com/bep)
+* Fix paginator refresh on server change [f7375c49](https://github.com/gohugoio/hugo/commit/f7375c497239115cd30ae42af6b4d298e4e7ad7d) [@bep](https://github.com/bep) [#5838](https://github.com/gohugoio/hugo/issues/5838)
+* Fix .RSSLinke deprecation message [3b86b4a9](https://github.com/gohugoio/hugo/commit/3b86b4a9f5ce010c9714d813d5b8ecddda22c69f) [@bep](https://github.com/bep) [#4427](https://github.com/gohugoio/hugo/issues/4427)
+
+
+
+
+
diff --git a/docs/content/en/news/0.55.2-relnotes/index.md b/docs/content/en/news/0.55.2-relnotes/index.md
new file mode 100644
index 000000000..0b6f49b11
--- /dev/null
+++ b/docs/content/en/news/0.55.2-relnotes/index.md
@@ -0,0 +1,51 @@
+
+---
+date: 2019-04-17
+title: "Hugo 0.55.2: Some Important Bug Fixes"
+description: "Fixes some more issues introduced in Hugo 0.55.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+
+Hugo now has:
+
+* 34386+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 439+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 307+ [themes](http://themes.gohugo.io/)
+
+## Enhancements
+
+### Templates
+
+* Handle late transformation of templates [2957795f](https://github.com/gohugoio/hugo/commit/2957795f5276cc9bc8d438da2d7d9b61defea225) [@bep](https://github.com/bep) [#5865](https://github.com/gohugoio/hugo/issues/5865)
+
+### Core
+
+* Add more tests for Permalinkable [35f41834](https://github.com/gohugoio/hugo/commit/35f41834ea3a8799b9b7eda360cf8d30b1b727ba) [@bep](https://github.com/bep) [#5849](https://github.com/gohugoio/hugo/issues/5849)
+
+## Fixes
+
+### Core
+
+* Fix Pages reinitialization on rebuilds [9b17cbb6](https://github.com/gohugoio/hugo/commit/9b17cbb62a056ea7e26b1146cbf3ba42f5acf805) [@bep](https://github.com/bep) [#5833](https://github.com/gohugoio/hugo/issues/5833)
+* Fix shortcode namespace issue [56550d1e](https://github.com/gohugoio/hugo/commit/56550d1e449f45ebee398ac8a9e3b9818b3ee60e) [@bep](https://github.com/bep) [#5863](https://github.com/gohugoio/hugo/issues/5863)
+* Fix false WARNINGs in lang prefix check [7881b096](https://github.com/gohugoio/hugo/commit/7881b0965f8b83d03379e9ed102cd0c3bce297e2) [@bep](https://github.com/bep) [#5860](https://github.com/gohugoio/hugo/issues/5860)
+* Fix bundle resource publishing when multiple output formats [49d0a826](https://github.com/gohugoio/hugo/commit/49d0a82641581aa7dd66b9d5e8c7d75e23260083) [@bep](https://github.com/bep) [#5858](https://github.com/gohugoio/hugo/issues/5858)
+* Fix panic for unused taxonomy content files [b799b12f](https://github.com/gohugoio/hugo/commit/b799b12f4a693dfeae8a5a362f131081a727bb8f) [@bep](https://github.com/bep) [#5847](https://github.com/gohugoio/hugo/issues/5847)
+* Fix dates for sections with dates in front matter [70148672](https://github.com/gohugoio/hugo/commit/701486728e21bc0c6c78c2a8edb988abdf6116c7) [@bep](https://github.com/bep) [#5854](https://github.com/gohugoio/hugo/issues/5854)
+
+### Other
+
+* Fix WeightedPages in union etc. [f2795d4d](https://github.com/gohugoio/hugo/commit/f2795d4d2cef30170af43327f3ff7114923833b1) [@bep](https://github.com/bep) [#5850](https://github.com/gohugoio/hugo/issues/5850)
+
+
+
+
+
diff --git a/docs/content/en/news/0.55.3-relnotes/index.md b/docs/content/en/news/0.55.3-relnotes/index.md
new file mode 100644
index 000000000..d00c47d54
--- /dev/null
+++ b/docs/content/en/news/0.55.3-relnotes/index.md
@@ -0,0 +1,49 @@
+
+---
+date: 2019-04-20
+title: "Hugo 0.55.3: A Few More Bug Fixes!"
+description: "To wrap up this Easter, here is one more patch release with some important fixes."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+This is a bug-fix release with a couple of important fixes.
+
+
+Hugo now has:
+
+* 34468+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 439+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 308+ [themes](http://themes.gohugo.io/)
+
+## Enhancements
+
+### Templates
+
+* Return error on invalid input in in [7fbfedf0](https://github.com/gohugoio/hugo/commit/7fbfedf01367ff076c3c875b183789b769b99241) [@bep](https://github.com/bep) [#5875](https://github.com/gohugoio/hugo/issues/5875)
+* Make Pages etc. work with the in func [06f56fc9](https://github.com/gohugoio/hugo/commit/06f56fc983d460506d39b3a6f638b1632af07073) [@bep](https://github.com/bep) [#5875](https://github.com/gohugoio/hugo/issues/5875)
+* Make Pages etc. work in uniq [d7a67dcb](https://github.com/gohugoio/hugo/commit/d7a67dcb51829b12d492d3f2ee4f6e2a3834da63) [@bep](https://github.com/bep) [#5852](https://github.com/gohugoio/hugo/issues/5852)
+
+### Core
+
+* Add some OutputFormats.Get tests [7aeeb60d](https://github.com/gohugoio/hugo/commit/7aeeb60d7ee71690461df92ff41cb8b2f7f5aa61) [@bep](https://github.com/bep) [#5877](https://github.com/gohugoio/hugo/issues/5877)
+* Add some integration tests for in/uniq using Pages [6c80acbd](https://github.com/gohugoio/hugo/commit/6c80acbd5e314dd92fc075551ffabafaae01dca7) [@bep](https://github.com/bep) [#5875](https://github.com/gohugoio/hugo/issues/5875)[#5852](https://github.com/gohugoio/hugo/issues/5852)
+
+### Other
+
+* Regenerate docs helper [75b16e30](https://github.com/gohugoio/hugo/commit/75b16e30ec55e82a8024cc4d27880d9b79e0fa41) [@bep](https://github.com/bep)
+* Replace IsDraft with Draft in list command [3e421bd4](https://github.com/gohugoio/hugo/commit/3e421bd47cd35061df89c1c127ec8fa4ae368449) [@bep](https://github.com/bep) [#5873](https://github.com/gohugoio/hugo/issues/5873)
+
+## Fixes
+
+### Output
+
+* Fix links for non-HTML output formats [c7dd66bf](https://github.com/gohugoio/hugo/commit/c7dd66bfe2e32430f9b1a3126c67014e40d8405e) [@bep](https://github.com/bep) [#5877](https://github.com/gohugoio/hugo/issues/5877)
+* Fix menu URL when multiple permalinkable output formats [ea529c84](https://github.com/gohugoio/hugo/commit/ea529c847ebc0267c6d0426cc8f77d5c76c73fe4) [@bep](https://github.com/bep) [#5849](https://github.com/gohugoio/hugo/issues/5849)
+
+
+
+
+
diff --git a/docs/content/en/news/0.55.4-relnotes/index.md b/docs/content/en/news/0.55.4-relnotes/index.md
new file mode 100644
index 000000000..292b39244
--- /dev/null
+++ b/docs/content/en/news/0.55.4-relnotes/index.md
@@ -0,0 +1,44 @@
+
+---
+date: 2019-04-25
+title: "Hugo 0.55.4: Some Bug Fixes"
+description: "A couple of more bug fixes."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+
+Hugo now has:
+
+* 34558+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 439+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 310+ [themes](http://themes.gohugo.io/)
+
+## Enhancements
+
+### Core
+
+* Avoid recloning of shortcode templates [69a56420](https://github.com/gohugoio/hugo/commit/69a56420aec5bf5abb846701d4a5ec67fe060d96) [@bep](https://github.com/bep) [#5890](https://github.com/gohugoio/hugo/issues/5890)
+* No links for bundled pages [0775c98e](https://github.com/gohugoio/hugo/commit/0775c98e6c5b700e46adaaf190fc3f693a6ab002) [@bep](https://github.com/bep) [#5882](https://github.com/gohugoio/hugo/issues/5882)
+
+### Other
+
+* Avoid rebuilding the Translations map for every lookup [4756ec3c](https://github.com/gohugoio/hugo/commit/4756ec3cd8ef998f889619fe11be70cc900e2b75) [@bep](https://github.com/bep) [#5892](https://github.com/gohugoio/hugo/issues/5892)
+* Init mem profile at the end [4c3c5120](https://github.com/gohugoio/hugo/commit/4c3c5120389cc95edc63b8f18a0eee786aa0c5e2) [@bep](https://github.com/bep)
+
+## Fixes
+
+### Core
+
+* Fix shortcode version=1 logic [33c73811](https://github.com/gohugoio/hugo/commit/33c738116c26e2ac37f4bd48159e8e3197fd7b39) [@bep](https://github.com/bep) [#5831](https://github.com/gohugoio/hugo/issues/5831)
+
+
+
+
+
diff --git a/docs/content/en/news/0.55.5-relnotes/index.md b/docs/content/en/news/0.55.5-relnotes/index.md
new file mode 100644
index 000000000..45a3eda54
--- /dev/null
+++ b/docs/content/en/news/0.55.5-relnotes/index.md
@@ -0,0 +1,56 @@
+
+---
+date: 2019-05-02
+title: "Hugo 0.55.5: Take Five!"
+description: "We round up this 0.55 release with a final batch of bug fixes!"
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+
+Hugo now has:
+
+* 34743+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 439+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 314+ [themes](http://themes.gohugo.io/)
+
+## Enhancements
+
+### Templates
+
+* Provide more detailed errors in Where [f76e5011](https://github.com/gohugoio/hugo/commit/f76e50118b8b5dd8989d068db35222bfa0a242d8) [@moorereason](https://github.com/moorereason)
+
+### Other
+
+* Regenerate docs helper [cee181c3](https://github.com/gohugoio/hugo/commit/cee181c3a67fe04b8e0c9f2807c5aa2871df474e) [@bep](https://github.com/bep)
+* Update blackfriday to v1.5.2 [1cbb501b](https://github.com/gohugoio/hugo/commit/1cbb501be8aa83b08865fbb6ad5aee254946712f) [@dbirks](https://github.com/dbirks)
+
+## Fixes
+
+### Templates
+
+* Fix nil compare in eq/ne for interface values [66b143a0](https://github.com/gohugoio/hugo/commit/66b143a01d1c192619839b732ce188923ab15d60) [@bep](https://github.com/bep) [#5905](https://github.com/gohugoio/hugo/issues/5905)
+* Fix hugo package name and add godocs [4f93f8c6](https://github.com/gohugoio/hugo/commit/4f93f8c670b26258dc7e3a613c38dbc86d8eda76) [@moorereason](https://github.com/moorereason)
+
+### Output
+
+* Fix permalink in sitemap etc. when multiple permalinkable output formats [6b76841b](https://github.com/gohugoio/hugo/commit/6b76841b052b97625b8995f326d758b89f5c2349) [@bep](https://github.com/bep) [#5910](https://github.com/gohugoio/hugo/issues/5910)
+
+### Core
+
+* Fix PrevInSection/NextInSection for nested sections [bcbed4eb](https://github.com/gohugoio/hugo/commit/bcbed4ebdaf55b67abc521d69bba456c041a7e7d) [@bep](https://github.com/bep) [#5883](https://github.com/gohugoio/hugo/issues/5883)
+
+### Other
+
+* Fix concurrent initialization order [009076e5](https://github.com/gohugoio/hugo/commit/009076e5ee88fc46c95a9afd34f82f9386aa282a) [@bep](https://github.com/bep) [#5901](https://github.com/gohugoio/hugo/issues/5901)
+
+
+
+
+
diff --git a/docs/content/en/news/0.55.6-relnotes/index.md b/docs/content/en/news/0.55.6-relnotes/index.md
new file mode 100644
index 000000000..c447aa061
--- /dev/null
+++ b/docs/content/en/news/0.55.6-relnotes/index.md
@@ -0,0 +1,13 @@
+
+---
+date: 2019-05-18
+title: "Hugo 0.55.6: One Bug Fix!"
+description: "Fixes some reported paginator crashes in server mode."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+This is a bug-fix release with one important fix. There have been reports about infrequent paginator crashes when running the Hugo server since 0.55.0. The reason have been narrowed down to that of parallel rebuilds. This isn't a new thing, but the changes in 0.55.0 made it extra important to serialize the page initialization. This release fixes that by protecting the `Build` method with a lock when running in server mode. [95ce2a40](https://github.com/gohugoio/hugo/commit/95ce2a40e734bb82b69f9a64270faf3ed69c92cc) [@bep](https://github.com/bep) [#5885](https://github.com/gohugoio/hugo/issues/5885)[#5968](https://github.com/gohugoio/hugo/issues/5968)
+
diff --git a/docs/content/en/news/0.56.0-relnotes/featured.png b/docs/content/en/news/0.56.0-relnotes/featured.png
new file mode 100644
index 000000000..bd6410ead
--- /dev/null
+++ b/docs/content/en/news/0.56.0-relnotes/featured.png
Binary files differ
diff --git a/docs/content/en/news/0.56.0-relnotes/index.md b/docs/content/en/news/0.56.0-relnotes/index.md
new file mode 100644
index 000000000..631c1c6a5
--- /dev/null
+++ b/docs/content/en/news/0.56.0-relnotes/index.md
@@ -0,0 +1,189 @@
+
+---
+date: 2019-07-25
+title: "Hugo 0.56.0: Hugo Modules and Deployment"
+description: "This release adds powerful module support with dependency management for all component types, including content. And we now have built-in deployment support to GCS, S3, or Azure."
+categories: ["Releases"]
+---
+
+
+**Hugo 0.56.0** is filled with improvements, but there are two main headliners: **Hugo Modules** and **Hugo Deploy**.
+
+**Hugo Deploy** is implemented by [@vangent](https://github.com/vangent) and brings built-in deployment support for GCS, S3, or Azure using the Hugo CLI. See the [Hugo Deploy Documentation](https://gohugo.io/hosting-and-deployment/hugo-deploy/) for more information.
+
+**Hugo Modules** is very much a community effort on the design and specification side, but [@bep](https://github.com/bep) has driven the implementation. Some notes about what all of this is about:
+
+* A new `module` configuration section where you can import almost anything. You can configure both your own file mounts and the file mounts of the modules you import. This is the new recommended way of configuring what you earlier put in `configDir`, `staticDir` etc. And it also allows you to mount folders in non-Hugo-projects, e.g. the `SCSS` folder in the Bootstrap GitHub project.
+* A module consists of a set of mounts to the standard 7 component types in Hugo: `static`, `content`, `layouts`, `data`, `assets`, `i18n`, and `archetypes`. Yes, Theme Components can now include content, which should be very useful, especially in bigger multilingual projects.
+* Modules not in your local file cache will be downloaded automatically and even "hot replaced" while the server is running.
+* Hugo Modules supports and encourages semver versioned modules, and uses the minimal version selection algorithm to resolve versions.
+* A new set of CLI commands are provided to manage all of this: `hugo mod init`, `hugo mod get`, `hugo mod graph`, `hugo mod tidy`, and `hugo mod vendor`.
+
+**Hugo Modules is powered by Go Modules.**
+
+This is all very much brand new and there are only a few example projects around:
+
+* https://github.com/bep/docuapi is a theme that has been ported to **Hugo Modules** while testing this feature. It is a good example of a non-Hugo-project mounted into Hugo's folder structure. It even shows a JS Bundler implementation in regular Go templates.
+* https://github.com/bep/my-modular-site is a very simple site used for testing.
+
+See the [Hugo Modules Documentation](https://gohugo.io/hugo-modules/) for more information.
+
+This release represents **104 contributions by 19 contributors** to the main Hugo code base.
+[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@vangent](https://github.com/vangent), [@niklasfasching](https://github.com/niklasfasching), and [@coliff](https://github.com/coliff) for their ongoing contributions.
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) and [@onedrawingperday](https://github.com/onedrawingperday) for their relentless work on keeping the themes site in pristine condition and to [@kaushalmodi](https://github.com/kaushalmodi) for his great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **48 contributions by 37 contributors**. A special thanks to [@davidsneighbour](https://github.com/davidsneighbour), [@bep](https://github.com/bep), [@BCNelson](https://github.com/BCNelson), and [@coliff](https://github.com/coliff) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 36902+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 440+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 328+ [themes](http://themes.gohugo.io/)
+
+
+## Notes
+
+* We have removed the "auto theme namespacing" of params from theme configuration. This was an undocumented and hidden feature that wasn't useful in practice.
+* We have revised and improved the symlinks support in Hugo: In earlier versions, symlinks were only fully supported for the content folders. With the introduction of the new very flexible file mounts, with content support even for what we have traditionally named "themes", we needed a more precise definition of symlink support in Hugo:
+
+ * Symlinks are not supported outside of the main project ((the project you run `hugo` or `hugo server` from).
+ * In the main project `static` mounts, only symlinks to files are supported.
+ * In all other mounts in the main project, both file and directory symlinks are allowed.
+
+## Enhancements
+
+### Templates
+
+* Add Merge function [c624a779](https://github.com/gohugoio/hugo/commit/c624a77992c4f7c1bcb5f659e89332d8588986b7) [@bep](https://github.com/bep) [#5992](https://github.com/gohugoio/hugo/issues/5992)
+* Regenerate templates [b2a3d464](https://github.com/gohugoio/hugo/commit/b2a3d4644bb5a505db662b2927af6f80856a3076) [@bep](https://github.com/bep)
+* Unwrap any interface value in sort and where [8d898ad6](https://github.com/gohugoio/hugo/commit/8d898ad6672e0ccb62c5a29b6fccab24d980f104) [@bep](https://github.com/bep) [#5989](https://github.com/gohugoio/hugo/issues/5989)
+* Convert numeric values to float64 and compare them [fb007e9a](https://github.com/gohugoio/hugo/commit/fb007e9ae56f295abe9835485f98dcf3cc362420) [@tryzniak](https://github.com/tryzniak) [#5685](https://github.com/gohugoio/hugo/issues/5685)
+* Provide more detailed errors in Where [f76e5011](https://github.com/gohugoio/hugo/commit/f76e50118b8b5dd8989d068db35222bfa0a242d8) [@moorereason](https://github.com/moorereason)
+* Return error on invalid input in in [7fbfedf0](https://github.com/gohugoio/hugo/commit/7fbfedf01367ff076c3c875b183789b769b99241) [@bep](https://github.com/bep) [#5875](https://github.com/gohugoio/hugo/issues/5875)
+* Make Pages etc. work with the in func [06f56fc9](https://github.com/gohugoio/hugo/commit/06f56fc983d460506d39b3a6f638b1632af07073) [@bep](https://github.com/bep) [#5875](https://github.com/gohugoio/hugo/issues/5875)
+* Make Pages etc. work in uniq [d7a67dcb](https://github.com/gohugoio/hugo/commit/d7a67dcb51829b12d492d3f2ee4f6e2a3834da63) [@bep](https://github.com/bep) [#5852](https://github.com/gohugoio/hugo/issues/5852)
+* Handle late transformation of templates [2957795f](https://github.com/gohugoio/hugo/commit/2957795f5276cc9bc8d438da2d7d9b61defea225) [@bep](https://github.com/bep) [#5865](https://github.com/gohugoio/hugo/issues/5865)
+
+### Output
+
+* Remove comma after URL in new site output [de7b9475](https://github.com/gohugoio/hugo/commit/de7b9475c049e5df5b076d80799ebcbee3eb84c8) [@snorfalorpagus](https://github.com/snorfalorpagus)
+
+### Core
+
+* Add a symdiff test [072aa7f1](https://github.com/gohugoio/hugo/commit/072aa7f110ddc8a8b9dbc6d4cad3e5ba6c2ac4d0) [@bep](https://github.com/bep)
+* Add testfile to .gitignore [7611078d](https://github.com/gohugoio/hugo/commit/7611078daef32306ab31fe360db9895cdd3626d3) [@bep](https://github.com/bep)
+* Add another site benchmark [dc1d4a92](https://github.com/gohugoio/hugo/commit/dc1d4a9200c54e631775f34725140fd5009aa561) [@bep](https://github.com/bep)
+* Prevent parallel server rebuilds [95ce2a40](https://github.com/gohugoio/hugo/commit/95ce2a40e734bb82b69f9a64270faf3ed69c92cc) [@bep](https://github.com/bep) [#5885](https://github.com/gohugoio/hugo/issues/5885)[#5968](https://github.com/gohugoio/hugo/issues/5968)
+* Disable racy test [ad5703a9](https://github.com/gohugoio/hugo/commit/ad5703a91712cd245231ba8fdbc49632c794a165) [@bep](https://github.com/bep) [#5926](https://github.com/gohugoio/hugo/issues/5926)
+* Avoid recloning of shortcode templates [69a56420](https://github.com/gohugoio/hugo/commit/69a56420aec5bf5abb846701d4a5ec67fe060d96) [@bep](https://github.com/bep) [#5890](https://github.com/gohugoio/hugo/issues/5890)
+* No links for bundled pages [0775c98e](https://github.com/gohugoio/hugo/commit/0775c98e6c5b700e46adaaf190fc3f693a6ab002) [@bep](https://github.com/bep) [#5882](https://github.com/gohugoio/hugo/issues/5882)
+* Add some OutputFormats.Get tests [7aeeb60d](https://github.com/gohugoio/hugo/commit/7aeeb60d7ee71690461df92ff41cb8b2f7f5aa61) [@bep](https://github.com/bep) [#5877](https://github.com/gohugoio/hugo/issues/5877)
+* Add some integration tests for in/uniq using Pages [6c80acbd](https://github.com/gohugoio/hugo/commit/6c80acbd5e314dd92fc075551ffabafaae01dca7) [@bep](https://github.com/bep) [#5875](https://github.com/gohugoio/hugo/issues/5875)[#5852](https://github.com/gohugoio/hugo/issues/5852)
+* Add more tests for Permalinkable [35f41834](https://github.com/gohugoio/hugo/commit/35f41834ea3a8799b9b7eda360cf8d30b1b727ba) [@bep](https://github.com/bep) [#5849](https://github.com/gohugoio/hugo/issues/5849)
+* Add a test for parent's resources in shortcode [8d7607ae](https://github.com/gohugoio/hugo/commit/8d7607aed10b3fe7373126ff5fa7dae36c559d7f) [@bep](https://github.com/bep) [#5833](https://github.com/gohugoio/hugo/issues/5833)
+
+### Other
+
+* Add Hugo Modules docs [77bf2991](https://github.com/gohugoio/hugo/commit/77bf2991b1690bcde8c6570cd4c12f2041d93096) [@bep](https://github.com/bep)
+* Block symlink dir traversal for /static [e5f22997](https://github.com/gohugoio/hugo/commit/e5f229974166402f51e4ee0695ffb4d1e09fa174) [@bep](https://github.com/bep)
+* modules: Gofmt [87a07282](https://github.com/gohugoio/hugo/commit/87a07282a2f01779e098cde0aaee1bae34dc32e6) [@bep](https://github.com/bep)
+* Rename disabled => disable in config [882d678b](https://github.com/gohugoio/hugo/commit/882d678bbf2a149a90e2aed4341d7f6fc2cb394d) [@bep](https://github.com/bep)
+* Regenerate CLI docs [215d2ed8](https://github.com/gohugoio/hugo/commit/215d2ed883d5adbde1d119d33e2f2e88c8435f41) [@bep](https://github.com/bep)
+* Regenerate data helpers [23adc0c2](https://github.com/gohugoio/hugo/commit/23adc0c2d96d33b426836b09683d2440d6186728) [@bep](https://github.com/bep)
+* Add Hugo Modules [9f5a9207](https://github.com/gohugoio/hugo/commit/9f5a92078a3f388b52d597b5a59af5c933a112d2) [@bep](https://github.com/bep) [#5973](https://github.com/gohugoio/hugo/issues/5973)[#5996](https://github.com/gohugoio/hugo/issues/5996)[#6010](https://github.com/gohugoio/hugo/issues/6010)[#5911](https://github.com/gohugoio/hugo/issues/5911)[#5940](https://github.com/gohugoio/hugo/issues/5940)[#6074](https://github.com/gohugoio/hugo/issues/6074)[#6082](https://github.com/gohugoio/hugo/issues/6082)[#6092](https://github.com/gohugoio/hugo/issues/6092)
+* Tidy [47953148](https://github.com/gohugoio/hugo/commit/47953148b6121441d0147c960a99829c53b5a5ba) [@bep](https://github.com/bep)
+* Update xerrors [ac101aba](https://github.com/gohugoio/hugo/commit/ac101aba4fde02dc8273a3f06a3b4267ca501a3d) [@bep](https://github.com/bep)
+* Ignore errors in go mod download [58a47ccd](https://github.com/gohugoio/hugo/commit/58a47ccde00e2425364eaa5c2123e0718a2ee3f2) [@bep](https://github.com/bep)
+* Update Chroma [95b1d301](https://github.com/gohugoio/hugo/commit/95b1d3013b4717f8b02093a99d1d0c4a6a1ca929) [@bep](https://github.com/bep) [#6088](https://github.com/gohugoio/hugo/issues/6088)
+* Change postcss to check for local installation under node_modules/.bin [a5604e18](https://github.com/gohugoio/hugo/commit/a5604e18b0cb260b7748949b12c05814ced50815) [@ericselin](https://github.com/ericselin) [#5091](https://github.com/gohugoio/hugo/issues/5091)
+* Add org to front matter formats [020086cb](https://github.com/gohugoio/hugo/commit/020086cb2b0396909d831abf66b8f1455e6f7e6a) [@niklasfasching](https://github.com/niklasfasching)
+* Update go-org [8524baee](https://github.com/gohugoio/hugo/commit/8524baee167fa6a8684569e7acff225c16c301c7) [@niklasfasching](https://github.com/niklasfasching)
+* Pagination - do not render href if no next item [88c8a15b](https://github.com/gohugoio/hugo/commit/88c8a15be18a0bd1bd9b9cb175f7a68f2b9cd355) [@markmandel](https://github.com/markmandel)
+* Include path to source page in non-relative ref/relref warning [59c4bc52](https://github.com/gohugoio/hugo/commit/59c4bc52ed6b146baa6cca97d054004297ea098a) [@justinvp](https://github.com/justinvp)
+* Update link to prevent redirect [ff10aa52](https://github.com/gohugoio/hugo/commit/ff10aa522dd4d2741e8f4e50a4a40a0854232f23) [@coliff](https://github.com/coliff)
+* Update URLs [9f258d2b](https://github.com/gohugoio/hugo/commit/9f258d2b8f98a137c5c8c4586a3db3e3c53a0040) [@coliff](https://github.com/coliff)
+* Introduce '#+KEY[]:' array notation [fad183c4](https://github.com/gohugoio/hugo/commit/fad183c4ae55069be9246e64ab1c8b2f43d08d06) [@niklasfasching](https://github.com/niklasfasching)
+* Replace goorgeous with go-org [b6867bf8](https://github.com/gohugoio/hugo/commit/b6867bf8068fcaaddf1cb7478f4d52a9c1be1411) [@niklasfasching](https://github.com/niklasfasching)
+* Default --target to the first deployment target [9df57154](https://github.com/gohugoio/hugo/commit/9df57154ee3e3185d024bfe376101b404d8b7cc4) [@vangent](https://github.com/vangent)
+* Add safety barrier between concatenated javascript resources [35abce27](https://github.com/gohugoio/hugo/commit/35abce27cabee43cc751db55a75b927f26275833) [@vincent99](https://github.com/vincent99)
+* Update CLI doc for "long" form [8914fe7e](https://github.com/gohugoio/hugo/commit/8914fe7ed7e7e55e07be32564159310c90e2dbd4) [@vangent](https://github.com/vangent)
+* Drop dashes in http header matcher attributes; other changes from code review [b0f536fb](https://github.com/gohugoio/hugo/commit/b0f536fb276f63df0b0b8d92aeda80affb4b6a34) [@vangent](https://github.com/vangent)
+* Add documentation for "hugo deploy" [1384d77a](https://github.com/gohugoio/hugo/commit/1384d77a04d7027d719993c6f54f892b5e7974db) [@vangent](https://github.com/vangent)
+* remove TODO comment about subfolders; handled by GoCDK blob URLs [5e83f425](https://github.com/gohugoio/hugo/commit/5e83f4256279149879a8e88cb02679dd00e8da2b) [@vangent](https://github.com/vangent)
+* Update gocloud.dev to v0.15.0. [b376b268](https://github.com/gohugoio/hugo/commit/b376b2685a2e21961052a0946ab8a6acc076d4da) [@vangent](https://github.com/vangent)
+* Return nil when not found in resources.Get [4c560020](https://github.com/gohugoio/hugo/commit/4c560020bc0c50f8004873be8adf83698b7c095a) [@bep](https://github.com/bep) [#5999](https://github.com/gohugoio/hugo/issues/5999)
+* Update Viper [d44d3ea8](https://github.com/gohugoio/hugo/commit/d44d3ea89865baa33170244cac72a7ce26419b15) [@bep](https://github.com/bep) [#5954](https://github.com/gohugoio/hugo/issues/5954)
+* Remove references to Google+ [d1cf53f5](https://github.com/gohugoio/hugo/commit/d1cf53f5f4d71b9461e0fe58193b5a8418b572e7) [@brunoamaral](https://github.com/brunoamaral)
+* Update gitmap to get CommitDate field [811ee996](https://github.com/gohugoio/hugo/commit/811ee996a625b5eb3464a34a1623260b11c0bfd3) [@bep](https://github.com/bep)
+* Create new 'hugo list all' command [5b4b8bb3](https://github.com/gohugoio/hugo/commit/5b4b8bb3c1ecb30e7a38ed44eb795f1d972cd320) [@rusnasonov](https://github.com/rusnasonov) [#5904](https://github.com/gohugoio/hugo/issues/5904)
+* Medium -> Hugo exporting tool [2278b0eb](https://github.com/gohugoio/hugo/commit/2278b0eb02ccdd3c2d4358d39074767d33fecb71) [@Ahirice](https://github.com/Ahirice)
+* Switch base image for final build [41974303](https://github.com/gohugoio/hugo/commit/41974303f3e5e6d7deb87a791aba512dbf1b9c59) [@brianredbeard](https://github.com/brianredbeard) [#5970](https://github.com/gohugoio/hugo/issues/5970)[#5056](https://github.com/gohugoio/hugo/issues/5056)
+* Merge branch 'release-0.55.6' [6b3f1a10](https://github.com/gohugoio/hugo/commit/6b3f1a10028c81b776a5797bbd02c86957f8f042) [@bep](https://github.com/bep)
+* Release 0.55.6 [9b48c5d6](https://github.com/gohugoio/hugo/commit/9b48c5d6bd56741dac714324a6ae59f6374bccdc) [@bep](https://github.com/bep)
+* Update to Go 1.12.5 and Go 1.11.10 [71b8d8b6](https://github.com/gohugoio/hugo/commit/71b8d8b6a4127acacda8ada08cd61d7bfb18e962) [@bep](https://github.com/bep) [#5944](https://github.com/gohugoio/hugo/issues/5944)
+* Support configuration of upload order [527cf1ab](https://github.com/gohugoio/hugo/commit/527cf1ab03fe4746885e90a197bc25decad88f89) [@vangent](https://github.com/vangent)
+* Support invalidating a CloudFront CDN cache [f4956d9a](https://github.com/gohugoio/hugo/commit/f4956d9aae69b1cb5715114cf5242fd80a9cabc7) [@vangent](https://github.com/vangent)
+* Move the package below /langs [2838d58b](https://github.com/gohugoio/hugo/commit/2838d58b1daa0f6a337125c5a64d06215901c5d6) [@bep](https://github.com/bep)
+* compute MD5 by reading if List didn't provide one [f330e869](https://github.com/gohugoio/hugo/commit/f330e869e42dc782a48c045aea5d29a134e225cb) [@vangent](https://github.com/vangent)
+* Use proxy.golang.org [0091b1f8](https://github.com/gohugoio/hugo/commit/0091b1f893aba6a0060c392f58fcc0351ee0db66) [@bep](https://github.com/bep)
+* Add a "deploy" command [c7165589](https://github.com/gohugoio/hugo/commit/c7165589b3be5923f1275f0024818e6ae889d881) [@vangent](https://github.com/vangent)
+* Release 0.55.5 [e33ed29b](https://github.com/gohugoio/hugo/commit/e33ed29b754ac1982321e87e54a37c9bb59e53ca) [@bep](https://github.com/bep)
+* Regenerate docs helper [cee181c3](https://github.com/gohugoio/hugo/commit/cee181c3a67fe04b8e0c9f2807c5aa2871df474e) [@bep](https://github.com/bep)
+* Update blackfriday to v1.5.2 [1cbb501b](https://github.com/gohugoio/hugo/commit/1cbb501be8aa83b08865fbb6ad5aee254946712f) [@dbirks](https://github.com/dbirks)
+* Release 0.55.4 [1707f1a5](https://github.com/gohugoio/hugo/commit/1707f1a5f52b8036d675d6ce66fd844effcab9fe) [@bep](https://github.com/bep)
+* Avoid rebuilding the Translations map for every lookup [4756ec3c](https://github.com/gohugoio/hugo/commit/4756ec3cd8ef998f889619fe11be70cc900e2b75) [@bep](https://github.com/bep) [#5892](https://github.com/gohugoio/hugo/issues/5892)
+* Init mem profile at the end [4c3c5120](https://github.com/gohugoio/hugo/commit/4c3c5120389cc95edc63b8f18a0eee786aa0c5e2) [@bep](https://github.com/bep)
+* Release 0.55.3 [c85b726f](https://github.com/gohugoio/hugo/commit/c85b726f8a3cca2f06f766e5982dc0023d0dd12c) [@bep](https://github.com/bep)
+* Regenerate docs helper [75b16e30](https://github.com/gohugoio/hugo/commit/75b16e30ec55e82a8024cc4d27880d9b79e0fa41) [@bep](https://github.com/bep)
+* Replace IsDraft with Draft in list command [3e421bd4](https://github.com/gohugoio/hugo/commit/3e421bd47cd35061df89c1c127ec8fa4ae368449) [@bep](https://github.com/bep) [#5873](https://github.com/gohugoio/hugo/issues/5873)
+* Release 0.55.2 [fcd63a86](https://github.com/gohugoio/hugo/commit/fcd63a865e731077a0d508084460b6fe6ec82c33) [@bep](https://github.com/bep)
+* Release 0.55.1 [adb776b2](https://github.com/gohugoio/hugo/commit/adb776b22babc0d312ce7b83abbe6f5107c180d7) [@bep](https://github.com/bep)
+* Remove the space in `. RelPermalink` [7966c0b5](https://github.com/gohugoio/hugo/commit/7966c0b5b7b2297527f8be9040b793de5e4e3f48) [@yihui](https://github.com/yihui)
+
+## Fixes
+
+### Templates
+
+* Fix slice type handling in sort [e8a716b2](https://github.com/gohugoio/hugo/commit/e8a716b23a1ca78cf29460daacd4ba49bbc05ad1) [@bep](https://github.com/bep) [#6023](https://github.com/gohugoio/hugo/issues/6023)
+* Fix internal templates usage of safeHTMLAttr [e22b3f54](https://github.com/gohugoio/hugo/commit/e22b3f54c3d8ce6567c21c63beab0b03cf7983ea) [@rhcarvalho](https://github.com/rhcarvalho) [#5236](https://github.com/gohugoio/hugo/issues/5236)[#5246](https://github.com/gohugoio/hugo/issues/5246)
+* Fix nil compare in eq/ne for interface values [66b143a0](https://github.com/gohugoio/hugo/commit/66b143a01d1c192619839b732ce188923ab15d60) [@bep](https://github.com/bep) [#5905](https://github.com/gohugoio/hugo/issues/5905)
+* Fix hugo package name and add godocs [4f93f8c6](https://github.com/gohugoio/hugo/commit/4f93f8c670b26258dc7e3a613c38dbc86d8eda76) [@moorereason](https://github.com/moorereason)
+
+### Output
+
+* Fix permalink in sitemap etc. when multiple permalinkable output formats [6b76841b](https://github.com/gohugoio/hugo/commit/6b76841b052b97625b8995f326d758b89f5c2349) [@bep](https://github.com/bep) [#5910](https://github.com/gohugoio/hugo/issues/5910)
+* Fix links for non-HTML output formats [c7dd66bf](https://github.com/gohugoio/hugo/commit/c7dd66bfe2e32430f9b1a3126c67014e40d8405e) [@bep](https://github.com/bep) [#5877](https://github.com/gohugoio/hugo/issues/5877)
+* Fix menu URL when multiple permalinkable output formats [ea529c84](https://github.com/gohugoio/hugo/commit/ea529c847ebc0267c6d0426cc8f77d5c76c73fe4) [@bep](https://github.com/bep) [#5849](https://github.com/gohugoio/hugo/issues/5849)
+
+### Core
+
+* Fix broken test [fa28df10](https://github.com/gohugoio/hugo/commit/fa28df1058e0131364cea2e3ac7f80e934d024a1) [@bep](https://github.com/bep)
+* Fix bundle path when slug is set [3e6cb2cb](https://github.com/gohugoio/hugo/commit/3e6cb2cb77e16be5b6ddd4ae55d5fc6bfba2d226) [@bep](https://github.com/bep) [#4870](https://github.com/gohugoio/hugo/issues/4870)
+* Fix PrevInSection/NextInSection for nested sections [bcbed4eb](https://github.com/gohugoio/hugo/commit/bcbed4ebdaf55b67abc521d69bba456c041a7e7d) [@bep](https://github.com/bep) [#5883](https://github.com/gohugoio/hugo/issues/5883)
+* Fix shortcode version=1 logic [33c73811](https://github.com/gohugoio/hugo/commit/33c738116c26e2ac37f4bd48159e8e3197fd7b39) [@bep](https://github.com/bep) [#5831](https://github.com/gohugoio/hugo/issues/5831)
+* Fix Pages reinitialization on rebuilds [9b17cbb6](https://github.com/gohugoio/hugo/commit/9b17cbb62a056ea7e26b1146cbf3ba42f5acf805) [@bep](https://github.com/bep) [#5833](https://github.com/gohugoio/hugo/issues/5833)
+* Fix shortcode namespace issue [56550d1e](https://github.com/gohugoio/hugo/commit/56550d1e449f45ebee398ac8a9e3b9818b3ee60e) [@bep](https://github.com/bep) [#5863](https://github.com/gohugoio/hugo/issues/5863)
+* Fix false WARNINGs in lang prefix check [7881b096](https://github.com/gohugoio/hugo/commit/7881b0965f8b83d03379e9ed102cd0c3bce297e2) [@bep](https://github.com/bep) [#5860](https://github.com/gohugoio/hugo/issues/5860)
+* Fix bundle resource publishing when multiple output formats [49d0a826](https://github.com/gohugoio/hugo/commit/49d0a82641581aa7dd66b9d5e8c7d75e23260083) [@bep](https://github.com/bep) [#5858](https://github.com/gohugoio/hugo/issues/5858)
+* Fix panic for unused taxonomy content files [b799b12f](https://github.com/gohugoio/hugo/commit/b799b12f4a693dfeae8a5a362f131081a727bb8f) [@bep](https://github.com/bep) [#5847](https://github.com/gohugoio/hugo/issues/5847)
+* Fix dates for sections with dates in front matter [70148672](https://github.com/gohugoio/hugo/commit/701486728e21bc0c6c78c2a8edb988abdf6116c7) [@bep](https://github.com/bep) [#5854](https://github.com/gohugoio/hugo/issues/5854)
+* Fix simple menu config [9e9a1f92](https://github.com/gohugoio/hugo/commit/9e9a1f92baf151f8d840d6b5b963945d1410ce25) [@bep](https://github.com/bep)
+
+### Other
+
+* Fix test on Windows [e5b6e208](https://github.com/gohugoio/hugo/commit/e5b6e2085aba74767ace269cd5f8a746230b4fa4) [@bep](https://github.com/bep)
+* Fix livereload for @import case [2fc0abd2](https://github.com/gohugoio/hugo/commit/2fc0abd22a37d90b6f1032eef46191a7bddf41bd) [@bep](https://github.com/bep) [#6106](https://github.com/gohugoio/hugo/issues/6106)
+* Fix typo s/Meny/Menu/ [90b0127f](https://github.com/gohugoio/hugo/commit/90b0127f63e9cd5bf3a8bd4282237db224a3c263) [@kaushalmodi](https://github.com/kaushalmodi)
+* Add tests; fix Windows [5dc6d0df](https://github.com/gohugoio/hugo/commit/5dc6d0df94076e116934c83b837e2dd416efa784) [@vangent](https://github.com/vangent)
+* Fix concurrent initialization order [009076e5](https://github.com/gohugoio/hugo/commit/009076e5ee88fc46c95a9afd34f82f9386aa282a) [@bep](https://github.com/bep) [#5901](https://github.com/gohugoio/hugo/issues/5901)
+* Fix WeightedPages in union etc. [f2795d4d](https://github.com/gohugoio/hugo/commit/f2795d4d2cef30170af43327f3ff7114923833b1) [@bep](https://github.com/bep) [#5850](https://github.com/gohugoio/hugo/issues/5850)
+* Fix [4d425a86](https://github.com/gohugoio/hugo/commit/4d425a86f5c03a5cca27d4e0f99d61acbb938d80) [@bep](https://github.com/bep)
+* Fix paginator refresh on server change [f7375c49](https://github.com/gohugoio/hugo/commit/f7375c497239115cd30ae42af6b4d298e4e7ad7d) [@bep](https://github.com/bep) [#5838](https://github.com/gohugoio/hugo/issues/5838)
+* Fix .RSSLinke deprecation message [3b86b4a9](https://github.com/gohugoio/hugo/commit/3b86b4a9f5ce010c9714d813d5b8ecddda22c69f) [@bep](https://github.com/bep) [#4427](https://github.com/gohugoio/hugo/issues/4427)
+
+
+
+
+
diff --git a/docs/content/en/news/0.56.1-relnotes/index.md b/docs/content/en/news/0.56.1-relnotes/index.md
new file mode 100644
index 000000000..c83250fe5
--- /dev/null
+++ b/docs/content/en/news/0.56.1-relnotes/index.md
@@ -0,0 +1,21 @@
+
+---
+date: 2019-07-28
+title: "0.56.1: Two Bug Fixes"
+description: "This version fixes a couple of regressions introduced in 0.56.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* common/maps: Do not return error on params dot access on incompatible types [e393c629](https://github.com/gohugoio/hugo/commit/e393c6290e827111a8a2e486791dc21f63a92b55) [@bep](https://github.com/bep) [#6121](https://github.com/gohugoio/hugo/issues/6121)
+* resources: Fix image Width/Height regression [93d02aab](https://github.com/gohugoio/hugo/commit/93d02aabe6e611d65c428a9c5669b422e1bcf5e8) [@bep](https://github.com/bep) [#6120](https://github.com/gohugoio/hugo/issues/6120)
+* modules: Set GO111MODULE=on [e5fe3789](https://github.com/gohugoio/hugo/commit/e5fe378925c16c75902bbb46499c376c530ebdb5) [@bep](https://github.com/bep) [#6114](https://github.com/gohugoio/hugo/issues/6114)
+
+
+
diff --git a/docs/content/en/news/0.56.2-relnotes/index.md b/docs/content/en/news/0.56.2-relnotes/index.md
new file mode 100644
index 000000000..67c5f8b6d
--- /dev/null
+++ b/docs/content/en/news/0.56.2-relnotes/index.md
@@ -0,0 +1,26 @@
+
+---
+date: 2019-07-30
+title: "Hugo 0.56.2: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.56.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* Add some more content language test assertions [84bc8d84](https://github.com/gohugoio/hugo/commit/84bc8d84e4d2ec1fc94aee3113ebc570a28d1d16) [@bep](https://github.com/bep) [#6136](https://github.com/gohugoio/hugo/issues/6136)
+* commands: Fix config reloading in Vim and similar [6eca0a3d](https://github.com/gohugoio/hugo/commit/6eca0a3dee77f0e764b1de2e10c10ec2b7cf8ef1) [@bep](https://github.com/bep) [#6139](https://github.com/gohugoio/hugo/issues/6139)
+* Fix Jekyll import [e28bd4c0](https://github.com/gohugoio/hugo/commit/e28bd4c0f843f39cfcb715b6c9c7d249bad5b500) [@bep](https://github.com/bep) [#6131](https://github.com/gohugoio/hugo/issues/6131)
+* Fix image format detection for upper case extensions, e.g. JPG [c62bbf7b](https://github.com/gohugoio/hugo/commit/c62bbf7b11d68d52ef11a4c6c70660914c473d08) [@bep](https://github.com/bep) [#6137](https://github.com/gohugoio/hugo/issues/6137)
+* Fix i18n project vs theme order [00a238e3](https://github.com/gohugoio/hugo/commit/00a238e32c82b0651e4145e306840cffa46e535d) [@bep](https://github.com/bep) [#6134](https://github.com/gohugoio/hugo/issues/6134)
+* Add proper error message when receiving nil in Resource transformation [e5f96024](https://github.com/gohugoio/hugo/commit/e5f960245938d8d8b4e99f312e9907f8d3aebf7a) [@bep](https://github.com/bep) [#6128](https://github.com/gohugoio/hugo/issues/6128)
+* Merge branch 'release-0.56.1' [9f497e7b](https://github.com/gohugoio/hugo/commit/9f497e7b5f77d0eb45d932a2301e648a3cd2d88f) [@bep](https://github.com/bep)
+* deps: Update go-org to v0.1.2 [56908509](https://github.com/gohugoio/hugo/commit/56908509eb3a5779743a2314c05693a732b7feb3) [@niklasfasching](https://github.com/niklasfasching)
+
+
+
diff --git a/docs/content/en/news/0.56.3-relnotes/index.md b/docs/content/en/news/0.56.3-relnotes/index.md
new file mode 100644
index 000000000..c505e520d
--- /dev/null
+++ b/docs/content/en/news/0.56.3-relnotes/index.md
@@ -0,0 +1,47 @@
+
+---
+date: 2019-07-31
+title: "Hugo 0.56.3: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.56.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+This is a bug-fix release with a couple of important fixes. After getting feedback about the new **Hugo Modules** feature, this release also adds some minor improvements:
+
+It adds support for overlapping file mounts, even for the filesystems where we walk down the directory structure. One relevant example that is fixed by this release:
+
+{{< code-toggle file="config" >}}
+[module]
+[[module.mounts]]
+source="content1"
+target="content"
+[[module.mounts]]
+source="content2"
+target="content/docs"
+{{< /code-toggle >}}
+
+The above is obviously both common and very useful. This was never an issue with the situations where you load a specific file/directory (e.g. `resources.Get "a/b/c/d/sunset.jpg"`).
+
+User feedback also told us that these file mounts were a little hard to debug, so we added a new command that prints the configured mounts as a JSON:
+
+```bash
+hugo config mounts
+```
+
+* hugolib: Fix bundle header clone logic [0e086785](https://github.com/gohugoio/hugo/commit/0e086785fa4be8086256e9d7de6cda78e18d00ee) [@bep](https://github.com/bep) [#6136](https://github.com/gohugoio/hugo/issues/6136)
+* docs: Regenerate CLI docs [02b947ea](https://github.com/gohugoio/hugo/commit/02b947eaa3cc68404180d796a2f7119dce074539) [@bep](https://github.com/bep)
+* commands: Add "hugo config mounts" command [d7c233af](https://github.com/gohugoio/hugo/commit/d7c233afee6a16b1947f60b7e5450e40612997bb) [@bep](https://github.com/bep) [#6144](https://github.com/gohugoio/hugo/issues/6144)
+* commands: Cleanup the hugo config command [45ee8a7a](https://github.com/gohugoio/hugo/commit/45ee8a7a52213bf394c7f41a72be78084ddc789a) [@bep](https://github.com/bep) [#6144](https://github.com/gohugoio/hugo/issues/6144)
+* Move the mount duplicate filter to the modules package [4b6c5eba](https://github.com/gohugoio/hugo/commit/4b6c5eba306e6e69f3dd07a6c102bfc8040b38c9) [@bep](https://github.com/bep)
+* Allow overlap in module mounts [edf9f0a3](https://github.com/gohugoio/hugo/commit/edf9f0a354e5eaa556f8faed70b5243b7273b35c) [@bep](https://github.com/bep) [#6146](https://github.com/gohugoio/hugo/issues/6146)
+* Fix self-mounts on the main project [36220851](https://github.com/gohugoio/hugo/commit/36220851e4ed7fc3fa78aa250d001d5f922210e7) [@bep](https://github.com/bep) [#6143](https://github.com/gohugoio/hugo/issues/6143)
+
+
+
+
+
+
+
diff --git a/docs/content/en/news/0.57.0-relnotes/hugo-57-poster-featured.png b/docs/content/en/news/0.57.0-relnotes/hugo-57-poster-featured.png
new file mode 100644
index 000000000..aeb5561c8
--- /dev/null
+++ b/docs/content/en/news/0.57.0-relnotes/hugo-57-poster-featured.png
Binary files differ
diff --git a/docs/content/en/news/0.57.0-relnotes/index.md b/docs/content/en/news/0.57.0-relnotes/index.md
new file mode 100644
index 000000000..d99150e08
--- /dev/null
+++ b/docs/content/en/news/0.57.0-relnotes/index.md
@@ -0,0 +1,119 @@
+
+---
+date: 2019-08-14
+title: "Hugo 0.57: The Cascading Edition"
+description: "Hugo 0.57 brings cascading front matter, alphabetical sorting, resource loading from Assets with wildcards. And it's faster."
+categories: ["Releases"]
+---
+
+Hugo 0.57 brings **Cascading Front Matter**, **Alphabetical Sorting**, **Resources Loading from Assets with Wildcards**. And more.
+
+**Cascading Front Matter**: We have added a new and powerful `cascade` keyword to Hugo's front matter. This can be added to any index node in `_index.md`. Any values in `cascade` will be merged into itself and all the descendants.
+
+```yaml
+title: "My Blog"
+icon: "world.png"
+cascade:
+ icon: "flag.png"
+ outputs: ["HTML"]
+ type: "blog"
+ ```
+
+It's worth noting that the `cascade` element itself will also be merged. Also, to grasp the full value of this feature, remember that front matter in Hugo is both **data** and **behaviour**: You can tell Hugo how to process a subset of the pages (some example keywords are `layout`, `type`, `outputs`, `weight`) using the `cascade` keyword, e.g. _"I want this subsection to be rendered in both the `HTML` and `Calendar` Output Formats"_.
+
+This feature is created by[@regisphilibert](https://github.com/regisphilibert) and [@bep](https://github.com/bep) See [#6041](https://github.com/gohugoio/hugo/issues/6041) for details.
+
+**Resources Loading from Assets with Wildcards**: We have added two new sought after template functions to the `resources` namespace: `resources.Match` and `resources.GetMatch`. These behaves like their namesake methods on `Page` (with [super-asterisk wildcard support](https://github.com/gobwas/glob)), but searches in all the resources in Assets. E.g. `{{ $prettyImages := resources.Match "images/**pretty.jpg" }}` will give a slice of all "pretty pictures". Another relevant example: `{{ $js := resources.Match "libs/*.js" | resources.Concat "js/bundle.js" }}`.
+
+**Performance:** In general, this version is slightly faster and more memory effective. In particular, we have fixed a performance issue with the replacer step that greatly improves the build speed of certain large and content-rich sites (thanks to [@vazrupe](https://github.com/vazrupe) for the fix).
+
+This release represents **46 contributions by 8 contributors** to the main Hugo code base.[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@muesli](https://github.com/muesli), [@XhmikosR](https://github.com/XhmikosR), and [@vazrupe](https://github.com/vazrupe) for their ongoing contributions.
+
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) and [@onedrawingperday](https://github.com/onedrawingperday) for their relentless work on keeping the themes site in pristine condition and to [@kaushalmodi](https://github.com/kaushalmodi) for his great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **13 contributions by 7 contributors**. A special thanks to [@regisphilibert](https://github.com/regisphilibert), [@bep](https://github.com/bep), [@kenberkeley](https://github.com/kenberkeley), and [@davidsneighbour](https://github.com/davidsneighbour) for their work on the documentation site.
+
+Hugo now has:
+
+* 37336+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 440+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 334+ [themes](http://themes.gohugo.io/)
+
+## Notes
+
+* All string sorting in Hugo is now alphabetical/lexicographical.
+* `home.Pages` now only returns pages in the top level section. Before this release, it included _all regular pages in the site_. This made it easy to list all the pages on home page, but it also meant that you needed to take special care if you wanted to navigate the page tree from top to bottom. If you need _all regular pages_, use `.Site.RegularPages`. Also see [#6153](https://github.com/gohugoio/hugo/issues/6153).
+* `.Pages` now include sections. We have added `.RegularPages` as a convenience method if you want the old behaviour. See [#6154](https://github.com/gohugoio/hugo/issues/6154) for details.
+* Hugo now only "auto create" sections for the home page and the top level folders. The other sections need a `_index.md` file. See [#6171](https://github.com/gohugoio/hugo/issues/6171) for details.
+
+
+## Enhancements
+
+### Templates
+
+* Regenerate templates [2d1d3367](https://github.com/gohugoio/hugo/commit/2d1d33673d82c5073335e18944744606a71a5029) [@bep](https://github.com/bep)
+* Always load GitHub Gists over HTTPS [be0d4efc](https://github.com/gohugoio/hugo/commit/be0d4efc3db18035a04b188e089c09cdd8e04365) [@coliff](https://github.com/coliff)
+
+### Core
+
+* Remove temporary warning [4644b95b](https://github.com/gohugoio/hugo/commit/4644b95bd568946429482aa36eeaff1eec6a7075) [@bep](https://github.com/bep)
+* Add some more site benchmarks [df374851](https://github.com/gohugoio/hugo/commit/df374851a0683f1446f33a4afef74c42f7d3eaaf) [@bep](https://github.com/bep)
+
+### Other
+
+* Add FileInfo to resources created with resources.Match etc. [1089cfe4](https://github.com/gohugoio/hugo/commit/1089cfe4e1c35bec1f269b8280da43b367b5d070) [@bep](https://github.com/bep) [#6190](https://github.com/gohugoio/hugo/issues/6190)
+* Improve the server assets cache invalidation logic [cd575023](https://github.com/gohugoio/hugo/commit/cd575023af846aa18ffa709f37bc70277e98cad3) [@bep](https://github.com/bep) [#6199](https://github.com/gohugoio/hugo/issues/6199)
+* Do not fail build on errors in theme.toml [63150981](https://github.com/gohugoio/hugo/commit/6315098104ff80f8be6d5ae812835b4b4079582e) [@bep](https://github.com/bep) [#6162](https://github.com/gohugoio/hugo/issues/6162)
+* Add resources.Match and resources.GetMatch [b64617fe](https://github.com/gohugoio/hugo/commit/b64617fe4f90da030bcf4a9c5a4913393ce96b14) [@bep](https://github.com/bep) [#6190](https://github.com/gohugoio/hugo/issues/6190)
+* Convert from testify to quicktest [9e571827](https://github.com/gohugoio/hugo/commit/9e571827055dedb46b78c5db3d17d6913f14870b) [@bep](https://github.com/bep)
+* Avoid unnecessary conversions [6027ee11](https://github.com/gohugoio/hugo/commit/6027ee11082d0b9d72de1d4d1980a702be294ad2) [@muesli](https://github.com/muesli)
+* Simplify code [a93cbb0d](https://github.com/gohugoio/hugo/commit/a93cbb0d6cc6e3a78ba34aa372abc5b41ca24b2c) [@muesli](https://github.com/muesli)
+* Implement cascading front matter [bd98182d](https://github.com/gohugoio/hugo/commit/bd98182dbde893a8a809661c70633741bbf63911) [@bep](https://github.com/bep) [#6041](https://github.com/gohugoio/hugo/issues/6041)
+* Use the SVG logo in README.md [c0eef3b4](https://github.com/gohugoio/hugo/commit/c0eef3b401615e85bb74baee6a515abcf531fc2c) [@XhmikosR](https://github.com/XhmikosR)
+* Add a branch bundle test case [82439520](https://github.com/gohugoio/hugo/commit/824395204680496d528684587a1f2977394aff3d) [@bep](https://github.com/bep) [#6173](https://github.com/gohugoio/hugo/issues/6173)
+* Simplify page tree logic [7ff0a8ee](https://github.com/gohugoio/hugo/commit/7ff0a8ee9fe8d710d407e57faf1fda43bd635f28) [@bep](https://github.com/bep) [#6154](https://github.com/gohugoio/hugo/issues/6154)[#6153](https://github.com/gohugoio/hugo/issues/6153)[#6152](https://github.com/gohugoio/hugo/issues/6152)
+* Merge pull request #6149 from bep/sort-caseinsensitive [53077b0d](https://github.com/gohugoio/hugo/commit/53077b0da54906feee64a03612e5186043e17341) [@bep](https://github.com/bep)
+* Regenerate CLI docs [02b947ea](https://github.com/gohugoio/hugo/commit/02b947eaa3cc68404180d796a2f7119dce074539) [@bep](https://github.com/bep)
+* Add "hugo config mounts" command [d7c233af](https://github.com/gohugoio/hugo/commit/d7c233afee6a16b1947f60b7e5450e40612997bb) [@bep](https://github.com/bep) [#6144](https://github.com/gohugoio/hugo/issues/6144)
+* Cleanup the hugo config command [45ee8a7a](https://github.com/gohugoio/hugo/commit/45ee8a7a52213bf394c7f41a72be78084ddc789a) [@bep](https://github.com/bep) [#6144](https://github.com/gohugoio/hugo/issues/6144)
+* Move the mount duplicate filter to the modules package [4b6c5eba](https://github.com/gohugoio/hugo/commit/4b6c5eba306e6e69f3dd07a6c102bfc8040b38c9) [@bep](https://github.com/bep)
+* Allow overlap in module mounts [edf9f0a3](https://github.com/gohugoio/hugo/commit/edf9f0a354e5eaa556f8faed70b5243b7273b35c) [@bep](https://github.com/bep) [#6146](https://github.com/gohugoio/hugo/issues/6146)
+* Add some more content language test assertions [84bc8d84](https://github.com/gohugoio/hugo/commit/84bc8d84e4d2ec1fc94aee3113ebc570a28d1d16) [@bep](https://github.com/bep) [#6136](https://github.com/gohugoio/hugo/issues/6136)
+* Add proper error message when receiving nil in Resource transformation [e5f96024](https://github.com/gohugoio/hugo/commit/e5f960245938d8d8b4e99f312e9907f8d3aebf7a) [@bep](https://github.com/bep) [#6128](https://github.com/gohugoio/hugo/issues/6128)
+* Merge branch 'release-0.56.1' [9f497e7b](https://github.com/gohugoio/hugo/commit/9f497e7b5f77d0eb45d932a2301e648a3cd2d88f) [@bep](https://github.com/bep)
+* Update go-org to v0.1.2 [56908509](https://github.com/gohugoio/hugo/commit/56908509eb3a5779743a2314c05693a732b7feb3) [@niklasfasching](https://github.com/niklasfasching)
+* Do not return error on params dot access on incompatible types [e393c629](https://github.com/gohugoio/hugo/commit/e393c6290e827111a8a2e486791dc21f63a92b55) [@bep](https://github.com/bep) [#6121](https://github.com/gohugoio/hugo/issues/6121)
+* Set GO111MODULE=on [e5fe3789](https://github.com/gohugoio/hugo/commit/e5fe378925c16c75902bbb46499c376c530ebdb5) [@bep](https://github.com/bep) [#6114](https://github.com/gohugoio/hugo/issues/6114)
+* Skip resource cache init if the fs is missing [da4c4a77](https://github.com/gohugoio/hugo/commit/da4c4a7789d403af3f4f4fdd5dfd3327535e4050) [@bep](https://github.com/bep) [#6113](https://github.com/gohugoio/hugo/issues/6113)
+
+## Fixes
+
+### Core
+
+* Fix output format handling of mix cased page kinds [de876242](https://github.com/gohugoio/hugo/commit/de87624241daa86660f205cc72a745409b9c9238) [@bep](https://github.com/bep) [#4528](https://github.com/gohugoio/hugo/issues/4528)
+* Fix broken test [9ef4dca3](https://github.com/gohugoio/hugo/commit/9ef4dca361727a78e0f66f8f4e54c64e4c4781cb) [@bep](https://github.com/bep)
+* Fix bundle header clone logic [0e086785](https://github.com/gohugoio/hugo/commit/0e086785fa4be8086256e9d7de6cda78e18d00ee) [@bep](https://github.com/bep) [#6136](https://github.com/gohugoio/hugo/issues/6136)
+
+### Other
+
+* Fix faulty -h logic in hugo mod get [17ca8f0c](https://github.com/gohugoio/hugo/commit/17ca8f0c4c636752fb9da2ad551679275dc03dd3) [@bep](https://github.com/bep) [#6197](https://github.com/gohugoio/hugo/issues/6197)
+* Fixed ineffectual assignments [c577a9ed](https://github.com/gohugoio/hugo/commit/c577a9ed2347559783c44232e1f08414008c5203) [@muesli](https://github.com/muesli)
+* Fixed tautological error conditions [e88d7989](https://github.com/gohugoio/hugo/commit/e88d7989907108b656eccd92bccc076be72a5c03) [@muesli](https://github.com/muesli)
+* Fix static sync issue with virtual mounts [166a394a](https://github.com/gohugoio/hugo/commit/166a394a2fef6f2990e264cc8dfb722af2cc6a67) [@bep](https://github.com/bep) [#6165](https://github.com/gohugoio/hugo/issues/6165)
+* Cache the next position of `urlreplacer.prefix` [a843ca53](https://github.com/gohugoio/hugo/commit/a843ca53b5e0f29df9535fa0e88408a63cdc2cd7) [@vazrupe](https://github.com/vazrupe) [#5942](https://github.com/gohugoio/hugo/issues/5942)
+* Fix no-map vs noMap discrepancy [02397e76](https://github.com/gohugoio/hugo/commit/02397e76cece28b467de30ff0cb0f471d9b212ee) [@bep](https://github.com/bep) [#6166](https://github.com/gohugoio/hugo/issues/6166)
+* Fix assorted typos [f7f549e3](https://github.com/gohugoio/hugo/commit/f7f549e3a7492c787c6abb4900cc0f57c8ab1826) [@XhmikosR](https://github.com/XhmikosR)
+* common/collections: Fix typo [6512d128](https://github.com/gohugoio/hugo/commit/6512d128c6d33b86f376764ab1d622a89ea18d20) [@shawnps](https://github.com/shawnps)
+* Fix multilingual example compatibility with latest version [b8758de1](https://github.com/gohugoio/hugo/commit/b8758de19ec75b4565075314f9578270a092bc6f) [@robinwassen](https://github.com/robinwassen)
+* Fix self-mounts on the main project [36220851](https://github.com/gohugoio/hugo/commit/36220851e4ed7fc3fa78aa250d001d5f922210e7) [@bep](https://github.com/bep) [#6143](https://github.com/gohugoio/hugo/issues/6143)
+* Fix config reloading in Vim and similar [6eca0a3d](https://github.com/gohugoio/hugo/commit/6eca0a3dee77f0e764b1de2e10c10ec2b7cf8ef1) [@bep](https://github.com/bep) [#6139](https://github.com/gohugoio/hugo/issues/6139)
+* Fix Jekyll import [e28bd4c0](https://github.com/gohugoio/hugo/commit/e28bd4c0f843f39cfcb715b6c9c7d249bad5b500) [@bep](https://github.com/bep) [#6131](https://github.com/gohugoio/hugo/issues/6131)
+* Fix image format detection for upper case extensions, e.g. JPG [c62bbf7b](https://github.com/gohugoio/hugo/commit/c62bbf7b11d68d52ef11a4c6c70660914c473d08) [@bep](https://github.com/bep) [#6137](https://github.com/gohugoio/hugo/issues/6137)
+* Fix i18n project vs theme order [00a238e3](https://github.com/gohugoio/hugo/commit/00a238e32c82b0651e4145e306840cffa46e535d) [@bep](https://github.com/bep) [#6134](https://github.com/gohugoio/hugo/issues/6134)
+* Fix image Width/Height regression [93d02aab](https://github.com/gohugoio/hugo/commit/93d02aabe6e611d65c428a9c5669b422e1bcf5e8) [@bep](https://github.com/bep) [#6120](https://github.com/gohugoio/hugo/issues/6120)
+
+
+
+
+
diff --git a/docs/content/en/news/0.57.1-relnotes/index.md b/docs/content/en/news/0.57.1-relnotes/index.md
new file mode 100644
index 000000000..fea7833ff
--- /dev/null
+++ b/docs/content/en/news/0.57.1-relnotes/index.md
@@ -0,0 +1,26 @@
+
+---
+date: 2019-08-15
+title: "Hugo 0.57.1: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.57.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* hugolib: Fix draft etc. handling of _index.md pages [6ccf50ea](https://github.com/gohugoio/hugo/commit/6ccf50ea7bb291bcbe1d56a4d697a6fd57a9c629) [@bep](https://github.com/bep) [#6222](https://github.com/gohugoio/hugo/issues/6222)[#6210](https://github.com/gohugoio/hugo/issues/6210)
+* Fix mainSections logic [67524c99](https://github.com/gohugoio/hugo/commit/67524c993623871626f0f22e6a2ac705a816a959) [@bep](https://github.com/bep) [#6217](https://github.com/gohugoio/hugo/issues/6217)
+* Fix live reload mount logic with sub paths [952a3194](https://github.com/gohugoio/hugo/commit/952a3194962dd91f87e5bd227a1591b00c39ff05) [@bep](https://github.com/bep) [#6209](https://github.com/gohugoio/hugo/issues/6209)
+* modules: Disable "auto tidy" for now [321418f2](https://github.com/gohugoio/hugo/commit/321418f22a4a94b87f01e1403a2f4a71106461fb) [@bep](https://github.com/bep) [#6115](https://github.com/gohugoio/hugo/issues/6115)
+* hugolib: Recover and log panics in content init [7f3aab5a](https://github.com/gohugoio/hugo/commit/7f3aab5ac283ecfc7029b680d4c0a34920e728c8) [@bep](https://github.com/bep) [#6210](https://github.com/gohugoio/hugo/issues/6210)
+* hugolib: Add some outputs tests [028b9926](https://github.com/gohugoio/hugo/commit/028b992611209b241b1f55def8d47f9188038dc3) [@bep](https://github.com/bep) [#6210](https://github.com/gohugoio/hugo/issues/6210)
+* hugolib: Fix taxonomies vs expired [9475f61a](https://github.com/gohugoio/hugo/commit/9475f61a377fcf23f910cbfd4ddca59261326665) [@bep](https://github.com/bep) [#6213](https://github.com/gohugoio/hugo/issues/6213)
+* commands: Make sure the hugo field is always initialized before it's used [ea9261e8](https://github.com/gohugoio/hugo/commit/ea9261e856c13c1d4ae05fcca08766d410b4b65c) [@vazrupe](https://github.com/vazrupe) [#6193](https://github.com/gohugoio/hugo/issues/6193)
+
+
+
diff --git a/docs/content/en/news/0.57.2-relnotes/index.md b/docs/content/en/news/0.57.2-relnotes/index.md
new file mode 100644
index 000000000..83c349401
--- /dev/null
+++ b/docs/content/en/news/0.57.2-relnotes/index.md
@@ -0,0 +1,35 @@
+
+---
+date: 2019-08-17
+title: "Hugo 0.57.2: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.57.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+Hugo 0.57.0 had some well-intended breaking changes. And while they made a lot of sense, one of them made a little too much noise.
+
+This release reverts the behavior for `.Pages` on the home page to how it behaved in 0.56, but adds a `WARNING` telling you what to do to prepare for Hugo 0.58.
+
+In short, `.Page` home will from 0.58 only return its immediate children (sections and regular pages).
+
+In this release it returns `.Site.RegularPages`. So to prepare for Hugo 0.58 you can either use `.Site.RegularPages` in your home template, or if you have a general `list.html` or RSS template, you can do something like this:
+
+```go-html-template
+{{- $pctx := . -}}
+{{- if .IsHome -}}{{ $pctx = .Site }}{{- end -}}
+{{- $pages := $pctx.RegularPages -}}
+```
+
+* tpl: Use RegularPages for RSS template [88d69936](https://github.com/gohugoio/hugo/commit/88d69936122f82fffc02850516bdb37be3d0892b) [@bep](https://github.com/bep) [#6238](https://github.com/gohugoio/hugo/issues/6238)
+* hugolib: Don't use the global warning logger [ea681603](https://github.com/gohugoio/hugo/commit/ea6816030081b2cffa6c0ae9ca5429a2c6fe2fa5) [@bep](https://github.com/bep) [#6238](https://github.com/gohugoio/hugo/issues/6238)
+* tpl: Avoid "home page warning" in RSS template [564cf1bb](https://github.com/gohugoio/hugo/commit/564cf1bb11e100891992e9131b271a79ea7fc528) [@bep](https://github.com/bep) [#6238](https://github.com/gohugoio/hugo/issues/6238)
+* hugolib: Allow index.md inside bundles [4b4bdcfe](https://github.com/gohugoio/hugo/commit/4b4bdcfe740d988e4cfb4fee53eced6985576abd) [@bep](https://github.com/bep) [#6208](https://github.com/gohugoio/hugo/issues/6208)
+* Adjust the default paginator for sections [18836a71](https://github.com/gohugoio/hugo/commit/18836a71ce7b671fa71dd1318b99fc661755e94d) [@bep](https://github.com/bep) [#6231](https://github.com/gohugoio/hugo/issues/6231)
+* hugolib: Add a site benchmark [416493b5](https://github.com/gohugoio/hugo/commit/416493b548a9bbaa27758fba9bab50a22b680e9d) [@bep](https://github.com/bep)
+* Update to Go 1.11.13 and 1.12.9 [f28efd35](https://github.com/gohugoio/hugo/commit/f28efd35820dc4909832c14dfd8ea6812ecead31) [@bep](https://github.com/bep) [#6228](https://github.com/gohugoio/hugo/issues/6228)
+
+
+
diff --git a/docs/content/en/news/0.58.0-relnotes/hugo58-featured.png b/docs/content/en/news/0.58.0-relnotes/hugo58-featured.png
new file mode 100644
index 000000000..52962050d
--- /dev/null
+++ b/docs/content/en/news/0.58.0-relnotes/hugo58-featured.png
Binary files differ
diff --git a/docs/content/en/news/0.58.0-relnotes/index.md b/docs/content/en/news/0.58.0-relnotes/index.md
new file mode 100644
index 000000000..38b2143e0
--- /dev/null
+++ b/docs/content/en/news/0.58.0-relnotes/index.md
@@ -0,0 +1,109 @@
+
+---
+date: 2019-09-04
+title: "Image Processing Galore!"
+description: "Hugo 0.58 adds the long sought after Exif method plus many useful image filters. And it's faster ..."
+categories: ["Releases"]
+---
+
+**Hugo 0.58** adds the long sought after [Exif (docs)](https://gohugo.io/content-management/image-processing/#exif) method on image and a bunch of useful [image filters (docs)](https://gohugo.io/functions/images/#image-filters), courtesy of [@disintegration](https://github.com/disintegration)'s great [Gift](https://github.com/disintegration/gift) image library.
+
+This means that you now can do variations of this:
+
+```go-html-template
+{{ $blurryGrayscale := $myimage.Resize "300x200" | images.Filter images.Grayscale (images.GaussianBlur 8) }}
+{{ $exif := $myimg.Exif }}
+```
+
+It's worth noting that the issue that enabled/triggered the implementation of the above was the simplifications needed to fix [#5903](https://github.com/gohugoio/hugo/issues/5903), which makes sure that type information is preserved when processed via **Hugo Pipes**. E.g. you can now do:
+
+```go-html-template
+{{ ($myimg | fingerprint ).Width }}
+```
+
+And it works as expected.
+
+This release is also built with the brand new **Go 1.13** which means that it's also the [fastest Hugo version](https://discourse.gohugo.io/t/hugo-benchmarks-go-1-12-vs-go-1-13/20572/5) to date.
+
+This release represents **39 contributions by 5 contributors** to the main Hugo code base.[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@niklasfasching](https://github.com/niklasfasching), [@vazrupe](https://github.com/vazrupe), and [@jakejarvis](https://github.com/jakejarvis) for their ongoing contributions.
+
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) and [@onedrawingperday](https://github.com/onedrawingperday) for their relentless work on keeping the themes site in pristine condition and to [@kaushalmodi](https://github.com/kaushalmodi) for his great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **8 contributions by 8 contributors**. A special thanks to [@jacebenson](https://github.com/jacebenson), [@digitalcraftsman](https://github.com/digitalcraftsman), [@jernst](https://github.com/jernst), and [@rgwood](https://github.com/rgwood) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 37859+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 440+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 317+ [themes](http://themes.gohugo.io/)
+
+## Notes
+
+* `home.Pages` now behaves like all the other sections, see [#6240](https://github.com/gohugoio/hugo/issues/6240). If you want to list all the regular pages, use `.Site.RegularPages`.
+* We have added some new image filters to Hugo's image processing. This also means that we have consolidated the resize operations to use the one `gift` library (from the same developer as the one we used before). The operations work as before, but one difference is that we no longer embed color profile information in PNG images, but this should also be a more portable solution. Software that supports color profiles will assume that images without an embedded profile are in the sRGB profile. Software that doesn't support color profiles will use the monitor's profile, which is most likely to be sRGB as well.
+* We have improved the file cache logic for processed images and only stores them once when the same image is bundled in multiple languages. This means that you may want to run `hugo --gc` to clean your image cache.
+
+## Enhancements
+
+### Templates
+
+* Migrate last shortcodes (YouTube and Vimeo) to HTTPS embeds [00297085](https://github.com/gohugoio/hugo/commit/00297085db48cbb7949c9867012f6df38817fc29) [@jakejarvis](https://github.com/jakejarvis)
+* Use RegularPages for RSS template [88d69936](https://github.com/gohugoio/hugo/commit/88d69936122f82fffc02850516bdb37be3d0892b) [@bep](https://github.com/bep) [#6238](https://github.com/gohugoio/hugo/issues/6238)
+* Avoid "home page warning" in RSS template [564cf1bb](https://github.com/gohugoio/hugo/commit/564cf1bb11e100891992e9131b271a79ea7fc528) [@bep](https://github.com/bep) [#6238](https://github.com/gohugoio/hugo/issues/6238)
+
+### Core
+
+* Adjust Go version specific test [dc3f3df2](https://github.com/gohugoio/hugo/commit/dc3f3df29d2b65532cedc9d321db7c4a38a28d7d) [@bep](https://github.com/bep) [#6304](https://github.com/gohugoio/hugo/issues/6304)
+* Remove the old and slow site benchmarks [28501ceb](https://github.com/gohugoio/hugo/commit/28501ceb93613729c5971105010dd3c22cfa0f7f) [@bep](https://github.com/bep)
+* Add a Sass includePaths test [1b5c7e32](https://github.com/gohugoio/hugo/commit/1b5c7e327c7f98cf8e9fff920f3328198f67a598) [@bep](https://github.com/bep) [#6274](https://github.com/gohugoio/hugo/issues/6274)
+* Change to output non-panic error message if missing shortcode template [fd3d90ce](https://github.com/gohugoio/hugo/commit/fd3d90ced85baaf6941be45b2fe29c25ff755c18) [@vazrupe](https://github.com/vazrupe) [#6075](https://github.com/gohugoio/hugo/issues/6075)
+* Don't use the global warning logger [ea681603](https://github.com/gohugoio/hugo/commit/ea6816030081b2cffa6c0ae9ca5429a2c6fe2fa5) [@bep](https://github.com/bep) [#6238](https://github.com/gohugoio/hugo/issues/6238)
+* Allow index.md inside bundles [4b4bdcfe](https://github.com/gohugoio/hugo/commit/4b4bdcfe740d988e4cfb4fee53eced6985576abd) [@bep](https://github.com/bep) [#6208](https://github.com/gohugoio/hugo/issues/6208)
+* Add a site benchmark [416493b5](https://github.com/gohugoio/hugo/commit/416493b548a9bbaa27758fba9bab50a22b680e9d) [@bep](https://github.com/bep)
+* Recover and log panics in content init [7f3aab5a](https://github.com/gohugoio/hugo/commit/7f3aab5ac283ecfc7029b680d4c0a34920e728c8) [@bep](https://github.com/bep) [#6210](https://github.com/gohugoio/hugo/issues/6210)
+* Add some outputs tests [028b9926](https://github.com/gohugoio/hugo/commit/028b992611209b241b1f55def8d47f9188038dc3) [@bep](https://github.com/bep) [#6210](https://github.com/gohugoio/hugo/issues/6210)
+
+### Other
+
+* Update to Go 1.13 [b4313011](https://github.com/gohugoio/hugo/commit/b43130115d9e3888d94df9e6f5fc72eba662632f) [@bep](https://github.com/bep) [#6304](https://github.com/gohugoio/hugo/issues/6304)
+* Cache processed images by their source path [8624b9fe](https://github.com/gohugoio/hugo/commit/8624b9fe9eb81aeb884d36311fb6f85fed98aa43) [@bep](https://github.com/bep) [#6269](https://github.com/gohugoio/hugo/issues/6269)
+* Remove test artifact [018494f3](https://github.com/gohugoio/hugo/commit/018494f363a32b9e4d3622da6842bc3e59b420b2) [@bep](https://github.com/bep)
+* Make the "is this a Hugo Module" logic more lenient [43298f02](https://github.com/gohugoio/hugo/commit/43298f028ccdf38e949b573d03d328bf96b998a3) [@bep](https://github.com/bep) [#6299](https://github.com/gohugoio/hugo/issues/6299)
+* Update to Go 1.11.13 and 1.12.9 [05d83b6c](https://github.com/gohugoio/hugo/commit/05d83b6c08089c20ca1d99bcd224188ed5d127d4) [@bep](https://github.com/bep) [#6228](https://github.com/gohugoio/hugo/issues/6228)
+* Make home.Pages work like any other section [4898fb3d](https://github.com/gohugoio/hugo/commit/4898fb3d64c856c5e0f324e0dfbf3b60da1d1d3a) [@bep](https://github.com/bep) [#6240](https://github.com/gohugoio/hugo/issues/6240)
+* Add some fingerprint tests [45d7988f](https://github.com/gohugoio/hugo/commit/45d7988f2d0aa95d1a56f4c66342574075cf2963) [@bep](https://github.com/bep) [#6284](https://github.com/gohugoio/hugo/issues/6284)[#6280](https://github.com/gohugoio/hugo/issues/6280)
+* Cache Exif data to disk [ce47c21a](https://github.com/gohugoio/hugo/commit/ce47c21a2998630f8edcbd056983d9c59a80b676) [@bep](https://github.com/bep) [#6291](https://github.com/gohugoio/hugo/issues/6291)
+* Remove metaDataFormat setting [de9cbf61](https://github.com/gohugoio/hugo/commit/de9cbf61954201943a7b170a7d0a8b34afb5942c) [@bep](https://github.com/bep)
+* Make the Exif benchmark filenames distinct [4f501169](https://github.com/gohugoio/hugo/commit/4f5011692a22762e213e872fd9e39d015141083f) [@bep](https://github.com/bep)
+* Add Exif benchmark [3becba7a](https://github.com/gohugoio/hugo/commit/3becba7a982f39f67c7ee7cff411eae50931c8cd) [@bep](https://github.com/bep) [#6291](https://github.com/gohugoio/hugo/issues/6291)
+* Remove unused map type [20bdc69a](https://github.com/gohugoio/hugo/commit/20bdc69a47b851871bdc4d9be6366fa7f51f25db) [@bep](https://github.com/bep)
+* Add image.Exif [28143397](https://github.com/gohugoio/hugo/commit/28143397d625cce1f89f4161cba97c0dddd9004c) [@bep](https://github.com/bep) [#4600](https://github.com/gohugoio/hugo/issues/4600)
+* Add a set of image filters [823f53c8](https://github.com/gohugoio/hugo/commit/823f53c861bb49aecc6104e0add39fc3b0729025) [@bep](https://github.com/bep) [#6255](https://github.com/gohugoio/hugo/issues/6255)
+* Image resource refactor [f9978ed1](https://github.com/gohugoio/hugo/commit/f9978ed16476ca6d233a89669c62c798cdf9db9d) [@bep](https://github.com/bep) [#5903](https://github.com/gohugoio/hugo/issues/5903)[#6234](https://github.com/gohugoio/hugo/issues/6234)[#6266](https://github.com/gohugoio/hugo/issues/6266)
+* Remove debug check left during development [ad1d6d64](https://github.com/gohugoio/hugo/commit/ad1d6d6406c9b208d4fd4e09d6ad9ef19aa65dbb) [@bep](https://github.com/bep) [#6249](https://github.com/gohugoio/hugo/issues/6249)
+* Adjust the default paginator for sections [18836a71](https://github.com/gohugoio/hugo/commit/18836a71ce7b671fa71dd1318b99fc661755e94d) [@bep](https://github.com/bep) [#6231](https://github.com/gohugoio/hugo/issues/6231)
+* Update to Go 1.11.13 and 1.12.9 [f28efd35](https://github.com/gohugoio/hugo/commit/f28efd35820dc4909832c14dfd8ea6812ecead31) [@bep](https://github.com/bep) [#6228](https://github.com/gohugoio/hugo/issues/6228)
+* Disable "auto tidy" for now [321418f2](https://github.com/gohugoio/hugo/commit/321418f22a4a94b87f01e1403a2f4a71106461fb) [@bep](https://github.com/bep) [#6115](https://github.com/gohugoio/hugo/issues/6115)
+* Make sure the hugo field is always initialized before it's used [ea9261e8](https://github.com/gohugoio/hugo/commit/ea9261e856c13c1d4ae05fcca08766d410b4b65c) [@vazrupe](https://github.com/vazrupe) [#6193](https://github.com/gohugoio/hugo/issues/6193)
+
+## Fixes
+
+### Core
+
+* Fix draft etc. handling of _index.md pages [6ccf50ea](https://github.com/gohugoio/hugo/commit/6ccf50ea7bb291bcbe1d56a4d697a6fd57a9c629) [@bep](https://github.com/bep) [#6222](https://github.com/gohugoio/hugo/issues/6222)[#6210](https://github.com/gohugoio/hugo/issues/6210)
+* Fix taxonomies vs expired [9475f61a](https://github.com/gohugoio/hugo/commit/9475f61a377fcf23f910cbfd4ddca59261326665) [@bep](https://github.com/bep) [#6213](https://github.com/gohugoio/hugo/issues/6213)
+
+### Other
+
+* Update go-org (fix descriptive lists) [8a8d4a6d](https://github.com/gohugoio/hugo/commit/8a8d4a6d97d181f1aaee639d35b198a27bb788e2) [@niklasfasching](https://github.com/niklasfasching)
+* Update go-org (fix footnotes in headlines) [58d4c0a8](https://github.com/gohugoio/hugo/commit/58d4c0a8be8beefbd7437b17bf7a9a381164d09b) [@niklasfasching](https://github.com/niklasfasching)
+* Discrepancy typo fix [c5319db9](https://github.com/gohugoio/hugo/commit/c5319db9f13f1dee97db5fbbeae38429a074c7d0) [@coliff](https://github.com/coliff)
+* Fix mainSections logic [67524c99](https://github.com/gohugoio/hugo/commit/67524c993623871626f0f22e6a2ac705a816a959) [@bep](https://github.com/bep) [#6217](https://github.com/gohugoio/hugo/issues/6217)
+* Fix live reload mount logic with sub paths [952a3194](https://github.com/gohugoio/hugo/commit/952a3194962dd91f87e5bd227a1591b00c39ff05) [@bep](https://github.com/bep) [#6209](https://github.com/gohugoio/hugo/issues/6209)
+
+
+
+
+
diff --git a/docs/content/en/news/0.58.1-relnotes/index.md b/docs/content/en/news/0.58.1-relnotes/index.md
new file mode 100644
index 000000000..1350c0a73
--- /dev/null
+++ b/docs/content/en/news/0.58.1-relnotes/index.md
@@ -0,0 +1,23 @@
+
+---
+date: 2019-09-06
+title: "Hugo 0.58.1: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.58.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* Avoid writing the same processed image to /public twice [9442937d](https://github.com/gohugoio/hugo/commit/9442937d82005b369780edcc557e0d15d6bf0bad) [@bep](https://github.com/bep) [#6307](https://github.com/gohugoio/hugo/issues/6307)
+* hugolib: Fix broken bundle live reload logic [901077c0](https://github.com/gohugoio/hugo/commit/901077c0364eaf3fe4f997c3026aa18cfc7781ed) [@bep](https://github.com/bep) [#6315](https://github.com/gohugoio/hugo/issues/6315)[#6308](https://github.com/gohugoio/hugo/issues/6308)
+* deps: Update github.com/bep/gitmap [24ad4295](https://github.com/gohugoio/hugo/commit/24ad4295718341dcae12b72bf52fef312d1036ed) [@bep](https://github.com/bep) [#6313](https://github.com/gohugoio/hugo/issues/6313)
+* Fix concat with fingerprint regression [3be2c253](https://github.com/gohugoio/hugo/commit/3be2c25351b421a26ee1ff2a38cbab00280c0583) [@bep](https://github.com/bep) [#6309](https://github.com/gohugoio/hugo/issues/6309)
+* tpl: Remove eq argument limitation [5e660947](https://github.com/gohugoio/hugo/commit/5e660947757023434dd7a1ec8b8239c0577fd501) [@vazrupe](https://github.com/vazrupe) [#6237](https://github.com/gohugoio/hugo/issues/6237)
+
+
+
diff --git a/docs/content/en/news/0.58.2-relnotes/index.md b/docs/content/en/news/0.58.2-relnotes/index.md
new file mode 100644
index 000000000..e498aea59
--- /dev/null
+++ b/docs/content/en/news/0.58.2-relnotes/index.md
@@ -0,0 +1,20 @@
+
+---
+date: 2019-09-13
+title: "Hugo 0.58.2: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.58.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* Fix cache keys for bundled resoures in transform.Unmarshal [c0d75736](https://github.com/gohugoio/hugo/commit/c0d7573677e9726c14749ccd432dccb75e0d194d) [@bep](https://github.com/bep) [#6327](https://github.com/gohugoio/hugo/issues/6327)
+* filecache: Ignore "does not exist" errors in prune [fcfa6f33](https://github.com/gohugoio/hugo/commit/fcfa6f33bbebc128a3f9bc3162173bc3780c5f50) [@bep](https://github.com/bep) [#6326](https://github.com/gohugoio/hugo/issues/6326)[#5745](https://github.com/gohugoio/hugo/issues/5745)
+
+
+
diff --git a/docs/content/en/news/0.58.3-relnotes/index.md b/docs/content/en/news/0.58.3-relnotes/index.md
new file mode 100644
index 000000000..86bc4b88f
--- /dev/null
+++ b/docs/content/en/news/0.58.3-relnotes/index.md
@@ -0,0 +1,21 @@
+
+---
+date: 2019-09-19
+title: "Hugo 0.58.3: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.58.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* Add some more resource transform tests [c262a95a](https://github.com/gohugoio/hugo/commit/c262a95a5c5a9304c82b9d9e39701bc471916851) [@bep](https://github.com/bep) [#6348](https://github.com/gohugoio/hugo/issues/6348)
+* Fix cache key transformed resources [6dec671f](https://github.com/gohugoio/hugo/commit/6dec671fb930029e18ba9aa5135b3a27adcddb21) [@bep](https://github.com/bep) [#6348](https://github.com/gohugoio/hugo/issues/6348)
+* deploy: Do not compile in Azure on Solaris [c0d7188e](https://github.com/gohugoio/hugo/commit/c0d7188ec85e7a4b61489e38896108d877f6d902) [@fazalmajid](https://github.com/fazalmajid) [#6324](https://github.com/gohugoio/hugo/issues/6324)
+
+
+
diff --git a/docs/content/en/news/0.59.0-relnotes/hugo-59-poster-featured.png b/docs/content/en/news/0.59.0-relnotes/hugo-59-poster-featured.png
new file mode 100644
index 000000000..67dc65872
--- /dev/null
+++ b/docs/content/en/news/0.59.0-relnotes/hugo-59-poster-featured.png
Binary files differ
diff --git a/docs/content/en/news/0.59.0-relnotes/index.md b/docs/content/en/news/0.59.0-relnotes/index.md
new file mode 100644
index 000000000..1a7552d09
--- /dev/null
+++ b/docs/content/en/news/0.59.0-relnotes/index.md
@@ -0,0 +1,120 @@
+
+---
+date: 2019-10-21
+title: "Hugo 0.59.0"
+description: "Set image target format and background color, and more ..."
+categories: ["Releases"]
+---
+
+The timing of this release is motivated by getting the copies of the docs repositories in synch, now fully "Hugo Modularized". But it also comes with some very nice additions:
+
+It is now possible to set the target format and the background fill color when processing images, e.g.:
+
+```
+{{ $image.Resize "600x jpg #b31280" }}
+```
+
+See [Image Processing Options](https://gohugo.io/content-management/image-processing/#image-processing-options).
+
+Another useful addon is the `$pages.Next` and `$pages.Prev` methods on the core page collections in Hugo. These works the same way as the built-in static variants one `Page`, e.g. `.Next` and `.NextInSection`:
+
+```
+{{with .Site.RegularPages.Next . }}{{.RelPermalink}}{{end}}
+```
+
+The above is a functionally equivalent (but slightly slower) variant of:
+
+```
+{{with .Next }}{{.RelPermalink}}{{end}}
+```
+
+See [Pages Methods](https://gohugo.io/variables/pages/) for more information.
+
+
+This release represents **45 contributions by 13 contributors** to the main Hugo code base. [@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@anthonyfok](https://github.com/anthonyfok), [@BaibhaVatsa](https://github.com/BaibhaVatsa), and [@XhmikosR](https://github.com/XhmikosR) for their ongoing contributions.
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) and [@onedrawingperday](https://github.com/onedrawingperday) for their relentless work on keeping the themes site in pristine condition and to [@kaushalmodi](https://github.com/kaushalmodi) for his great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **34 contributions by 20 contributors**. A special thanks to [@bep](https://github.com/bep), [@celtic-coder](https://github.com/celtic-coder), [@napcs](https://github.com/napcs), and [@bmackinney](https://github.com/bmackinney) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 38843+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 441+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 255+ [themes](http://themes.gohugo.io/)
+
+## Notes
+
+
+* Shortcode params can now be typed (supported types are `string`, `bool` `int` and `float64`, see [#6376](https://github.com/gohugoio/hugo/pull/6376).
+* Pages.Next/.Prev as described above has existed for a long time, but they have been undocumented. They have been reimplemented for this release and now works like their namesakes on `Page`. This may be considered a breaking change, but it should be a welcome one, as the old behaviour wasn't very useful. See [#4500](https://github.com/gohugoio/hugo/issues/4500)
+
+## Enhancements
+
+### Templates
+
+* Add optional "title" attribute to iframe in Vimeo shortcode [7b3edc29](https://github.com/gohugoio/hugo/commit/7b3edc293144dd450e87ca32f238221c21eb1b47) [@zbayoff](https://github.com/zbayoff)
+* Modify error messages of after, first, and last [65b7d422](https://github.com/gohugoio/hugo/commit/65b7d4221b90445bfc089873092411cf7e322933) [@BaibhaVatsa](https://github.com/BaibhaVatsa) [#6415](https://github.com/gohugoio/hugo/issues/6415)
+* Last now accepts 0 as limit [0e75af74](https://github.com/gohugoio/hugo/commit/0e75af74db30259ec355a7b79a1e257d5fe00eef) [@BaibhaVatsa](https://github.com/BaibhaVatsa) [#6419](https://github.com/gohugoio/hugo/issues/6419)
+* After now accepts 0 as index [096a4b67](https://github.com/gohugoio/hugo/commit/096a4b67b98259dabff5ebfbfd879a41999a1ed2) [@BaibhaVatsa](https://github.com/BaibhaVatsa) [#6388](https://github.com/gohugoio/hugo/issues/6388)
+* Make getJSON/getCVS accept non-string args [0d7b05be](https://github.com/gohugoio/hugo/commit/0d7b05be4cb2391cbd280f6109c01ec2d3d7e0c6) [@bep](https://github.com/bep) [#6382](https://github.com/gohugoio/hugo/issues/6382)
+* Add `rel="noopener"` for external links [34dc06b0](https://github.com/gohugoio/hugo/commit/34dc06b032741abac342d7a2a77510ded9b72ae8) [@XhmikosR](https://github.com/XhmikosR)
+* Remove unneeded space [2b1814ee](https://github.com/gohugoio/hugo/commit/2b1814ee580f3149f9fe0a4cf30b754bac9f0c90) [@XhmikosR](https://github.com/XhmikosR)
+* Remove eq argument limitation [5e660947](https://github.com/gohugoio/hugo/commit/5e660947757023434dd7a1ec8b8239c0577fd501) [@vazrupe](https://github.com/vazrupe) [#6237](https://github.com/gohugoio/hugo/issues/6237)
+
+### Output
+
+* Add common video media types [689f647b](https://github.com/gohugoio/hugo/commit/689f647baf96af078186f0cdc45199f7d0995d22) [@martignoni](https://github.com/martignoni)
+* Simplify test output to simplify diffing [339ee371](https://github.com/gohugoio/hugo/commit/339ee37143ca5a6bb22bbc1b0468d785f450cfb7) [@bep](https://github.com/bep)
+* Use + to create the Type string [64ec8c89](https://github.com/gohugoio/hugo/commit/64ec8c89049461c4731b23c491fb41e00a09a8b2) [@bep](https://github.com/bep)
+* Support output image format in image operations [e5856e61](https://github.com/gohugoio/hugo/commit/e5856e61d88ef5149582851b00e06b5b93dce9f8) [@jansorg](https://github.com/jansorg) [#6298](https://github.com/gohugoio/hugo/issues/6298)
+
+### Other
+
+* Replace /docs [39121de4](https://github.com/gohugoio/hugo/commit/39121de4d991bdcf5f202da4d8d81a8ac6c149fc) [@bep](https://github.com/bep)
+* Recover from file corruption [180195aa](https://github.com/gohugoio/hugo/commit/180195aa342777fece1b29a08ec89456d7996c61) [@bep](https://github.com/bep) [#6401](https://github.com/gohugoio/hugo/issues/6401)
+* Allow to set background fill colour [4b286b9d](https://github.com/gohugoio/hugo/commit/4b286b9d2722909d0682e50eeecdfe16c1f47fd8) [@bep](https://github.com/bep) [#6298](https://github.com/gohugoio/hugo/issues/6298)
+* Replace .RSSLink [46cafdba](https://github.com/gohugoio/hugo/commit/46cafdbaca13866f32db04c0cc28374e30ec5914) [@bep](https://github.com/bep) [#6037](https://github.com/gohugoio/hugo/issues/6037)
+* Use binary search in Pages.Prev/Next if possible [653e6856](https://github.com/gohugoio/hugo/commit/653e6856ea1cfc60cc16733807d23b302dbe4bd5) [@bep](https://github.com/bep) [#4500](https://github.com/gohugoio/hugo/issues/4500)
+* Make Pages.Prev/Next work like the other Prev/Next methods [f4f566ed](https://github.com/gohugoio/hugo/commit/f4f566edf4bd6a590cf9cdbd5cfc0026ecd93b14) [@bep](https://github.com/bep) [#4500](https://github.com/gohugoio/hugo/issues/4500)
+* Update feature_request.md [5f1aafaf](https://github.com/gohugoio/hugo/commit/5f1aafafb40299bb4c8aebf71e05843431eb84c5) [@bep](https://github.com/bep)
+* Update to Go 1.12.10 and 1.13.1 [71b18a07](https://github.com/gohugoio/hugo/commit/71b18a0786894893eafa01263a0915149ed303ec) [@bep](https://github.com/bep) [#6406](https://github.com/gohugoio/hugo/issues/6406)
+* Add FileMeta.String [f10db101](https://github.com/gohugoio/hugo/commit/f10db101a18f5cad332c9398136f77e35a169d52) [@bep](https://github.com/bep)
+* Update minify to v2.5.2 [b401858e](https://github.com/gohugoio/hugo/commit/b401858ebd346c433dd69a260eba7098bded5a30) [@anthonyfok](https://github.com/anthonyfok)
+* Add BaseFs to RenderingContext [020a6fbd](https://github.com/gohugoio/hugo/commit/020a6fbd7f6996ed84d80ba6c37fe0d8c2536806) [@niklasfasching](https://github.com/niklasfasching)
+* Update go-org [b152216d](https://github.com/gohugoio/hugo/commit/b152216d5c8adbf1bfa4c6fb7b2a50b6866c685e) [@niklasfasching](https://github.com/niklasfasching)
+* Upgrade to latest version of emoji dependency [c466b88c](https://github.com/gohugoio/hugo/commit/c466b88c998bc99e5d26e41cb67d87e1d4b976f5) [@jamietanna](https://github.com/jamietanna) [#6391](https://github.com/gohugoio/hugo/issues/6391)
+* Upgrade to latest version of emoji dependency [170f18d9](https://github.com/gohugoio/hugo/commit/170f18d9352d39213170dd9d5e947eb45854c84b) [@jamietanna](https://github.com/jamietanna)
+* Update Architectures [15a0364d](https://github.com/gohugoio/hugo/commit/15a0364d39741da34b8661f9a8386b54016049d6) [@bep](https://github.com/bep)
+* Add ability to invalidate Google Cloud CDN [674e81ae](https://github.com/gohugoio/hugo/commit/674e81ae8700bdd00d3e5e47ff930d42d25bc68b) [@gkelly](https://github.com/gkelly)
+* Ensure same dirinfos sort order in TestImageOperationsGolden [298092d5](https://github.com/gohugoio/hugo/commit/298092d516f623cc20051f506d460fb7625cdc84) [@anthonyfok](https://github.com/anthonyfok)
+* Update bug_report.md [019ae384](https://github.com/gohugoio/hugo/commit/019ae384835446266b951875aa0870d245382cf2) [@bep](https://github.com/bep)
+* Support typed bool, int and float in shortcode params [329e88db](https://github.com/gohugoio/hugo/commit/329e88db1f6d043d32c7083570773dccfd4f11fc) [@bep](https://github.com/bep) [#6371](https://github.com/gohugoio/hugo/issues/6371)
+* Update Chroma [e073f4ef](https://github.com/gohugoio/hugo/commit/e073f4efb1345f6408000ef3f389873f8cf7179e) [@bep](https://github.com/bep) [#6279](https://github.com/gohugoio/hugo/issues/6279)
+* Add issue templates and action [454a033d](https://github.com/gohugoio/hugo/commit/454a033dc5bc9b3db626fe1533d7e8494d79f472) [@bmackinney](https://github.com/bmackinney)
+* Add some more resource transform tests [c262a95a](https://github.com/gohugoio/hugo/commit/c262a95a5c5a9304c82b9d9e39701bc471916851) [@bep](https://github.com/bep) [#6348](https://github.com/gohugoio/hugo/issues/6348)
+* Do not compile in Azure on Solaris [c0d7188e](https://github.com/gohugoio/hugo/commit/c0d7188ec85e7a4b61489e38896108d877f6d902) [@fazalmajid](https://github.com/fazalmajid) [#6324](https://github.com/gohugoio/hugo/issues/6324)
+* Ignore "does not exist" errors in prune [fcfa6f33](https://github.com/gohugoio/hugo/commit/fcfa6f33bbebc128a3f9bc3162173bc3780c5f50) [@bep](https://github.com/bep) [#6326](https://github.com/gohugoio/hugo/issues/6326)[#5745](https://github.com/gohugoio/hugo/issues/5745)
+* Avoid writing the same processed image to /public twice [9442937d](https://github.com/gohugoio/hugo/commit/9442937d82005b369780edcc557e0d15d6bf0bad) [@bep](https://github.com/bep) [#6307](https://github.com/gohugoio/hugo/issues/6307)
+* Update github.com/bep/gitmap [24ad4295](https://github.com/gohugoio/hugo/commit/24ad4295718341dcae12b72bf52fef312d1036ed) [@bep](https://github.com/bep) [#6313](https://github.com/gohugoio/hugo/issues/6313)
+
+## Fixes
+
+### Core
+
+* Fix broken bundle live reload logic [901077c0](https://github.com/gohugoio/hugo/commit/901077c0364eaf3fe4f997c3026aa18cfc7781ed) [@bep](https://github.com/bep) [#6315](https://github.com/gohugoio/hugo/issues/6315)[#6308](https://github.com/gohugoio/hugo/issues/6308)
+
+### Other
+
+* Fix elements are doubling when append a not assignable type [a9762b5c](https://github.com/gohugoio/hugo/commit/a9762b5c48054e036332eff541a8fd32e54ada13) [@vazrupe](https://github.com/vazrupe) [#6188](https://github.com/gohugoio/hugo/issues/6188)
+* Fix data race in global logger init [bc70f2bf](https://github.com/gohugoio/hugo/commit/bc70f2bf123d94fc3226754ec9f1f44748e98162) [@bep](https://github.com/bep) [#6409](https://github.com/gohugoio/hugo/issues/6409)
+* Fix image test error on s390x, ppc64* and arm64 [39ed33fc](https://github.com/gohugoio/hugo/commit/39ed33fcebcde91605e645fd28fd94020b442d97) [@anthonyfok](https://github.com/anthonyfok) [#6387](https://github.com/gohugoio/hugo/issues/6387)
+* Fix cache key transformed resources [6dec671f](https://github.com/gohugoio/hugo/commit/6dec671fb930029e18ba9aa5135b3a27adcddb21) [@bep](https://github.com/bep) [#6348](https://github.com/gohugoio/hugo/issues/6348)
+* Fix cache keys for bundled resoures in transform.Unmarshal [c0d75736](https://github.com/gohugoio/hugo/commit/c0d7573677e9726c14749ccd432dccb75e0d194d) [@bep](https://github.com/bep) [#6327](https://github.com/gohugoio/hugo/issues/6327)
+* Fix concat with fingerprint regression [3be2c253](https://github.com/gohugoio/hugo/commit/3be2c25351b421a26ee1ff2a38cbab00280c0583) [@bep](https://github.com/bep) [#6309](https://github.com/gohugoio/hugo/issues/6309)
+
+
+
+
+
diff --git a/docs/content/en/news/0.59.1-relnotes/index.md b/docs/content/en/news/0.59.1-relnotes/index.md
new file mode 100644
index 000000000..830ccaca1
--- /dev/null
+++ b/docs/content/en/news/0.59.1-relnotes/index.md
@@ -0,0 +1,25 @@
+
+---
+date: 2019-10-31
+title: "Hugo 0.59.1: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.59.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* hugofs: Fix crash in multilingual content fs [33c474b9](https://github.com/gohugoio/hugo/commit/33c474b9b3bd470670740f30c5131071ce906b22) [@bep](https://github.com/bep) [#6463](https://github.com/gohugoio/hugo/issues/6463)
+* Dockerfile: Switch to mage builds, various optimizations [ed268232](https://github.com/gohugoio/hugo/commit/ed2682325aeb8fd1c8139077d14a5f6906757a4e) [@jakejarvis](https://github.com/jakejarvis)
+* resources/images: Add exception for new test image [66fe68ff](https://github.com/gohugoio/hugo/commit/66fe68ffc98974936e157b18cf6bd9266ee081a4) [@anthonyfok](https://github.com/anthonyfok) [#6439](https://github.com/gohugoio/hugo/issues/6439)
+* Adjust benchmark templates [c5e1e824](https://github.com/gohugoio/hugo/commit/c5e1e8241a3b9f922f4a5134064ab2847174a959) [@bep](https://github.com/bep)
+* deps: Update to Chroma v0.6.8 to fix a crash [baa97508](https://github.com/gohugoio/hugo/commit/baa975082c6809c8a02a8109ec3062a2b7d48344) [@bep](https://github.com/bep) [#6450](https://github.com/gohugoio/hugo/issues/6450)
+* deps: Update quicktest [3e8b5a5c](https://github.com/gohugoio/hugo/commit/3e8b5a5c0157fdcf93588a42fbc90b3cd898f6b1) [@bep](https://github.com/bep)
+* Do not attempt to build if there is no config file [e6aa6edb](https://github.com/gohugoio/hugo/commit/e6aa6edb4c5f37feb1f2bb8c0f3f80933c7adf5f) [@ollien](https://github.com/ollien) [#5896](https://github.com/gohugoio/hugo/issues/5896)
+
+
+
diff --git a/docs/content/en/news/0.60.0-relnotes/index.md b/docs/content/en/news/0.60.0-relnotes/index.md
new file mode 100644
index 000000000..8cdebb35e
--- /dev/null
+++ b/docs/content/en/news/0.60.0-relnotes/index.md
@@ -0,0 +1,136 @@
+
+---
+date: 2019-11-27
+title: "Now CommonMark Compliant!"
+description: "Goldmark -- CommonMark compliant, GitHub flavored, fast and flexible -- is the new default library for Markdown in Hugo."
+categories: ["Releases"]
+---
+
+[Goldmark](https://github.com/yuin/goldmark/) by [@yuin](https://github.com/yuin) is now the new default library used for Markdown in Hugo. It's CommonMark compliant and GitHub flavored, and both fast and flexible. Blackfriday, the old default, has served us well, but there have been formatting and portability issues that were hard to work around. The "CommonMark compliant" part is the main selling feature of Goldmark, but with that you also get attribute syntax on headers and code blocks (for code blocks you can turn on/off line numbers and highlight line ranges), strikethrough support and an improved and configurable implementation of `TableOfContents`. See [Markup Configuration](https://gohugo.io/getting-started/configuration-markup/) for an overview of extensions.
+
+Please read the [Notes Section](#notes) and the updated documentation. We suggest you start with [List of content formats in Hugo](https://gohugo.io/content-management/formats/#list-of-content-formats). Goldmark is better, but the feature set is not fully comparable and it may be more stricter in some areas (there are 17 rules for how a [headline](https://spec.commonmark.org/0.29/#emphasis-and-strong-emphasis) should look like); if you have any problems you cannot work around, see [Configure Markup](https://gohugo.io/getting-started/configuration-markup/#configure-markup) for a way to change the default Markdown handler.
+
+Also, if you have lots of inline HTML in your Markdown files, you may have to enable the `unsafe` mode:
+
+{{< code-toggle file="config" >}}
+markup:
+ goldmark:
+ renderer:
+ unsafe: true
+{{< /code-toggle >}}
+
+This release represents **62 contributions by 10 contributors** to the main Hugo code base. [@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@anthonyfok](https://github.com/anthonyfok), [@max-arnold](https://github.com/max-arnold), and [@trimbo](https://github.com/trimbo) for their ongoing contributions.
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) and [@onedrawingperday](https://github.com/onedrawingperday) for their relentless work on keeping the themes site in pristine condition and to [@kaushalmodi](https://github.com/kaushalmodi) and [@davidsneighbour](https://github.com/davidsneighbour) for great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **8 contributions by 4 contributors**. A special thanks to [@bep](https://github.com/bep), [@jasdeepgill](https://github.com/jasdeepgill), [@luucamay](https://github.com/luucamay), and [@jkreft-usgs](https://github.com/jkreft-usgs) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 39668+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 440+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 274+ [themes](http://themes.gohugo.io/)
+
+
+## Notes
+
+* Permalink config now supports Go date format strings. [#6489](https://github.com/gohugoio/hugo/pull/6489)
+* We have removed the option to use Pygments as a highlighter. [#4491](https://github.com/gohugoio/hugo/pull/4491)
+* Config option for code highlighting of code fences in Markdown is now default on. This is what most people wants.
+* There are some differences in the feature set of Goldmark and Blackfriday. See the documentation for details.
+* The highlight shortcode/template func and the code fence attributes now share the same API regarding line numbers and highlight ranges.
+* The `Total in ...` for the `hugo` command now includes the configuration and modules loading, which should make it more honest/accurate.
+* The image logic in the 3 SEO internal templates twitter_cards.html, opengraph.html, and schema.html is consolidated: `images` page param first, then bundled image matching `*feature*`, `*cover*` or `*thumbnail*`, then finally `images` site param.
+* Deprecate mmark [33d73330](https://github.com/gohugoio/hugo/commit/33d733300a4f0b765234706e51bb7e077fdc2471) [@bep](https://github.com/bep) [#6486](https://github.com/gohugoio/hugo/issues/6486)
+
+## Enhancements
+
+### Templates
+
+* Featured and Site.Params image support for Schema [c91970c0](https://github.com/gohugoio/hugo/commit/c91970c08ddf8c22ca4f967c2cc864c483987ac7) [@max-arnold](https://github.com/max-arnold)
+* Add support for featured and global image to OpenGraph template [25a6b336](https://github.com/gohugoio/hugo/commit/25a6b33693992e8c6d9c35bc1e781ce3e2bca4be) [@max-arnold](https://github.com/max-arnold)
+* Allow dict to create nested structures [a2670bf4](https://github.com/gohugoio/hugo/commit/a2670bf460e10ed5de69f90abbe7c4e2b32068cf) [@bep](https://github.com/bep) [#6497](https://github.com/gohugoio/hugo/issues/6497)
+* Add collections.Reverse [90d0cdf2](https://github.com/gohugoio/hugo/commit/90d0cdf236b54000bfe444ba3a00236faaa28790) [@bep](https://github.com/bep) [#6499](https://github.com/gohugoio/hugo/issues/6499)
+* Make index work with slice as the last arg [95ef93be](https://github.com/gohugoio/hugo/commit/95ef93be667afb480184175a319584fd651abf03) [@bep](https://github.com/bep) [#6496](https://github.com/gohugoio/hugo/issues/6496)
+* Add some index map test cases [9f46a72c](https://github.com/gohugoio/hugo/commit/9f46a72c7eec25a4b9dea387d5717173b8d9ec72) [@bep](https://github.com/bep) [#3974](https://github.com/gohugoio/hugo/issues/3974)
+
+### Output
+
+* Add some more output if modules download takes time [14a1de14](https://github.com/gohugoio/hugo/commit/14a1de14fb1ec93444ba5dd028fdad8959924545) [@bep](https://github.com/bep) [#6519](https://github.com/gohugoio/hugo/issues/6519)
+* Add some more output if loading modules takes time [2dcc1318](https://github.com/gohugoio/hugo/commit/2dcc1318d1d9ed849d040115aa5ba6191a1c102a) [@bep](https://github.com/bep) [#6519](https://github.com/gohugoio/hugo/issues/6519)
+
+### Core
+
+* Disable test assertion on Windows [dd1e5fc0](https://github.com/gohugoio/hugo/commit/dd1e5fc0b43739941372c0c27b75977380acd582) [@bep](https://github.com/bep)
+* Adjust .Site.Permalinks deprecation level [03b369e6](https://github.com/gohugoio/hugo/commit/03b369e6726ed8a732c07db48f7209425c434bbe) [@bep](https://github.com/bep)
+* Remove .Site.Ref/RelRef [69fd1c60](https://github.com/gohugoio/hugo/commit/69fd1c60d8bcf6d1cea4bfea852f62df8891ee81) [@bep](https://github.com/bep)
+* Increase default timeout value to 30s [a8e9f838](https://github.com/gohugoio/hugo/commit/a8e9f8389a61471fa372c815b216511201b56823) [@bep](https://github.com/bep) [#6502](https://github.com/gohugoio/hugo/issues/6502)
+* Add a benchmark [0cf85c07](https://github.com/gohugoio/hugo/commit/0cf85c071aba57de8c6567fba166ed8332d01bac) [@bep](https://github.com/bep)
+
+### Other
+
+* Add some internal template image tests [dcde8af8](https://github.com/gohugoio/hugo/commit/dcde8af8c6ab39eb34b5e1d6030d1aa2fe6923ca) [@bep](https://github.com/bep) [#6542](https://github.com/gohugoio/hugo/issues/6542)
+* Update Goldmark [b0c7749f](https://github.com/gohugoio/hugo/commit/b0c7749fa1efca04839b767e1d48d617f3556867) [@bep](https://github.com/bep)
+* Use HUGO_ENV if set [5c5231e0](https://github.com/gohugoio/hugo/commit/5c5231e09e20953dc262df7d3b351a35f1c4b058) [@bep](https://github.com/bep) [#6456](https://github.com/gohugoio/hugo/issues/6456)
+* Make the image cache more robust [d6f7a9e2](https://github.com/gohugoio/hugo/commit/d6f7a9e28dfd5abff08b6aaf6fb3493c46bd1e39) [@bep](https://github.com/bep) [#6501](https://github.com/gohugoio/hugo/issues/6501)
+* Update to Go 1.13.4 and Go 1.12.13 [031f948f](https://github.com/gohugoio/hugo/commit/031f948f87ac97ca49d0a487a392a8a0c6afb699) [@bep](https://github.com/bep)
+* Restore -v behaviour [71597bd1](https://github.com/gohugoio/hugo/commit/71597bd1adfb016a3ea1977068c37dce92d49458) [@bep](https://github.com/bep)
+* Update Goldmark [82219128](https://github.com/gohugoio/hugo/commit/8221912869cf863d64ae7b50e0085589dc18e4d2) [@bep](https://github.com/bep)
+* Improve grammar in README.md [e1175ae8](https://github.com/gohugoio/hugo/commit/e1175ae83a365e0b17ec5904194e68ff3833e15a) [@jasdeepgill](https://github.com/jasdeepgill)
+* Replace the temp for with a dependency [a2d77f4a](https://github.com/gohugoio/hugo/commit/a2d77f4a803ce27802ea653a4aab53b89c37b488) [@bep](https://github.com/bep)
+* Update Chroma [b546417a](https://github.com/gohugoio/hugo/commit/b546417a27f8c59c8c7ccaebfef6bca03f5c4ac4) [@bep](https://github.com/bep)
+* Update Goldmark [4175b046](https://github.com/gohugoio/hugo/commit/4175b0468680b076a5e5f90450157a98f841789b) [@bep](https://github.com/bep)
+* markup/tableofcontents: GoDoc etc. [55f951cb](https://github.com/gohugoio/hugo/commit/55f951cbba69c29daabca57eeff5661d132fa162) [@bep](https://github.com/bep)
+* Minor cleanups [20f351ee](https://github.com/gohugoio/hugo/commit/20f351ee4cd40b3b53e33805fc6226c837290ed7) [@moorereason](https://github.com/moorereason)
+* Add Goldmark as the new default markdown handler [bfb9613a](https://github.com/gohugoio/hugo/commit/bfb9613a14ab2d93a4474e5486d22e52a9d5e2b3) [@bep](https://github.com/bep) [#5963](https://github.com/gohugoio/hugo/issues/5963)[#1778](https://github.com/gohugoio/hugo/issues/1778)[#6355](https://github.com/gohugoio/hugo/issues/6355)
+* Add parallel task executor helper [628efd6e](https://github.com/gohugoio/hugo/commit/628efd6e293d27984a3f5ba33522f8edd19d69d6) [@bep](https://github.com/bep)
+* Update homepage.md [14a985f8](https://github.com/gohugoio/hugo/commit/14a985f8abc527d4e8487fcd5fa742e1ab2a00ed) [@bep](https://github.com/bep)
+* Do not check for remote modules if main project is vendored [20ec9fa2](https://github.com/gohugoio/hugo/commit/20ec9fa2bbd69dc47dfc9f1db40c954e08520071) [@bep](https://github.com/bep) [#6506](https://github.com/gohugoio/hugo/issues/6506)
+* Add hint when dir not empty [1a36ce9b](https://github.com/gohugoio/hugo/commit/1a36ce9b0903e02a5068aed5f807ed9d21f48ece) [@YaguraStation](https://github.com/YaguraStation) [#4825](https://github.com/gohugoio/hugo/issues/4825)
+* Headless bundles should not be listed in .Pages [d1d1f240](https://github.com/gohugoio/hugo/commit/d1d1f240a25945b37eebe8a9a3f439f290832b33) [@bep](https://github.com/bep) [#6492](https://github.com/gohugoio/hugo/issues/6492)
+* Support Go time format strings in permalinks [70a1aa34](https://github.com/gohugoio/hugo/commit/70a1aa345b95bcf325f19c6e7184bcd6f885e454) [@look](https://github.com/look)
+* Increase timeout to 30000 for mage -v check [cafecca4](https://github.com/gohugoio/hugo/commit/cafecca440e495ec915cc6290fe09d2a343e9c95) [@anthonyfok](https://github.com/anthonyfok)
+* Prepare for Goldmark [5f6b6ec6](https://github.com/gohugoio/hugo/commit/5f6b6ec68936ebbbf590894c02a1a3ecad30735f) [@bep](https://github.com/bep) [#5963](https://github.com/gohugoio/hugo/issues/5963)
+* Update quicktest [366ee4d8](https://github.com/gohugoio/hugo/commit/366ee4d8da1c2b0c1751e9bf6d54638439735296) [@bep](https://github.com/bep)
+* Use pointer receiver for ContentSpec [9abd3967](https://github.com/gohugoio/hugo/commit/9abd396789d007193145db9246d5daf1640bbb8a) [@bep](https://github.com/bep)
+* Allow arm64 to fail [ad4c56b5](https://github.com/gohugoio/hugo/commit/ad4c56b5512226e74fb4ed6f10630d26d93e9eb6) [@bep](https://github.com/bep)
+* Add a JSON roundtrip test [3717db1f](https://github.com/gohugoio/hugo/commit/3717db1f90797f4e2a5d546472fb6b6df072d435) [@bep](https://github.com/bep) [#6472](https://github.com/gohugoio/hugo/issues/6472)
+* Update .travis.yml for arm64 support, etc. [ae4fde08](https://github.com/gohugoio/hugo/commit/ae4fde0866b2a10f0a414e0d76c4ff09bed3776e) [@anthonyfok](https://github.com/anthonyfok)
+* Skip Test386 on non-AMD64 architectures [c6d69d0c](https://github.com/gohugoio/hugo/commit/c6d69d0c95c42915956c210dbac8b884682d4a3e) [@anthonyfok](https://github.com/anthonyfok)
+* Switch to mage builds, various optimizations [ed268232](https://github.com/gohugoio/hugo/commit/ed2682325aeb8fd1c8139077d14a5f6906757a4e) [@jakejarvis](https://github.com/jakejarvis)
+* Add exception for new test image [66fe68ff](https://github.com/gohugoio/hugo/commit/66fe68ffc98974936e157b18cf6bd9266ee081a4) [@anthonyfok](https://github.com/anthonyfok) [#6439](https://github.com/gohugoio/hugo/issues/6439)
+* Adjust benchmark templates [c5e1e824](https://github.com/gohugoio/hugo/commit/c5e1e8241a3b9f922f4a5134064ab2847174a959) [@bep](https://github.com/bep)
+* Update quicktest [3e8b5a5c](https://github.com/gohugoio/hugo/commit/3e8b5a5c0157fdcf93588a42fbc90b3cd898f6b1) [@bep](https://github.com/bep)
+* Do not attempt to build if there is no config file [e6aa6edb](https://github.com/gohugoio/hugo/commit/e6aa6edb4c5f37feb1f2bb8c0f3f80933c7adf5f) [@ollien](https://github.com/ollien) [#5896](https://github.com/gohugoio/hugo/issues/5896)
+
+## Fixes
+
+### Output
+
+* Fix mage check on darwin and add debugging output [8beaa4c2](https://github.com/gohugoio/hugo/commit/8beaa4c25efb593d0363271000a3667b96567976) [@trimbo](https://github.com/trimbo)
+
+### Core
+
+* Fix cascade in server mode [01766439](https://github.com/gohugoio/hugo/commit/01766439246add22a6e6d0c12f932610be55cd8a) [@bep](https://github.com/bep) [#6538](https://github.com/gohugoio/hugo/issues/6538)
+* Fix .Sections vs siblings [da535235](https://github.com/gohugoio/hugo/commit/da53523599b43261520a22d77019b390aaa072e7) [@bep](https://github.com/bep) [#6365](https://github.com/gohugoio/hugo/issues/6365)
+* Fix recently broken timeout config [e3451371](https://github.com/gohugoio/hugo/commit/e3451371bdb68015f89c8c0f7d8ea0a19fff8df5) [@bep](https://github.com/bep)
+* Fix emoji handling inside shortcodes [812688fc](https://github.com/gohugoio/hugo/commit/812688fc2f3e220ac35cad9f0445a2548f0cc603) [@bep](https://github.com/bep) [#6504](https://github.com/gohugoio/hugo/issues/6504)
+* Fix ref/relref anhcor handling [c26d00db](https://github.com/gohugoio/hugo/commit/c26d00db648a4b475d94c9ed8e21dafb6efa1776) [@bep](https://github.com/bep) [#6481](https://github.com/gohugoio/hugo/issues/6481)
+
+### Other
+
+* Fix language handling in ExecuteAsTemplate [96f09659](https://github.com/gohugoio/hugo/commit/96f09659ce8752c32a2a6429c9faf23be4faa091) [@bep](https://github.com/bep) [#6331](https://github.com/gohugoio/hugo/issues/6331)
+* Fix potential data race [03e2d746](https://github.com/gohugoio/hugo/commit/03e2d7462dec17c2f623a13db709f9efc88182af) [@bep](https://github.com/bep) [#6478](https://github.com/gohugoio/hugo/issues/6478)
+* Fix jekyll metadata import on individual posts [8a89b858](https://github.com/gohugoio/hugo/commit/8a89b8582f0f681dc28961adb05ab0bf66da9543) [@trimbo](https://github.com/trimbo) [#5576](https://github.com/gohugoio/hugo/issues/5576)
+* Fix Params case handling in the index, sort and where func [a3fe5e5e](https://github.com/gohugoio/hugo/commit/a3fe5e5e35f311f22b6b4fc38abfcf64cd2c7d6f) [@bep](https://github.com/bep)
+* Fix GetPage Params case issue [cd07e6d5](https://github.com/gohugoio/hugo/commit/cd07e6d57b158a76f812e8c4c9567dbc84f57939) [@bep](https://github.com/bep) [#5946](https://github.com/gohugoio/hugo/issues/5946)
+* Update to Chroma v0.6.9 for Java lexer fix [8483b53a](https://github.com/gohugoio/hugo/commit/8483b53aefc3c6b52f9917e6e5af9c4d2e98df66) [@anthonyfok](https://github.com/anthonyfok) [#6476](https://github.com/gohugoio/hugo/issues/6476)
+* Update past go-cmp's checkptr fix [c3d433af](https://github.com/gohugoio/hugo/commit/c3d433af56071d42aeb3f85854bd30db64ed70b8) [@anthonyfok](https://github.com/anthonyfok)
+* Fix crash in multilingual content fs [33c474b9](https://github.com/gohugoio/hugo/commit/33c474b9b3bd470670740f30c5131071ce906b22) [@bep](https://github.com/bep) [#6463](https://github.com/gohugoio/hugo/issues/6463)
+* Update to Chroma v0.6.8 to fix a crash [baa97508](https://github.com/gohugoio/hugo/commit/baa975082c6809c8a02a8109ec3062a2b7d48344) [@bep](https://github.com/bep) [#6450](https://github.com/gohugoio/hugo/issues/6450)
+
+
+
+
+
diff --git a/docs/content/en/news/0.60.0-relnotes/poster-featured.png b/docs/content/en/news/0.60.0-relnotes/poster-featured.png
new file mode 100644
index 000000000..9bd99be59
--- /dev/null
+++ b/docs/content/en/news/0.60.0-relnotes/poster-featured.png
Binary files differ
diff --git a/docs/content/en/news/0.60.1-relnotes/featured-061.png b/docs/content/en/news/0.60.1-relnotes/featured-061.png
new file mode 100644
index 000000000..8ff4d4af9
--- /dev/null
+++ b/docs/content/en/news/0.60.1-relnotes/featured-061.png
Binary files differ
diff --git a/docs/content/en/news/0.60.1-relnotes/index.md b/docs/content/en/news/0.60.1-relnotes/index.md
new file mode 100644
index 000000000..2709c7b6f
--- /dev/null
+++ b/docs/content/en/news/0.60.1-relnotes/index.md
@@ -0,0 +1,19 @@
+
+---
+date: 2019-11-29
+title: "Hugo 0.60.1: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.60.0."
+categories: ["Releases"]
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* deps: Update minify [86a5b59f](https://github.com/gohugoio/hugo/commit/86a5b59f64dd6c4d338a9e091e98cd0ad6d4824f) [@MeiK2333](https://github.com/MeiK2333) [#6475](https://github.com/gohugoio/hugo/issues/6475)
+* Fix headless regression [bb80fff6](https://github.com/gohugoio/hugo/commit/bb80fff69ad3f2ddff23819bf6eb6f4b8512dc2a) [@bep](https://github.com/bep) [#6552](https://github.com/gohugoio/hugo/issues/6552)
+* deps: Update Goldmark [347cfb0c](https://github.com/gohugoio/hugo/commit/347cfb0c17b08626250180e8a84b53fc4800473f) [@bep](https://github.com/bep) [#6549](https://github.com/gohugoio/hugo/issues/6549)[#6551](https://github.com/gohugoio/hugo/issues/6551)
+* hugolib: Fix timeout number parsing for YAML/JSON config [b60ae35b](https://github.com/gohugoio/hugo/commit/b60ae35b97c4f44b9b09fcf06c863c695bc3c73a) [@bep](https://github.com/bep) [#6555](https://github.com/gohugoio/hugo/issues/6555)
+
+
+
diff --git a/docs/content/en/news/0.61.0-relnotes/hugo-61-featured.png b/docs/content/en/news/0.61.0-relnotes/hugo-61-featured.png
new file mode 100644
index 000000000..8691f30e2
--- /dev/null
+++ b/docs/content/en/news/0.61.0-relnotes/hugo-61-featured.png
Binary files differ
diff --git a/docs/content/en/news/0.61.0-relnotes/index.md b/docs/content/en/news/0.61.0-relnotes/index.md
new file mode 100644
index 000000000..2922506df
--- /dev/null
+++ b/docs/content/en/news/0.61.0-relnotes/index.md
@@ -0,0 +1,56 @@
+
+---
+date: 2019-12-11
+title: "40K GitHub Stars Edition"
+description: "40K stars on GitHub is a good enough reason to release a new version of Hugo!"
+categories: ["Releases"]
+---
+
+This is the [40K GitHub Stars Edition](https://github.com/gohugoio/hugo/stargazers). It's mostly a bug fix release, and an important note is the deprecation of Amber and Ace as template engines. See [#6609](https://github.com/gohugoio/hugo/issues/6609) for more information.
+
+This release represents **10 contributions by 3 contributors** to the main Hugo code base.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **5 contributions by 4 contributors**. A special thanks to [@YuriyOborozhnyi](https://github.com/YuriyOborozhnyi), [@bep](https://github.com/bep), [@Flogex](https://github.com/Flogex), and [@atishay](https://github.com/atishay) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 40029+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 440+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 279+ [themes](http://themes.gohugo.io/)
+
+
+## Notes
+
+* Deprecate Ace and Amber [5f8c2818](https://github.com/gohugoio/hugo/commit/5f8c2818f120b881f58f4cec67aed876edb8bcdf) [@bep](https://github.com/bep) [#6609](https://github.com/gohugoio/hugo/issues/6609)
+
+## Enhancements
+
+### Templates
+
+* Allow any key type in partialCached [0efb00c2](https://github.com/gohugoio/hugo/commit/0efb00c2a86ec3f52000a643f26f54bb2a9dfbd6) [@bep](https://github.com/bep) [#6572](https://github.com/gohugoio/hugo/issues/6572)
+
+### Other
+
+* Update Goldmark [3cc217a6](https://github.com/gohugoio/hugo/commit/3cc217a650546b8bc29deabb95e648aacef96fbf) [@bep](https://github.com/bep)
+* Add typographic chars from goldmark to toc [c5f2f583](https://github.com/gohugoio/hugo/commit/c5f2f5837fdf6a30c7b28e8368033623b74a30a0) [@tangiel](https://github.com/tangiel) [#6592](https://github.com/gohugoio/hugo/issues/6592)
+* Reimplement pygmentsCodefencesGuessSyntax [40a092b0](https://github.com/gohugoio/hugo/commit/40a092b0687d44ecb53ef1fd53001a6299345780) [@bep](https://github.com/bep) [#6565](https://github.com/gohugoio/hugo/issues/6565)
+* Update Goldmark [d534ce94](https://github.com/gohugoio/hugo/commit/d534ce9424c952800dfb26c2faff2d47e9597cad) [@bep](https://github.com/bep) [#6557](https://github.com/gohugoio/hugo/issues/6557)
+* Update minify [86a5b59f](https://github.com/gohugoio/hugo/commit/86a5b59f64dd6c4d338a9e091e98cd0ad6d4824f) [@MeiK2333](https://github.com/MeiK2333) [#6475](https://github.com/gohugoio/hugo/issues/6475)
+* Update Goldmark [347cfb0c](https://github.com/gohugoio/hugo/commit/347cfb0c17b08626250180e8a84b53fc4800473f) [@bep](https://github.com/bep) [#6549](https://github.com/gohugoio/hugo/issues/6549)[#6551](https://github.com/gohugoio/hugo/issues/6551)
+
+## Fixes
+
+### Core
+
+* Fix timeout number parsing for YAML/JSON config [b60ae35b](https://github.com/gohugoio/hugo/commit/b60ae35b97c4f44b9b09fcf06c863c695bc3c73a) [@bep](https://github.com/bep) [#6555](https://github.com/gohugoio/hugo/issues/6555)
+
+### Other
+
+* Fix headless regression [bb80fff6](https://github.com/gohugoio/hugo/commit/bb80fff69ad3f2ddff23819bf6eb6f4b8512dc2a) [@bep](https://github.com/bep) [#6552](https://github.com/gohugoio/hugo/issues/6552)
+
+
+
+
+
diff --git a/docs/content/en/news/0.62.0-relnotes/hugo-62-poster-featured.png b/docs/content/en/news/0.62.0-relnotes/hugo-62-poster-featured.png
new file mode 100644
index 000000000..9a024c023
--- /dev/null
+++ b/docs/content/en/news/0.62.0-relnotes/hugo-62-poster-featured.png
Binary files differ
diff --git a/docs/content/en/news/0.62.0-relnotes/index.md b/docs/content/en/news/0.62.0-relnotes/index.md
new file mode 100644
index 000000000..71f01145d
--- /dev/null
+++ b/docs/content/en/news/0.62.0-relnotes/index.md
@@ -0,0 +1,83 @@
+
+---
+date: 2019-12-23
+title: "Hugo Christmas Edition!"
+description: "Hugo 0.62 brings Markdown Render Hooks. And it's faster!"
+categories: ["Releases"]
+---
+
+From all of us to all of you, a **very Merry Christmas** -- and Hugo `0.62.0`! This version brings [Markdown Render Hooks](https://gohugo.io/getting-started/configuration-markup/#markdown-render-hooks). This gives you full control over how links and images in Markdown are rendered without using any shortcodes. With this, you can get Markdown links that work on both GitHub and Hugo, resize images etc. It is a very long sought after feature, that has been hard to tackle until we got [Goldmark](https://github.com/yuin/goldmark/), the new Markdown engine, by [@yuin](https://github.com/yuin). When you read up on this new feature in the documentation, also note the new [.RenderString](https://gohugo.io/functions/renderstring/) method on `Page`.
+
+Adding these render hooks also had the nice side effect of making Hugo **faster and more memory effective**. We could have just added this feature on top of what we got, getting it to work. But you like Hugo's fast builds, you love instant browser-refreshes on change. So we had to take a step back and redesign how we detect "what changed?" for templates referenced from content files, either directly or indirectly. And by doing that we greatly simplified how we handle all the templates. Which accidentally makes this version **the fastest to date**. It's not an "every site will be much faster" statement. This depends. Sites with many languages and/or many templates will benefit more from this. We have benchmarks with site-building showing about 15% improvement in build speed and memory efficiency.
+
+This release represents **25 contributions by 5 contributors** to the main Hugo code base. [@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@gavinhoward](https://github.com/gavinhoward), [@niklasfasching](https://github.com/niklasfasching), and [@zaitseff](https://github.com/zaitseff) for their ongoing contributions. And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) and [@onedrawingperday](https://github.com/onedrawingperday) for their relentless work on keeping the themes site in pristine condition and to [@kaushalmodi](https://github.com/kaushalmodi) for his great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs), which has received **8 contributions by 5 contributors**. A special thanks to [@bep](https://github.com/bep), [@DirtyF](https://github.com/DirtyF), [@pfhawkins](https://github.com/pfhawkins), and [@bubelov](https://github.com/bubelov) for their work on the documentation site.
+
+Also a big shoutout and thanks to the very active and helpful moderators on the [Hugo Discourse](https://discourse.gohugo.io/), making it a first class forum for Hugo questions and discussions.
+
+Hugo now has:
+
+* 40362+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 440+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 284+ [themes](http://themes.gohugo.io/)
+
+## Notes
+
+* Ace and Amber support is now removed from Hugo. See [#6609](https://github.com/gohugoio/hugo/issues/6609) for more information.
+* The `markdownify` template function does not, yet, support render hooks. We recommend you look at the new and more powerful [.RenderString](https://gohugo.io/functions/renderstring/) method on `Page`.
+* If you have output format specific behaviour in a template used from a content file, you must create a output format specific template, e.g. `myshortcode.amp.html`. This also applies to the new rendering hooks introduced in this release. This has been the intended behaviour all the time, but a failing test (now fixed) shows that the implementation of this has not been as strict as specified, hence this note.
+* The `errorf` does not return any value anymore. This means that the ERROR will just be printed to the console. We have also added a `warnf` template func.
+
+
+## Enhancements
+
+### Templates
+
+* Do not return any value in errorf [50cc7fe5](https://github.com/gohugoio/hugo/commit/50cc7fe54580018239ea95aafe67f6a158cdcc9f) [@bep](https://github.com/bep) [#6653](https://github.com/gohugoio/hugo/issues/6653)
+* Add a warnf template func [1773d71d](https://github.com/gohugoio/hugo/commit/1773d71d5b40f5a6a14edca417d2818607a499f1) [@bep](https://github.com/bep) [#6628](https://github.com/gohugoio/hugo/issues/6628)
+* Some more params merge adjustments [ccb1bf1a](https://github.com/gohugoio/hugo/commit/ccb1bf1abb7341fa1be23a90b66c14ae89790f49) [@bep](https://github.com/bep) [#6633](https://github.com/gohugoio/hugo/issues/6633)
+* Get rid of the custom template truth logic [d20ca370](https://github.com/gohugoio/hugo/commit/d20ca3700512d661247b44d953515b9455e57ed6) [@bep](https://github.com/bep) [#6615](https://github.com/gohugoio/hugo/issues/6615)
+* Add some comments [92c7f7ab](https://github.com/gohugoio/hugo/commit/92c7f7ab85a40cae8f36f2348d86f3e47d811eb5) [@bep](https://github.com/bep)
+
+### Core
+
+* Improve error and reload handling of hook templates in server mode [8a58ebb3](https://github.com/gohugoio/hugo/commit/8a58ebb311fd079f65068e7e37725e4d43f17ab5) [@bep](https://github.com/bep) [#6635](https://github.com/gohugoio/hugo/issues/6635)
+
+### Other
+
+* Update Goldmark to v1.1.18 [1fb17be9](https://github.com/gohugoio/hugo/commit/1fb17be9a008b549d11b622849adbaad01d4023d) [@bep](https://github.com/bep) [#6649](https://github.com/gohugoio/hugo/issues/6649)
+* Update go-org [51d89dab](https://github.com/gohugoio/hugo/commit/51d89dab1827ae80f9d865f5c38cb5f6a3a11f68) [@niklasfasching](https://github.com/niklasfasching)
+* More on hooks [c8bfe47c](https://github.com/gohugoio/hugo/commit/c8bfe47c6a740c5fedfdb5b7465d7ae1db44cb65) [@bep](https://github.com/bep)
+* Update to Goldmark v1.1.17 [04536838](https://github.com/gohugoio/hugo/commit/0453683816cfbc94e1e19c644f5f84213bb8cf35) [@bep](https://github.com/bep) [#6641](https://github.com/gohugoio/hugo/issues/6641)
+* Regen docshelper [55c29d4d](https://github.com/gohugoio/hugo/commit/55c29d4de38df67dd116f1845f7cc69ca7e35843) [@bep](https://github.com/bep)
+* Preserve HTML Text for image render hooks [a67d95fe](https://github.com/gohugoio/hugo/commit/a67d95fe1a033ca4934957b5a98b12ecc8a9edbd) [@bep](https://github.com/bep) [#6639](https://github.com/gohugoio/hugo/issues/6639)
+* Update Goldmark [eef934ae](https://github.com/gohugoio/hugo/commit/eef934ae7eabc38eeba386831de6013eec0285f2) [@bep](https://github.com/bep) [#6626](https://github.com/gohugoio/hugo/issues/6626)
+* Preserve HTML Text for link render hooks [00954c5d](https://github.com/gohugoio/hugo/commit/00954c5d1fda0b18cd1b847ee580d5f4caa76c70) [@bep](https://github.com/bep) [#6629](https://github.com/gohugoio/hugo/issues/6629)
+* Footnote [3e316155](https://github.com/gohugoio/hugo/commit/3e316155c5d4fbf166d38e997a41101b6aa501d5) [@bep](https://github.com/bep)
+* Add render template hooks for links and images [e625088e](https://github.com/gohugoio/hugo/commit/e625088ef5a970388ad50e464e87db56b358dac4) [@bep](https://github.com/bep) [#6545](https://github.com/gohugoio/hugo/issues/6545)[#4663](https://github.com/gohugoio/hugo/issues/4663)[#6043](https://github.com/gohugoio/hugo/issues/6043)
+* Enhance accessibility to issues [0947cf95](https://github.com/gohugoio/hugo/commit/0947cf958358e5a45b4f605e2a5b2504896fa360) [@peaceiris](https://github.com/peaceiris) [#6233](https://github.com/gohugoio/hugo/issues/6233)
+* Re-introduce the correct version of Goldmark [03d6960a](https://github.com/gohugoio/hugo/commit/03d6960a15dcc8efc164e5ed310b12bd1ffdd930) [@bep](https://github.com/bep)
+* Rework template handling for function and map lookups [a03c631c](https://github.com/gohugoio/hugo/commit/a03c631c420a03f9d90699abdf9be7e4fca0ff61) [@bep](https://github.com/bep) [#6594](https://github.com/gohugoio/hugo/issues/6594)
+* Create lightweight forks of text/template and html/template [167c0153](https://github.com/gohugoio/hugo/commit/167c01530bb295c8b8d35921eb27ffa5bee76dfe) [@bep](https://github.com/bep) [#6594](https://github.com/gohugoio/hugo/issues/6594)
+* Add config option for ordered list [4c804319](https://github.com/gohugoio/hugo/commit/4c804319f6db0b8459cc9b5df4a904fd2c55dedd) [@gavinhoward](https://github.com/gavinhoward)
+
+## Fixes
+
+### Templates
+
+* Fix merge vs Params [1b785a7a](https://github.com/gohugoio/hugo/commit/1b785a7a6d3c264e39e4976c59b618c0ac1ba5f9) [@bep](https://github.com/bep) [#6633](https://github.com/gohugoio/hugo/issues/6633)
+
+### Core
+
+* Fix test [3c24ae03](https://github.com/gohugoio/hugo/commit/3c24ae030fe08ba259dd3de7ffea6c927c01e070) [@bep](https://github.com/bep)
+
+### Other
+
+* Fix abs path handling in module mounts [ad6504e6](https://github.com/gohugoio/hugo/commit/ad6504e6b504277bbc7b60d093cdccd4f3baaa4f) [@bep](https://github.com/bep) [#6622](https://github.com/gohugoio/hugo/issues/6622)
+* Fix incorrect MIME type from image/jpg to image/jpeg [158e7ec2](https://github.com/gohugoio/hugo/commit/158e7ec204e5149d77893d353cac9f55946d3e9a) [@zaitseff](https://github.com/zaitseff)
+
+
+
+
+
diff --git a/docs/content/en/news/0.62.1-relnotes/index.md b/docs/content/en/news/0.62.1-relnotes/index.md
new file mode 100644
index 000000000..98fe5eb5b
--- /dev/null
+++ b/docs/content/en/news/0.62.1-relnotes/index.md
@@ -0,0 +1,17 @@
+---
+date: 2020-01-01
+title: "Hugo 0.62.1: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.62.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+---
+
+This release is mainly motivated by getting [this demo site](https://github.com/bep/portable-hugo-links) up and running. It demonstrates truly portable Markdown links and images, whether browsed on GitHub or deployed as a Hugo site.
+
+* Support files in content mounts [ff6253bc](https://github.com/gohugoio/hugo/commit/ff6253bc7cf745e9c0127ddc9006da3c2c00c738) [@bep](https://github.com/bep) [#6684](https://github.com/gohugoio/hugo/issues/6684)[#6696](https://github.com/gohugoio/hugo/issues/6696)
+* Update alpine base image in Dockerfile to 3.11 [aa4ccb8a](https://github.com/gohugoio/hugo/commit/aa4ccb8a1e9b8aa17397acf34049a2aa16b0b6cb) [@RemcodM](https://github.com/RemcodM)
+* hugolib: Fix inline shortcode regression [5509954c](https://github.com/gohugoio/hugo/commit/5509954c7e8b0ce8d5ea903b0ab639ea14b69acb) [@bep](https://github.com/bep) [#6677](https://github.com/gohugoio/hugo/issues/6677)
+
+
+
diff --git a/docs/content/en/news/0.62.2-relnotes/index.md b/docs/content/en/news/0.62.2-relnotes/index.md
new file mode 100644
index 000000000..0d116e5a2
--- /dev/null
+++ b/docs/content/en/news/0.62.2-relnotes/index.md
@@ -0,0 +1,26 @@
+
+---
+date: 2020-01-05
+title: "Hugo 0.62.2: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.62.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+The main driving force behind these patch releases in the new year has been getting a good story with [portable links](https://github.com/bep/portable-hugo-links/) between GitHub and Hugo, using the new render hooks introduced in [Hugo 0.62.0](https://gohugo.io/news/0.62.0-relnotes/). And all was mostly well until a Hugo user asked about anchor links. Which is, when you look into it, a slightly sad Markdown story. They have been [talking about anchors in Markdown](https://talk.commonmark.org/t/anchors-in-markdown/247) over at the CommonMark forum for the last six years, but it has come to nothing. The current situation is that some Markdown engines support the `{#anchorName}` attribute syntax (Hugo's Goldmark does, GitHub does not) and for those that support auto-generation of IDs, the implementation often varies. And this makes for poor portability.
+
+To improve this, Hugo has now reverse-engineered GitHub's implementation and made that the default strategy for generation or header IDs. We understand that this isn't everyone's cup of tea, so you can [configure the behaviour](https://gohugo.io/getting-started/configuration-markup#goldmark) to be one of `github`, `github-ascii` (some client-libraries have Unicode issues) or `blackfriday` (which will match how it behaved before Hugo 0.60).
+
+* hugolib: Fix relative .Page.GetPage from bundle [196a9df5](https://github.com/gohugoio/hugo/commit/196a9df585c4744e3280f37c1c24e469fce14b8c) [@bep](https://github.com/bep) [#6705](https://github.com/gohugoio/hugo/issues/6705)
+* markup/goldmark: Adjust auto ID space handling [9b6e6146](https://github.com/gohugoio/hugo/commit/9b6e61464b09ffe3423fb8d7c72bddb7a9ed5b98) [@bep](https://github.com/bep) [#6710](https://github.com/gohugoio/hugo/issues/6710)
+* docs: Document the new autoHeadingIDType setting [d62ede8e](https://github.com/gohugoio/hugo/commit/d62ede8e9e5883e7ebb023e49b82f07b45edc1c7) [@bep](https://github.com/bep) [#6707](https://github.com/gohugoio/hugo/issues/6707)[#6616](https://github.com/gohugoio/hugo/issues/6616)
+* docs: Regenerate docshelper [81b7e48a](https://github.com/gohugoio/hugo/commit/81b7e48a55092203aeee8785799e6fed3928760e) [@bep](https://github.com/bep) [#6707](https://github.com/gohugoio/hugo/issues/6707)[#6616](https://github.com/gohugoio/hugo/issues/6616)
+* markup/goldmark: Add an optional Blackfriday auto ID strategy [16e7c112](https://github.com/gohugoio/hugo/commit/16e7c1120346bd853cf6510ffac8e94824bf2c7f) [@bep](https://github.com/bep) [#6707](https://github.com/gohugoio/hugo/issues/6707)
+* markup/goldmark: Make the autoID type config a string [8f071fc1](https://github.com/gohugoio/hugo/commit/8f071fc159ce9a0fc0ea14a73bde8f299bedd109) [@bep](https://github.com/bep) [#6707](https://github.com/gohugoio/hugo/issues/6707)
+* markup/goldmark: Simplify code [5ee1f087](https://github.com/gohugoio/hugo/commit/5ee1f0876f3ec8b79d6305298185dc821ead2d28) [@bep](https://github.com/bep)
+* markup/goldmark: Make auto IDs GitHub compatible [a82d2700](https://github.com/gohugoio/hugo/commit/a82d2700fcc772aada15d65b8f76913ca23f7404) [@bep](https://github.com/bep) [#6616](https://github.com/gohugoio/hugo/issues/6616)
+
+
+
diff --git a/docs/content/en/news/0.63.0-relnotes/featured-063.png b/docs/content/en/news/0.63.0-relnotes/featured-063.png
new file mode 100644
index 000000000..3944d52cc
--- /dev/null
+++ b/docs/content/en/news/0.63.0-relnotes/featured-063.png
Binary files differ
diff --git a/docs/content/en/news/0.63.0-relnotes/index.md b/docs/content/en/news/0.63.0-relnotes/index.md
new file mode 100644
index 000000000..899dfdb39
--- /dev/null
+++ b/docs/content/en/news/0.63.0-relnotes/index.md
@@ -0,0 +1,126 @@
+
+---
+date: 2020-01-23
+title: "Improved base templates, and faster!"
+description: "In Hugo 0.63 we have improved the base template lookup logic, and this simplification also made Hugo faster …"
+categories: ["Releases"]
+---
+
+**Note:** There is already a [patch release](/news/0.63.1-relnotes/) with some fixes.
+
+Hugo `0.63` is, in general, **considerably faster and more memory effective** (see the site-building benchmarks below comparing it to `v0.62`). Not that we are particularly concerned about Hugo's build speed. We leave that to others. But we would hate if it got slower, so we have a comprehensive benchmark suite. And when we needed to simplify the template handling code to solve a concurrency issue, it also became more effective. And as a bonus, we also finally got the [base template lookup order](https://gohugo.io/templates/base/#base-template-lookup-order) that you really, really wanted!
+
+```bash
+name old time/op new time/op delta
+SiteNew/Bundle_with_image-16 13.2ms ± 2% 10.7ms ± 0% -19.13% (p=0.029 n=4+4)
+SiteNew/Bundle_with_JSON_file-16 13.1ms ± 0% 10.8ms ± 0% -17.50% (p=0.029 n=4+4)
+SiteNew/Tags_and_categories-16 47.7ms ± 1% 43.7ms ± 2% -8.43% (p=0.029 n=4+4)
+SiteNew/Canonify_URLs-16 52.3ms ± 6% 49.5ms ± 7% ~ (p=0.200 n=4+4)
+SiteNew/Deep_content_tree-16 77.7ms ± 0% 71.6ms ± 1% -7.84% (p=0.029 n=4+4)
+SiteNew/Many_HTML_templates-16 44.0ms ± 2% 37.5ms ± 1% -14.79% (p=0.029 n=4+4)
+SiteNew/Page_collections-16 58.4ms ± 1% 52.5ms ± 1% -10.09% (p=0.029 n=4+4)
+
+name old alloc/op new alloc/op delta
+SiteNew/Bundle_with_image-16 3.81MB ± 0% 2.22MB ± 0% -41.57% (p=0.029 n=4+4)
+SiteNew/Bundle_with_JSON_file-16 3.60MB ± 0% 2.01MB ± 0% -44.09% (p=0.029 n=4+4)
+SiteNew/Tags_and_categories-16 19.3MB ± 1% 14.2MB ± 0% -26.52% (p=0.029 n=4+4)
+SiteNew/Canonify_URLs-16 70.7MB ± 0% 69.0MB ± 0% -2.30% (p=0.029 n=4+4)
+SiteNew/Deep_content_tree-16 37.0MB ± 0% 31.2MB ± 0% -15.78% (p=0.029 n=4+4)
+SiteNew/Many_HTML_templates-16 17.5MB ± 0% 10.6MB ± 0% -39.68% (p=0.029 n=4+4)
+SiteNew/Page_collections-16 25.8MB ± 0% 21.2MB ± 0% -17.80% (p=0.029 n=4+4)
+
+name old allocs/op new allocs/op delta
+SiteNew/Bundle_with_image-16 52.3k ± 0% 26.1k ± 0% -50.08% (p=0.029 n=4+4)
+SiteNew/Bundle_with_JSON_file-16 52.3k ± 0% 26.1k ± 0% -50.06% (p=0.029 n=4+4)
+SiteNew/Tags_and_categories-16 337k ± 1% 272k ± 0% -19.20% (p=0.029 n=4+4)
+SiteNew/Canonify_URLs-16 422k ± 0% 395k ± 0% -6.33% (p=0.029 n=4+4)
+SiteNew/Deep_content_tree-16 400k ± 0% 314k ± 0% -21.41% (p=0.029 n=4+4)
+SiteNew/Many_HTML_templates-16 247k ± 0% 143k ± 0% -41.84% (p=0.029 n=4+4)
+SiteNew/Page_collections-16 282k ± 0% 207k ± 0% -26.31% (p=0.029 n=4+4)
+```
+
+This release represents **35 contributions by 9 contributors** to the main Hugo code base. [@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@hcwong](https://github.com/hcwong), [@flother](https://github.com/flother), and [@RemcodM](https://github.com/RemcodM) for their ongoing contributions.
+
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) and [@onedrawingperday](https://github.com/onedrawingperday) for their relentless work on keeping the themes site in pristine condition and to [@davidsneighbour](https://github.com/davidsneighbour) and [@kaushalmodi](https://github.com/kaushalmodi) for all the great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **13 contributions by 10 contributors**. A special thanks to [@bep](https://github.com/bep), [@jeffscottlevine](https://github.com/jeffscottlevine), [@davidsneighbour](https://github.com/davidsneighbour), and [@nicfits](https://github.com/nicfits) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 41091+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 440+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 286+ [themes](http://themes.gohugo.io/)
+
+## Notes
+
+* `.Type` on-page now returns an empty string if not set in the front matter or if `.Section` returns empty. See [#6760](https://github.com/gohugoio/hugo/issues/6760).
+* Baseof template (e.g. `baseof.html`) lookup order is completely revised/expanded. See [base template lookup order](https://gohugo.io/templates/base/#base-template-lookup-order). We now do template resolution at execution time following the same rules as the template it applies to (e.g. `_default/single.html`). This is an obvious improvement and your site should work as before.
+* Shortcode params now supports params with raw string literals (strings surrounded with \`\`) that supports newlines.
+* Note: In a base template (e.g. `baseof.html`), the first template block must be a `define`.
+
+## Enhancements
+
+### Templates
+
+* Rework template management to get rid of concurrency issues [c6d650c8](https://github.com/gohugoio/hugo/commit/c6d650c8c8b22fdc7ddedc1e42a3ca698e1390d6) [@bep](https://github.com/bep) [#6716](https://github.com/gohugoio/hugo/issues/6716)[#6760](https://github.com/gohugoio/hugo/issues/6760)[#6768](https://github.com/gohugoio/hugo/issues/6768)[#6778](https://github.com/gohugoio/hugo/issues/6778)
+* Put Go's internal template funcs in Hugo's map [1cf23541](https://github.com/gohugoio/hugo/commit/1cf235412f98b42aefe368e99a0e9e95bae6eef7) [@bep](https://github.com/bep) [#6717](https://github.com/gohugoio/hugo/issues/6717)
+
+### Output
+
+* Add base template lookup variant to docs.json [cafb1d53](https://github.com/gohugoio/hugo/commit/cafb1d53c0927e2aef8abff1bf9095c90c6f3067) [@bep](https://github.com/bep)
+
+### Core
+
+* Disable a test assertion on ARM [836c2426](https://github.com/gohugoio/hugo/commit/836c24261f9f175254256fb326d92a3db47e1c75) [@bep](https://github.com/bep) [#6655](https://github.com/gohugoio/hugo/issues/6655)
+* Some more benchmark adjustments [ddd75f21](https://github.com/gohugoio/hugo/commit/ddd75f212110a3d6643a07301e377415f3d163bd) [@bep](https://github.com/bep)
+* Adjust site benchmarks [4ed6ebef](https://github.com/gohugoio/hugo/commit/4ed6ebef4ca71572a19bb890cb4c026a688b2b5b) [@bep](https://github.com/bep)
+* Add a benchmark with lots of templates [ea05c0e8](https://github.com/gohugoio/hugo/commit/ea05c0e8456e8dec71ffd796148355b0d8b36eb0) [@bep](https://github.com/bep)
+
+### Other
+
+* Regen docs helper [4f466db6](https://github.com/gohugoio/hugo/commit/4f466db666dded1b6c6d1e6926e170f22164433a) [@bep](https://github.com/bep)
+* Allow multiple arguments in ne/ge/gt/le/lt functions Treat op arg1 arg2 arg3 ... as (arg1 op arg2) && (arg1 op arg3) and so on for ne/ge/gt/le/lt. [0c251be6](https://github.com/gohugoio/hugo/commit/0c251be66bf3ad4abafbc47583e394ca4e6ffcf1) [@le0tan](https://github.com/le0tan) [#6619](https://github.com/gohugoio/hugo/issues/6619)
+* Update go-org [8585b388](https://github.com/gohugoio/hugo/commit/8585b388d27abde1ab6b6c63ad6addf4066ec8dd) [@niklasfasching](https://github.com/niklasfasching)
+* Add support for newline characters in raw string shortcode [21ca2e9c](https://github.com/gohugoio/hugo/commit/21ca2e9ce4255bfad2bb0576aff087a240acf70a) [@hcwong](https://github.com/hcwong)
+* Update github.com/alecthomas/chroma [3efa1d81](https://github.com/gohugoio/hugo/commit/3efa1d81219a6e7b41c9676e9cab446741f69055) [@ghislainbourgeois](https://github.com/ghislainbourgeois)
+* Update minify to v2.7.2 [65ec8fe8](https://github.com/gohugoio/hugo/commit/65ec8fe827efef5a14c4e1bc440a6df97d2f20a2) [@bep](https://github.com/bep) [#6756](https://github.com/gohugoio/hugo/issues/6756)
+* Update Goldmark to v1.1.21 [d3e8ab2e](https://github.com/gohugoio/hugo/commit/d3e8ab2e39dcc27853b163079f4a82364286fe82) [@flother](https://github.com/flother) [#6571](https://github.com/gohugoio/hugo/issues/6571)
+* Allow raw string literals in shortcode params [da814556](https://github.com/gohugoio/hugo/commit/da814556567eab9ba0ac5fef5314c3ad5ee50ccd) [@hcwong](https://github.com/hcwong)
+* Update github.com/gohugoio/testmodBuilder [0c0bb372](https://github.com/gohugoio/hugo/commit/0c0bb372858b5de58c15ccd300144e0bc205ffad) [@bep](https://github.com/bep)
+* Update direct dependencies [94cfdf6b](https://github.com/gohugoio/hugo/commit/94cfdf6befd657e46c9458b23f17d851cd2f7037) [@bep](https://github.com/bep) [#6719](https://github.com/gohugoio/hugo/issues/6719)
+* Update to new CSS config [45138017](https://github.com/gohugoio/hugo/commit/451380177868e48127a33362aa8d553b90516fb5) [@bep](https://github.com/bep) [#6719](https://github.com/gohugoio/hugo/issues/6719)
+* Update to Minify v2.7.0 [56354a63](https://github.com/gohugoio/hugo/commit/56354a63bb73271224a9300a4742dc1a2f551202) [@bep](https://github.com/bep)
+* Add support for freebsd/arm64 [aead8108](https://github.com/gohugoio/hugo/commit/aead8108b80d77e23c68a47fd8d86464310130be) [@dmgk](https://github.com/dmgk) [#6719](https://github.com/gohugoio/hugo/issues/6719)
+* Update releasenotes_writer.go [df6e9efd](https://github.com/gohugoio/hugo/commit/df6e9efd8f345707932231ea23dc8713afb5b026) [@bep](https://github.com/bep)
+* Adjust auto ID space handling [9b6e6146](https://github.com/gohugoio/hugo/commit/9b6e61464b09ffe3423fb8d7c72bddb7a9ed5b98) [@bep](https://github.com/bep) [#6710](https://github.com/gohugoio/hugo/issues/6710)
+* Document the new autoHeadingIDType setting [d62ede8e](https://github.com/gohugoio/hugo/commit/d62ede8e9e5883e7ebb023e49b82f07b45edc1c7) [@bep](https://github.com/bep) [#6707](https://github.com/gohugoio/hugo/issues/6707)[#6616](https://github.com/gohugoio/hugo/issues/6616)
+* Regenerate docshelper [81b7e48a](https://github.com/gohugoio/hugo/commit/81b7e48a55092203aeee8785799e6fed3928760e) [@bep](https://github.com/bep) [#6707](https://github.com/gohugoio/hugo/issues/6707)[#6616](https://github.com/gohugoio/hugo/issues/6616)
+* Add an optional Blackfriday auto ID strategy [16e7c112](https://github.com/gohugoio/hugo/commit/16e7c1120346bd853cf6510ffac8e94824bf2c7f) [@bep](https://github.com/bep) [#6707](https://github.com/gohugoio/hugo/issues/6707)
+* Make the autoID type config a string [8f071fc1](https://github.com/gohugoio/hugo/commit/8f071fc159ce9a0fc0ea14a73bde8f299bedd109) [@bep](https://github.com/bep) [#6707](https://github.com/gohugoio/hugo/issues/6707)
+* markup/goldmark: Simplify code [5ee1f087](https://github.com/gohugoio/hugo/commit/5ee1f0876f3ec8b79d6305298185dc821ead2d28) [@bep](https://github.com/bep)
+* Make auto IDs GitHub compatible [a82d2700](https://github.com/gohugoio/hugo/commit/a82d2700fcc772aada15d65b8f76913ca23f7404) [@bep](https://github.com/bep) [#6616](https://github.com/gohugoio/hugo/issues/6616)
+* Support files in content mounts [ff6253bc](https://github.com/gohugoio/hugo/commit/ff6253bc7cf745e9c0127ddc9006da3c2c00c738) [@bep](https://github.com/bep) [#6684](https://github.com/gohugoio/hugo/issues/6684)[#6696](https://github.com/gohugoio/hugo/issues/6696)
+* Update alpine base image in Dockerfile to 3.11 [aa4ccb8a](https://github.com/gohugoio/hugo/commit/aa4ccb8a1e9b8aa17397acf34049a2aa16b0b6cb) [@RemcodM](https://github.com/RemcodM)
+
+## Fixes
+
+### Templates
+
+* Fix eq when > 2 args [2fefc016](https://github.com/gohugoio/hugo/commit/2fefc01606fddb119f368c89fb2dedd452ad6547) [@bep](https://github.com/bep) [#6786](https://github.com/gohugoio/hugo/issues/6786)
+
+### Core
+
+* Fix relative .Page.GetPage from bundle [196a9df5](https://github.com/gohugoio/hugo/commit/196a9df585c4744e3280f37c1c24e469fce14b8c) [@bep](https://github.com/bep) [#6705](https://github.com/gohugoio/hugo/issues/6705)
+* Fix inline shortcode regression [5509954c](https://github.com/gohugoio/hugo/commit/5509954c7e8b0ce8d5ea903b0ab639ea14b69acb) [@bep](https://github.com/bep) [#6677](https://github.com/gohugoio/hugo/issues/6677)
+
+### Other
+
+* Fix 0.62.1 server rebuild slowdown regression [17af79a0](https://github.com/gohugoio/hugo/commit/17af79a03e249a731cf5634ffea23ca00774333d) [@bep](https://github.com/bep) [#6784](https://github.com/gohugoio/hugo/issues/6784)
+* Fix blog not building [d61bee5e](https://github.com/gohugoio/hugo/commit/d61bee5e0916b5d2b388e66ef85c336312a21a06) [@colonelpopcorn](https://github.com/colonelpopcorn) [#6752](https://github.com/gohugoio/hugo/issues/6752)
+
+
+
+
+
diff --git a/docs/content/en/news/0.63.1-relnotes/index.md b/docs/content/en/news/0.63.1-relnotes/index.md
new file mode 100644
index 000000000..e6ae8b906
--- /dev/null
+++ b/docs/content/en/news/0.63.1-relnotes/index.md
@@ -0,0 +1,17 @@
+
+---
+date: 2020-01-23
+title: "Hugo 0.63.1: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.63.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+This is a bug-fix release with a couple of important fixes.
+
+* deps: Make the build flags shared between sites [0df7bd62](https://github.com/gohugoio/hugo/commit/0df7bd62df460a49544845d5332f33b2020b48a1) [@bep](https://github.com/bep) [#6789](https://github.com/gohugoio/hugo/issues/6789)
+* Fix baseof with regular define regression [f441f675](https://github.com/gohugoio/hugo/commit/f441f675126ef1123d9f94429872dd683b40e011) [@bep](https://github.com/bep) [#6790](https://github.com/gohugoio/hugo/issues/6790)
+* Revert to minify [v2.61](https://github.com/gohugoio/hugo/commit/7ed22e9fb6a5b74c52ae6054b843b8c64e83f4b6)
+
diff --git a/docs/content/en/news/0.63.2-relnotes/index.md b/docs/content/en/news/0.63.2-relnotes/index.md
new file mode 100644
index 000000000..8477ef02c
--- /dev/null
+++ b/docs/content/en/news/0.63.2-relnotes/index.md
@@ -0,0 +1,20 @@
+
+---
+date: 2020-01-27
+title: "Hugo 0.63.2: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.63.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* And now finally fix the 404 templates [74b6c4e5](https://github.com/gohugoio/hugo/commit/74b6c4e5ff5ee16f0e6b352a26c1e58b90a25dc6) [@bep](https://github.com/bep) [#6795](https://github.com/gohugoio/hugo/issues/6795)
+* Fix 404 with base template regression [8df5d76e](https://github.com/gohugoio/hugo/commit/8df5d76e708238563185bac84809b34a4d395734) [@bep](https://github.com/bep) [#6795](https://github.com/gohugoio/hugo/issues/6795)
+* Revert to .Type = "page" when empty [#6805](https://github.com/gohugoio/hugo/issues/6805)
+
+
diff --git a/docs/content/en/news/0.64.0-relnotes/hugo-64-poster-featured.png b/docs/content/en/news/0.64.0-relnotes/hugo-64-poster-featured.png
new file mode 100644
index 000000000..71861bad8
--- /dev/null
+++ b/docs/content/en/news/0.64.0-relnotes/hugo-64-poster-featured.png
Binary files differ
diff --git a/docs/content/en/news/0.64.0-relnotes/index.md b/docs/content/en/news/0.64.0-relnotes/index.md
new file mode 100644
index 000000000..e03dc8f54
--- /dev/null
+++ b/docs/content/en/news/0.64.0-relnotes/index.md
@@ -0,0 +1,54 @@
+
+---
+date: 2020-02-04
+title: "Mostly bugfixes …"
+description: "Hugo 0.64.0 is the version you really really want …"
+categories: ["Releases"]
+---
+
+Hugo **0.64.0** is mostly a bugfix-release, but well worth the download. The main reason this release comes so soon after the previous is my (me being [@bep](https://github.com/bep)) ongoing work on getting solid support for third-party libraries in [Hugo Modules](https://gohugo.io/hugo-modules/). In particular, this release makes the Hugo server's live-reload work with [Turbolinks](https://github.com/bep/hugo-alpine-test/blob/27927832630be588eab0be2197cc8c0cb5725540/config.toml#L11) and similar. Also worth mentioning is that `hugo mod get -u` (without any path) now correctly updates every module imported in `config.toml` even with Go 1.13.
+
+This release represents **16 contributions by 2 contributors** to the main Hugo code base.
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **6 contributions by 4 contributors**. A special thanks to [@bep](https://github.com/bep), [@peterkappus](https://github.com/peterkappus), [@kc0bfv](https://github.com/kc0bfv), and [@inwardmovement](https://github.com/inwardmovement) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 41348+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 439+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 289+ [themes](http://themes.gohugo.io/)
+
+## Enhancements
+
+### Output
+
+* Do not render alias paginator pages for non-HTML outputs [2d159e9c](https://github.com/gohugoio/hugo/commit/2d159e9cc7a25832e4b0cad226b149f7c4624708) [@bep](https://github.com/bep) [#6797](https://github.com/gohugoio/hugo/issues/6797)
+
+### Other
+
+* Mention a "no CGO rule" [29973101](https://github.com/gohugoio/hugo/commit/299731012441378bb9c057ceb0a3c277108aaf01) [@bep](https://github.com/bep) [#6842](https://github.com/gohugoio/hugo/issues/6842)
+* Update to Go 1.13.7 and Go 1.12.16 [0792cfa9](https://github.com/gohugoio/hugo/commit/0792cfa9fae94a06a31e393a46fed3b1dd73b66a) [@bep](https://github.com/bep) [#6830](https://github.com/gohugoio/hugo/issues/6830)
+* Add defer to livereload script tag [b3f0674b](https://github.com/gohugoio/hugo/commit/b3f0674b80a32425aeb4412f318c720391bbf773) [@bep](https://github.com/bep)
+* Don't use document.write to inject livereload [ef78a0d1](https://github.com/gohugoio/hugo/commit/ef78a0d18a13098bcea1ff2b2d45d7388b8d41a0) [@bep](https://github.com/bep) [#6507](https://github.com/gohugoio/hugo/issues/6507)
+* Add a render hook whitespace test [58595864](https://github.com/gohugoio/hugo/commit/585958645372e6219239247dbac02e447d2b355b) [@bep](https://github.com/bep) [#6832](https://github.com/gohugoio/hugo/issues/6832)
+* Inject livereload script right after head if possible [8f08cdd0](https://github.com/gohugoio/hugo/commit/8f08cdd0ac6a2decd5aa5c9c12c0b2c264f9a989) [@bep](https://github.com/bep) [#6821](https://github.com/gohugoio/hugo/issues/6821)
+* Update goldmark to v1.1.22 [281abb18](https://github.com/gohugoio/hugo/commit/281abb18ee39fa2b5d4782b64f27cffcbf4e0240) [@bhavin192](https://github.com/bhavin192)
+* Make the build flags shared between sites [0df7bd62](https://github.com/gohugoio/hugo/commit/0df7bd62df460a49544845d5332f33b2020b48a1) [@bep](https://github.com/bep) [#6789](https://github.com/gohugoio/hugo/issues/6789)
+
+## Fixes
+
+### Other
+
+* Fix module mount in sub folder [80dd6ddd](https://github.com/gohugoio/hugo/commit/80dd6ddde27ce36f5432fb780e94d4974b5277c7) [@bep](https://github.com/bep) [#6730](https://github.com/gohugoio/hugo/issues/6730)
+* Fix config environment handling [2bbc865f](https://github.com/gohugoio/hugo/commit/2bbc865f7bb713b2d0d2dbb02b90ae2621ad5367) [@bep](https://github.com/bep) [#6503](https://github.com/gohugoio/hugo/issues/6503)[#6824](https://github.com/gohugoio/hugo/issues/6824)
+* Fix base template handling with preceding comments [f45cb317](https://github.com/gohugoio/hugo/commit/f45cb3172862140883cfa08bd401c17e1ada5b39) [@bep](https://github.com/bep) [#6816](https://github.com/gohugoio/hugo/issues/6816)
+* Fix "hugo mod get -u" with no arguments [49ef6472](https://github.com/gohugoio/hugo/commit/49ef6472039ede7d485242eba511207a8274495a) [@bep](https://github.com/bep) [#6826](https://github.com/gohugoio/hugo/issues/6826)[#6825](https://github.com/gohugoio/hugo/issues/6825)
+* And now finally fix the 404 templates [74b6c4e5](https://github.com/gohugoio/hugo/commit/74b6c4e5ff5ee16f0e6b352a26c1e58b90a25dc6) [@bep](https://github.com/bep) [#6795](https://github.com/gohugoio/hugo/issues/6795)
+* Fix 404 with base template regression [8df5d76e](https://github.com/gohugoio/hugo/commit/8df5d76e708238563185bac84809b34a4d395734) [@bep](https://github.com/bep) [#6795](https://github.com/gohugoio/hugo/issues/6795)
+* Fix baseof with regular define regression [f441f675](https://github.com/gohugoio/hugo/commit/f441f675126ef1123d9f94429872dd683b40e011) [@bep](https://github.com/bep) [#6790](https://github.com/gohugoio/hugo/issues/6790)
+
+
+
+
+
diff --git a/docs/content/en/news/0.64.1-relnotes/index.md b/docs/content/en/news/0.64.1-relnotes/index.md
new file mode 100644
index 000000000..4dbcab670
--- /dev/null
+++ b/docs/content/en/news/0.64.1-relnotes/index.md
@@ -0,0 +1,22 @@
+
+---
+date: 2020-02-09
+title: "Hugo 0.64.1: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.64.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* hugofs: Fix mount with hole regression [b78576fd](https://github.com/gohugoio/hugo/commit/b78576fd38a76bbdaab5ad21228c8e5a559090b1) [@bep](https://github.com/bep) [#6854](https://github.com/gohugoio/hugo/issues/6854)
+* Fix bundle resource ordering regression [18888e09](https://github.com/gohugoio/hugo/commit/18888e09bbb5325bdd63f2cd93116ff490dd37ab) [@bep](https://github.com/bep) [#6851](https://github.com/gohugoio/hugo/issues/6851)
+* CONTRIBUTING: Fix note about CGO [7f0ebd4a](https://github.com/gohugoio/hugo/commit/7f0ebd4a3c9e016afddc2cf5e7dfe6a820aa099a) [@moorereason](https://github.com/moorereason)
+* Update Go version requirement [23ea4318](https://github.com/gohugoio/hugo/commit/23ea43180b84e35d99e88083a83e7ca1916b3b36) [@bep](https://github.com/bep) [#6853](https://github.com/gohugoio/hugo/issues/6853)
+
+
+
diff --git a/docs/content/en/news/0.65.0-relnotes/hugo-65-poster-featured.png b/docs/content/en/news/0.65.0-relnotes/hugo-65-poster-featured.png
new file mode 100644
index 000000000..a311df0cb
--- /dev/null
+++ b/docs/content/en/news/0.65.0-relnotes/hugo-65-poster-featured.png
Binary files differ
diff --git a/docs/content/en/news/0.65.0-relnotes/index.md b/docs/content/en/news/0.65.0-relnotes/index.md
new file mode 100644
index 000000000..1a2edb907
--- /dev/null
+++ b/docs/content/en/news/0.65.0-relnotes/index.md
@@ -0,0 +1,141 @@
+
+---
+date: 2020-02-20
+title: "0.65.0: Hugo Reloaded!"
+description: "Draft, expire, resource bundling, and fine grained publishing control for any page. And it's faster."
+categories: ["Releases"]
+---
+
+**Hugo 0.65** generalizes how a page is packaged and published to be applicable to **any page**. This should solve some of the most common issues we see people ask and talk about on the [issue tracker](https://github.com/gohugoio/hugo/issues) and on the [forum](https://discourse.gohugo.io/).
+
+## Release Highlights
+
+### New in Hugo Core
+
+Any [branch node](https://gohugo.io/content-management/page-bundles/#branch-bundles) can now bundle resources (images, data files etc.), even the taxonomy nodes (e.g. /categories).
+
+List pages (sections and the home page) can now be added to taxonomies.
+
+The front matter fields that control when and if to publish a piece of content (`draft`, `publishDate`, `expiryDate`) now also works for list pages, and is recursive.
+
+We have added a new `_build` front matter keyword to provide fine-grained control over page publishing. The default values:
+
+```yaml
+_build:
+  # Whether to add it to any of the page collections.
+  # Note that the page can still be found with .Site.GetPage.
+  list: true
+  # Whether to render it.
+  render: true
+  # Whether to publish its resources. These will still be published on demand,
+  # but enabling this can be useful if the originals (e.g. images) are
+  # never used.
+  publishResources: true
+```
+
+Note that all front matter keywords can be set in the [cascade](https://gohugo.io/content-management/front-matter#front-matter-cascade) on a branch node, which would be especially useful for `_build`.
+
+We have also upgraded to the latest LibSass (v3.6.3). Nothing remarkable functional new here, but it makes Hugo ready for the upcoming [Dart Backport](https://github.com/sass/libsass/pull/2918).
+
+And finally, we have added a `GetTerms` method on `Page`, making listing the terms defined on this page in the given taxonomy much simpler:
+
+```go-html-template
+<ul>
+ {{ range (.GetTerms "tags") }}
+ <li><a href="{{ .Permalink }}">{{ .LinkTitle }}</a></li>
+ {{ end }}
+</ul>
+```
+
+### New in Hugo Modules
+
+There are several improvements to the tooling used in [Hugo Modules](https://gohugo.io/hugo-modules/). One bug fix, but also some improvements to make it easier to manage:
+
+* You can now recursively update your modules with `hugo mod get -u ./...`
+* `hugo mod clean` will now only clean the cache for the current project and now also takes an optional module path pattern, e.g. `hugo mod clean --pattern "github.com/**"`
+* A new command `hugo mod verify` is added to verify that the module cache matches the hashes in `go.sum`. Run with `hugo mod verify --clean` to delete any modules that fail this check.
+
+See [hugo mod](https://gohugo.io/commands/hugo_mod/#see-also).
+
+### Performance
+
+The new features listed above required a structural simplification, and we do watch our weight when doing this. And the benchmarks show that Hugo should, in general, be slightly faster. This is especially true if you're using taxonomies, and the partial rebuilding on content changes should be considerably faster.
+
+## Numbers
+
+This release represents **34 contributions by 6 contributors** to the main Hugo code base.[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@satotake](https://github.com/satotake), [@QuLogic](https://github.com/QuLogic), and [@JaymoKang](https://github.com/JaymoKang) for their ongoing contributions.
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) and [@onedrawingperday](https://github.com/onedrawingperday) for their relentless work on keeping the themes site in pristine condition and to [@davidsneighbour](https://github.com/davidsneighbour) and [@kaushalmodi](https://github.com/kaushalmodi) for all the great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **7 contributions by 4 contributors**. A special thanks to [@coliff](https://github.com/coliff), [@bep](https://github.com/bep), [@tibnew](https://github.com/tibnew), and [@nerg4l](https://github.com/nerg4l) for their work on the documentation site.
+
+Hugo now has:
+
+* 41724+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 439+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 299+ [themes](http://themes.gohugo.io/)
+
+## Notes
+
+* `.GetPage "members.md"` (the Page method) will now only do relative lookups, which is what most people would expect.
+* There have been a slight change of how disableKinds for regular pages: They will not be rendered on its own, but will be added to the site collections.
+
+## Enhancements
+
+### Templates
+
+* Adjust the RSS taxonomy logic [d73e3738](https://github.com/gohugoio/hugo/commit/d73e37387ca0012bd58bd3f36a0477854b41ab6e) [@bep](https://github.com/bep) [#6909](https://github.com/gohugoio/hugo/issues/6909)
+
+### Output
+
+* Handle disabled RSS even if it's defined in outputs [da54787c](https://github.com/gohugoio/hugo/commit/da54787cfa97789624e467a4451dfeb50f563e41) [@bep](https://github.com/bep)
+
+### Other
+
+* Regenerate CLI docs [a5ebdf7d](https://github.com/gohugoio/hugo/commit/a5ebdf7d17e6c6a9dc686cf8f7cd8e0a1bab5f2d) [@bep](https://github.com/bep)
+* Improve "hugo mod clean" [dce210ab](https://github.com/gohugoio/hugo/commit/dce210ab56fc885818fc5d1a084a1c3ba84e7929) [@bep](https://github.com/bep) [#6907](https://github.com/gohugoio/hugo/issues/6907)
+* Add "hugo mod verify" [0b96aba0](https://github.com/gohugoio/hugo/commit/0b96aba022d51cf9939605c029bb8dba806653a1) [@bep](https://github.com/bep) [#6907](https://github.com/gohugoio/hugo/issues/6907)
+* Add Page.GetTerms [fa520a2d](https://github.com/gohugoio/hugo/commit/fa520a2d983b982394ad10088393fb303e48980a) [@bep](https://github.com/bep) [#6905](https://github.com/gohugoio/hugo/issues/6905)
+* Add a list terms benchmark [7489a864](https://github.com/gohugoio/hugo/commit/7489a864591b6df03f435f40696c6ceeb4776ec9) [@bep](https://github.com/bep) [#6905](https://github.com/gohugoio/hugo/issues/6905)
+* Use the tree for taxonomy.Pages() [b2dcd53e](https://github.com/gohugoio/hugo/commit/b2dcd53e3c0240c4afd21d1818fd180c2d1b9d34) [@bep](https://github.com/bep)
+* Add some cagegories to the site collections benchmarks [36983e61](https://github.com/gohugoio/hugo/commit/36983e6189a717f1d4d1da6652621d7f8fe186ad) [@bep](https://github.com/bep)
+* Do not try to get local themes in "hugo mod get" [20f2211f](https://github.com/gohugoio/hugo/commit/20f2211fce55e1811629245f9e5e4a2ac754d788) [@bep](https://github.com/bep) [#6893](https://github.com/gohugoio/hugo/issues/6893)
+* Update goldmark-highlighting [a21a9373](https://github.com/gohugoio/hugo/commit/a21a9373e06091ab70d8a5f4da8ff43f7c609b4b) [@satotake](https://github.com/satotake)
+* Support "hugo mod get -u ./..." [775c7c24](https://github.com/gohugoio/hugo/commit/775c7c2474d8797c96c9ac529a3cd93c0c2d3514) [@bep](https://github.com/bep) [#6828](https://github.com/gohugoio/hugo/issues/6828)
+* Introduce a tree map for all content [eada236f](https://github.com/gohugoio/hugo/commit/eada236f87d9669885da1ff647672bb3dc6b4954) [@bep](https://github.com/bep) [#6312](https://github.com/gohugoio/hugo/issues/6312)[#6087](https://github.com/gohugoio/hugo/issues/6087)[#6738](https://github.com/gohugoio/hugo/issues/6738)[#6412](https://github.com/gohugoio/hugo/issues/6412)[#6743](https://github.com/gohugoio/hugo/issues/6743)[#6875](https://github.com/gohugoio/hugo/issues/6875)[#6034](https://github.com/gohugoio/hugo/issues/6034)[#6902](https://github.com/gohugoio/hugo/issues/6902)[#6173](https://github.com/gohugoio/hugo/issues/6173)[#6590](https://github.com/gohugoio/hugo/issues/6590)
+* Another benchmark rename [e5329f13](https://github.com/gohugoio/hugo/commit/e5329f13c02b87f0c30f8837759c810cd90ff8da) [@bep](https://github.com/bep)
+* Rename the Edit benchmarks [5b145ddc](https://github.com/gohugoio/hugo/commit/5b145ddc4c951a827e1ac00444dc4719e53e0885) [@bep](https://github.com/bep)
+* Refactor a benchmark to make it runnable as test [54bdcaac](https://github.com/gohugoio/hugo/commit/54bdcaacaedec178554e696f34647801bbe61362) [@bep](https://github.com/bep)
+* Add benchmark for content edits [1622510a](https://github.com/gohugoio/hugo/commit/1622510a5c651b59a79f64e9dc3cacd24832ec0b) [@bep](https://github.com/bep)
+* Add "go mod verify" to build scripts [56d0b658](https://github.com/gohugoio/hugo/commit/56d0b658879bbf476810d013176d6568553aa71e) [@bep](https://github.com/bep)
+* Add git to Dockerfile [75c3787f](https://github.com/gohugoio/hugo/commit/75c3787fc254d933fa11e5c39d978bfa1a21a371) [@JaymoKang](https://github.com/JaymoKang)
+* Update go.sum [9babb1f0](https://github.com/gohugoio/hugo/commit/9babb1f0c4fca048b0339f6ce3618f88d34e0457) [@bep](https://github.com/bep)
+* Rename doWithCommandeer to cfgInit/cfgSetAndInit [8a5124d6](https://github.com/gohugoio/hugo/commit/8a5124d6b38156cb6f765ac7492513ac7c0d90b2) [@MarkRosemaker](https://github.com/MarkRosemaker)
+* Update golibsass [898a0a96](https://github.com/gohugoio/hugo/commit/898a0a96afd472fad8fe70be71f6cb00a4267c4a) [@bep](https://github.com/bep) [#6885](https://github.com/gohugoio/hugo/issues/6885)
+* Shuffle test files before insertion [3b721110](https://github.com/gohugoio/hugo/commit/3b721110d560c8831c282e6e7a5c510fe7a5129a) [@bep](https://github.com/bep)
+* Update to LibSass v3.6.3 [40ba7e6d](https://github.com/gohugoio/hugo/commit/40ba7e6d63c1a0734f257a642e46eb1572116a32) [@bep](https://github.com/bep) [#6862](https://github.com/gohugoio/hugo/issues/6862)
+* Update Go version requirement [23ea4318](https://github.com/gohugoio/hugo/commit/23ea43180b84e35d99e88083a83e7ca1916b3b36) [@bep](https://github.com/bep) [#6853](https://github.com/gohugoio/hugo/issues/6853)
+
+## Fixes
+
+### Templates
+
+* Fix RSS template for the terms listing [aa3e1830](https://github.com/gohugoio/hugo/commit/aa3e1830568cabaa8bf3277feeba6cb48746e40c) [@bep](https://github.com/bep) [#6909](https://github.com/gohugoio/hugo/issues/6909)
+
+### Other
+
+* Fix lazy publishing with publishResources=false [9bdedb25](https://github.com/gohugoio/hugo/commit/9bdedb251c7cd8f8af800c7d9914cf84292c5c50) [@bep](https://github.com/bep) [#6914](https://github.com/gohugoio/hugo/issues/6914)
+* Fix goMinorVersion on non-final Go releases [c7975b48](https://github.com/gohugoio/hugo/commit/c7975b48b6532823868a6aa8c93eb76caa46c570) [@QuLogic](https://github.com/QuLogic)
+* Fix taxonomy [1b7acfe7](https://github.com/gohugoio/hugo/commit/1b7acfe7634a5d7bbc597ef4dddf4babce5666c5) [@bep](https://github.com/bep)
+* Fix RenderString for pages without content [19e12caf](https://github.com/gohugoio/hugo/commit/19e12caf8c90516e3b803ae8a40b907bd89dc96c) [@bep](https://github.com/bep) [#6882](https://github.com/gohugoio/hugo/issues/6882)
+* Fix chroma highlight [3c568ad0](https://github.com/gohugoio/hugo/commit/3c568ad0139c79e5c0596ca40637512d71401afc) [@satotake](https://github.com/satotake) [#6877](https://github.com/gohugoio/hugo/issues/6877)[#6856](https://github.com/gohugoio/hugo/issues/6856)
+* Fix mount with hole regression [b78576fd](https://github.com/gohugoio/hugo/commit/b78576fd38a76bbdaab5ad21228c8e5a559090b1) [@bep](https://github.com/bep) [#6854](https://github.com/gohugoio/hugo/issues/6854)
+* Fix bundle resource ordering regression [18888e09](https://github.com/gohugoio/hugo/commit/18888e09bbb5325bdd63f2cd93116ff490dd37ab) [@bep](https://github.com/bep) [#6851](https://github.com/gohugoio/hugo/issues/6851)
+* Fix note about CGO [7f0ebd4a](https://github.com/gohugoio/hugo/commit/7f0ebd4a3c9e016afddc2cf5e7dfe6a820aa099a) [@moorereason](https://github.com/moorereason)
+
+
+
+
+
diff --git a/docs/content/en/news/0.65.0-relnotes/pg-admin-tos.png b/docs/content/en/news/0.65.0-relnotes/pg-admin-tos.png
new file mode 100644
index 000000000..fc2f4e34d
--- /dev/null
+++ b/docs/content/en/news/0.65.0-relnotes/pg-admin-tos.png
Binary files differ
diff --git a/docs/content/en/news/0.65.1-relnotes/index.md b/docs/content/en/news/0.65.1-relnotes/index.md
new file mode 100644
index 000000000..07ee66569
--- /dev/null
+++ b/docs/content/en/news/0.65.1-relnotes/index.md
@@ -0,0 +1,20 @@
+
+---
+date: 2020-02-20
+title: "Hugo 0.65.1: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.65.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* hugolib: Fix 2 Paginator.Pages taxonomy regressions [7ef5a4c8](https://github.com/gohugoio/hugo/commit/7ef5a4c83e4560bced3eee0ccf0e0db176146f44) [@bep](https://github.com/bep) [#6921](https://github.com/gohugoio/hugo/issues/6921)[#6918](https://github.com/gohugoio/hugo/issues/6918)
+* hugolib: Fix deletion of orphaned sections [a70bbd06](https://github.com/gohugoio/hugo/commit/a70bbd0696df3b0a6889650e48a07f8223151da4) [@bep](https://github.com/bep) [#6920](https://github.com/gohugoio/hugo/issues/6920)
+
+
+
diff --git a/docs/content/en/news/0.65.2-relnotes/index.md b/docs/content/en/news/0.65.2-relnotes/index.md
new file mode 100644
index 000000000..ee9280976
--- /dev/null
+++ b/docs/content/en/news/0.65.2-relnotes/index.md
@@ -0,0 +1,21 @@
+
+---
+date: 2020-02-21
+title: "Hugo 0.65.2: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.65.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* Apply missing go fmt [76b2afe6](https://github.com/gohugoio/hugo/commit/76b2afe642c37aedc7269b41d6fca5b78f467ce4) [@bep](https://github.com/bep)
+* Fix panic on no output formats [f4605303](https://github.com/gohugoio/hugo/commit/f46053034759c4f9790a79e0a146dbc1b426b1ff) [@bep](https://github.com/bep) [#6924](https://github.com/gohugoio/hugo/issues/6924)
+* Fix panic in 404.Parent [4c2a0de4](https://github.com/gohugoio/hugo/commit/4c2a0de412a850745ad32e580fcd65575192ca53) [@bep](https://github.com/bep) [#6924](https://github.com/gohugoio/hugo/issues/6924)
+
+
+
diff --git a/docs/content/en/news/0.65.3-relnotes/index.md b/docs/content/en/news/0.65.3-relnotes/index.md
new file mode 100644
index 000000000..1d47362bb
--- /dev/null
+++ b/docs/content/en/news/0.65.3-relnotes/index.md
@@ -0,0 +1,21 @@
+
+---
+date: 2020-02-23
+title: "Hugo 0.65.3: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.65.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* Fix panic when home page is drafted [0bd6356c](https://github.com/gohugoio/hugo/commit/0bd6356c6d2a2bac06d0c3705bf13a90cb7a2688) [@bep](https://github.com/bep) [#6927](https://github.com/gohugoio/hugo/issues/6927)
+* Fix goldmark toc rendering [ca68abf0](https://github.com/gohugoio/hugo/commit/ca68abf0bc2fa003c2052143218f7b2ab195a46e) [@satotake](https://github.com/satotake) [#6736](https://github.com/gohugoio/hugo/issues/6736)[#6809](https://github.com/gohugoio/hugo/issues/6809)
+* Fix crashes for 404 in IsAncestor etc. [a524124b](https://github.com/gohugoio/hugo/commit/a524124beb0e7ca226c207ea48a90cea2cbef76e) [@bep](https://github.com/bep) [#6931](https://github.com/gohugoio/hugo/issues/6931)
+
+
+
diff --git a/docs/content/en/news/0.66.0-relnotes/hugo-66-poster-featured.png b/docs/content/en/news/0.66.0-relnotes/hugo-66-poster-featured.png
new file mode 100644
index 000000000..fcdc707ce
--- /dev/null
+++ b/docs/content/en/news/0.66.0-relnotes/hugo-66-poster-featured.png
Binary files differ
diff --git a/docs/content/en/news/0.66.0-relnotes/index.md b/docs/content/en/news/0.66.0-relnotes/index.md
new file mode 100644
index 000000000..850a8fa71
--- /dev/null
+++ b/docs/content/en/news/0.66.0-relnotes/index.md
@@ -0,0 +1,81 @@
+
+---
+date: 2020-03-03
+title: "Hugo 0.66.0: PostCSS Edition"
+description: "Native inline, recursive import support in PostCSS/Tailwind, \"dependency-less\" builds, and more …"
+categories: ["Releases"]
+---
+
+This release adds [inline `@import`](/hugo-pipes/postcss/#options) support to `resources.PostCSS`, with imports relative to Hugo's virtual, composable file system. Another useful addition is the new `build` [configuration section](/getting-started/configuration/#configure-build). As an example:
+
+{{< code-toggle file="config" >}}
+[build]
+ useResourceCacheWhen = "always"
+{{< /code-toggle >}}
+
+The above will tell Hugo to _always_ use the cached build resources inside `resources/_gen` for the build steps requiring a non-standard dependency (PostCSS and SCSS/SASS). Valid values are `never`, `always` and `fallback` (default).
+
+
+This release represents **27 contributions by 8 contributors** to the main Hugo code base.[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@anthonyfok](https://github.com/anthonyfok), [@carlmjohnson](https://github.com/carlmjohnson), and [@sams96](https://github.com/sams96) for their ongoing contributions.
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) and [@onedrawingperday](https://github.com/onedrawingperday) for their relentless work on keeping the themes site in pristine condition and to [@davidsneighbour](https://github.com/davidsneighbour) and [@kaushalmodi](https://github.com/kaushalmodi) for all the great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **8 contributions by 5 contributors**. A special thanks to [@bep](https://github.com/bep), [@nantipov](https://github.com/nantipov), [@regisphilibert](https://github.com/regisphilibert), and [@inwardmovement](https://github.com/inwardmovement) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 41984+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 439+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 299+ [themes](http://themes.gohugo.io/)
+
+## Enhancements
+
+### Templates
+
+* Change error message on missing resource [d7798906](https://github.com/gohugoio/hugo/commit/d7798906d8e152a5d33f76ed0362628da8dd2c35) [@sams96](https://github.com/sams96) [#6942](https://github.com/gohugoio/hugo/issues/6942)
+* Add math.Sqrt [d184e505](https://github.com/gohugoio/hugo/commit/d184e5059c72c15df055192b01da0fd8c5b0fc5c) [@StarsoftAnalysis](https://github.com/StarsoftAnalysis) [#6941](https://github.com/gohugoio/hugo/issues/6941)
+
+### Other
+
+* Skip some tests on CircleCI [6a34f88d](https://github.com/gohugoio/hugo/commit/6a34f88dcc1ac229247decc008471d7449d6d316) [@bep](https://github.com/bep)
+* {{ in }} should work with html.Template type [ae383f04](https://github.com/gohugoio/hugo/commit/ae383f04c806687cdae184d6138bcf51edbffcb2) [@carlmjohnson](https://github.com/carlmjohnson) [#7002](https://github.com/gohugoio/hugo/issues/7002)
+* Regen CLI docs [ee31e61f](https://github.com/gohugoio/hugo/commit/ee31e61fb06bb6e26c9d66d78d8763aabd19e11d) [@bep](https://github.com/bep)
+* Add --all flag to hugo mod clean [760a87a4](https://github.com/gohugoio/hugo/commit/760a87a45a0a3e6a581851e5cf4fe440e9a8c655) [@bep](https://github.com/bep)
+* Add build.UseResourceCacheWhen [3d3fa5c3](https://github.com/gohugoio/hugo/commit/3d3fa5c3fe5ee0c9df59d682ee0acaba71a06ae1) [@bep](https://github.com/bep) [#6993](https://github.com/gohugoio/hugo/issues/6993)
+* Update dependency list in README.md [ee3d0213](https://github.com/gohugoio/hugo/commit/ee3d02134d9b46b10e5a0403c9986ee1833ae6c1) [@anthonyfok](https://github.com/anthonyfok)
+* Add full filename to image when processing fails [305ce1c9](https://github.com/gohugoio/hugo/commit/305ce1c9ec746d3b8f6c9306b7014bfd621478a5) [@bep](https://github.com/bep) [#7000](https://github.com/gohugoio/hugo/issues/7000)
+* Update dependency list in README [449deb7f](https://github.com/gohugoio/hugo/commit/449deb7f9ce089236f8328dd4fa585bea6e9bfde) [@anthonyfok](https://github.com/anthonyfok)
+* Add basic @import support to resources.PostCSS [b66d38c4](https://github.com/gohugoio/hugo/commit/b66d38c41939252649365822d9edb10cf5990617) [@bep](https://github.com/bep) [#6957](https://github.com/gohugoio/hugo/issues/6957)[#6961](https://github.com/gohugoio/hugo/issues/6961)
+* Implement include/exclude filters for deploy [05a74eae](https://github.com/gohugoio/hugo/commit/05a74eaec0d944a4b29445c878a431cd6ae12277) [@vangent](https://github.com/vangent) [#6922](https://github.com/gohugoio/hugo/issues/6922)
+* Update to Go 1.14 and 1.13.8 [33ae6210](https://github.com/gohugoio/hugo/commit/33ae62108325f703f1eaeabef1e8a80950229415) [@bep](https://github.com/bep) [#6958](https://github.com/gohugoio/hugo/issues/6958)
+* Add hugo.IsProduction function [1352bc88](https://github.com/gohugoio/hugo/commit/1352bc880df4cd25eff65843973fcc0dd21b6304) [@hcwong](https://github.com/hcwong) [#6873](https://github.com/gohugoio/hugo/issues/6873)
+* Apply missing go fmt [76b2afe6](https://github.com/gohugoio/hugo/commit/76b2afe642c37aedc7269b41d6fca5b78f467ce4) [@bep](https://github.com/bep)
+
+## Fixes
+
+### Output
+
+* Fix panic on no output formats [f4605303](https://github.com/gohugoio/hugo/commit/f46053034759c4f9790a79e0a146dbc1b426b1ff) [@bep](https://github.com/bep) [#6924](https://github.com/gohugoio/hugo/issues/6924)
+
+### Core
+
+* Fix error handling in page collector [3e9db2ad](https://github.com/gohugoio/hugo/commit/3e9db2ad951dbb1000cd0f8f25e4a95445046679) [@bep](https://github.com/bep) [#6988](https://github.com/gohugoio/hugo/issues/6988)
+* Fix 2 Paginator.Pages taxonomy regressions [7ef5a4c8](https://github.com/gohugoio/hugo/commit/7ef5a4c83e4560bced3eee0ccf0e0db176146f44) [@bep](https://github.com/bep) [#6921](https://github.com/gohugoio/hugo/issues/6921)[#6918](https://github.com/gohugoio/hugo/issues/6918)
+* Fix deletion of orphaned sections [a70bbd06](https://github.com/gohugoio/hugo/commit/a70bbd0696df3b0a6889650e48a07f8223151da4) [@bep](https://github.com/bep) [#6920](https://github.com/gohugoio/hugo/issues/6920)
+
+### Other
+
+* Fix ref/relref short lookup for pages in sub-folder [8947c3fa](https://github.com/gohugoio/hugo/commit/8947c3fa0beec021e14b3f8040857335e1ecd473) [@bep](https://github.com/bep) [#6952](https://github.com/gohugoio/hugo/issues/6952)
+* Fix ref/relRef regression for relative refs from bundles [1746e8a9](https://github.com/gohugoio/hugo/commit/1746e8a9b2be46dcd6cecbb4bc90983a9c69b333) [@bep](https://github.com/bep) [#6952](https://github.com/gohugoio/hugo/issues/6952)
+* Fix potential infinite recursion in server change detection [6f48146e](https://github.com/gohugoio/hugo/commit/6f48146e75e9877c4271ec239b763e6f3bc3babb) [@bep](https://github.com/bep) [#6986](https://github.com/gohugoio/hugo/issues/6986)
+* Fix rebuild logic when editing template using a base template [b0d85032](https://github.com/gohugoio/hugo/commit/b0d850321e58a052ead25f7014b7851f63497601) [@bep](https://github.com/bep) [#6968](https://github.com/gohugoio/hugo/issues/6968)
+* Fix panic when home page is drafted [0bd6356c](https://github.com/gohugoio/hugo/commit/0bd6356c6d2a2bac06d0c3705bf13a90cb7a2688) [@bep](https://github.com/bep) [#6927](https://github.com/gohugoio/hugo/issues/6927)
+* Fix goldmark toc rendering [ca68abf0](https://github.com/gohugoio/hugo/commit/ca68abf0bc2fa003c2052143218f7b2ab195a46e) [@satotake](https://github.com/satotake) [#6736](https://github.com/gohugoio/hugo/issues/6736)[#6809](https://github.com/gohugoio/hugo/issues/6809)
+* Fix crashes for 404 in IsAncestor etc. [a524124b](https://github.com/gohugoio/hugo/commit/a524124beb0e7ca226c207ea48a90cea2cbef76e) [@bep](https://github.com/bep) [#6931](https://github.com/gohugoio/hugo/issues/6931)
+* Fix panic in 404.Parent [4c2a0de4](https://github.com/gohugoio/hugo/commit/4c2a0de412a850745ad32e580fcd65575192ca53) [@bep](https://github.com/bep) [#6924](https://github.com/gohugoio/hugo/issues/6924)
+
+
+
+
+
diff --git a/docs/content/en/news/0.67.0-relnotes/hugo-67-poster-featured.png b/docs/content/en/news/0.67.0-relnotes/hugo-67-poster-featured.png
new file mode 100644
index 000000000..059d8c07a
--- /dev/null
+++ b/docs/content/en/news/0.67.0-relnotes/hugo-67-poster-featured.png
Binary files differ
diff --git a/docs/content/en/news/0.67.0-relnotes/index.md b/docs/content/en/news/0.67.0-relnotes/index.md
new file mode 100644
index 000000000..881fe0367
--- /dev/null
+++ b/docs/content/en/news/0.67.0-relnotes/index.md
@@ -0,0 +1,64 @@
+
+---
+date: 2020-03-09
+title: "Hugo 0.67.0: Custom HTTP headers"
+description: "This version brings Custom HTTP headers to the development server and exclude/include filters in Hugo Deploy."
+categories: ["Releases"]
+---
+
+The two main items in Hugo 0.67.0 is custom HTTP header support in `hugo server` and include/exclude filters for [Hugo Deploy](https://gohugo.io/hosting-and-deployment/hugo-deploy/#readout).
+
+Being able to [configure HTTP headers](https://gohugo.io/getting-started/configuration/#configure-server) in your development server means that you can now verify how your site behaves with the intended Content Security Policy settings etc., e.g.:
+
+{{< code-toggle file="config" >}}
+[server]
+[[server.headers]]
+for = "/**.html"
+
+[server.headers.values]
+X-Frame-Options = "DENY"
+X-XSS-Protection = "1; mode=block"
+X-Content-Type-Options = "nosniff"
+Referrer-Policy = "strict-origin-when-cross-origin"
+Content-Security-Policy = "script-src localhost:1313"
+{{< /code-toggle >}}
+
+**Note:** This release also changes how raw HTML files inside /content is processed to be in line with the documentation. See [#7030](https://github.com/gohugoio/hugo/issues/7030).
+
+This release represents **7 contributions by 4 contributors** to the main Hugo code base.[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@satotake](https://github.com/satotake), [@sams96](https://github.com/sams96), and [@davidejones](https://github.com/davidejones) for their ongoing contributions.
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) and [@onedrawingperday](https://github.com/onedrawingperday) for their relentless work on keeping the themes site in pristine condition and to [@davidsneighbour](https://github.com/davidsneighbour) and [@kaushalmodi](https://github.com/kaushalmodi) for all the great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **5 contributions by 5 contributors**. A special thanks to [@bep](https://github.com/bep), [@psliwka](https://github.com/psliwka), [@digitalcraftsman](https://github.com/digitalcraftsman), and [@jasikpark](https://github.com/jasikpark) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 42176+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 439+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 301+ [themes](http://themes.gohugo.io/)
+
+## Enhancements
+
+### Other
+
+* Doument the server config [63393230](https://github.com/gohugoio/hugo/commit/63393230c9d3ba19ad182064787e3bfd7ecf82d8) [@bep](https://github.com/bep)
+* Support unComparable args of uniq/complement/in [8279d2e2](https://github.com/gohugoio/hugo/commit/8279d2e2271ee64725133d36a12d1d7e2158bffd) [@satotake](https://github.com/satotake) [#6105](https://github.com/gohugoio/hugo/issues/6105)
+* Add HTTP header support for the dev server [10831444](https://github.com/gohugoio/hugo/commit/108314444b510bfc330ccac745dce7beccd52c91) [@bep](https://github.com/bep) [#7031](https://github.com/gohugoio/hugo/issues/7031)
+* Add include and exclude support for remote [51e178a6](https://github.com/gohugoio/hugo/commit/51e178a6a28a3f305d89ebb489675743f80862ee) [@davidejones](https://github.com/davidejones)
+
+## Fixes
+
+### Templates
+
+* Fix error with unicode in file paths [c4fa2f07](https://github.com/gohugoio/hugo/commit/c4fa2f07996c7f1f4e257089a3c3c5b4c1339722) [@sams96](https://github.com/sams96) [#6996](https://github.com/gohugoio/hugo/issues/6996)
+
+### Other
+
+* Fix ambigous error on site.GetPage [6cceef65](https://github.com/gohugoio/hugo/commit/6cceef65c2f4b7c262bf67a249867658112b6de4) [@bep](https://github.com/bep) [#7016](https://github.com/gohugoio/hugo/issues/7016)
+* Fix handling of HTML files without front matter [ffcb4aeb](https://github.com/gohugoio/hugo/commit/ffcb4aeb8e392a80da7cad0f1e03a4102efb24ec) [@bep](https://github.com/bep) [#7030](https://github.com/gohugoio/hugo/issues/7030)[#7028](https://github.com/gohugoio/hugo/issues/7028)[#6789](https://github.com/gohugoio/hugo/issues/6789)
+
+
+
+
+
diff --git a/docs/content/en/news/0.67.1-relnotes/index.md b/docs/content/en/news/0.67.1-relnotes/index.md
new file mode 100644
index 000000000..7962ccca3
--- /dev/null
+++ b/docs/content/en/news/0.67.1-relnotes/index.md
@@ -0,0 +1,24 @@
+
+---
+date: 2020-03-15
+title: "Hugo 0.67.1: A couple of Bug Fixes"
+description: "This version comes with some useful bug fixes."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+Some minor fixes:
+
+* metrics: Fix --templateMetricsHints [5eadc4c0](https://github.com/gohugoio/hugo/commit/5eadc4c0a8e5c51e72670591c4b7877e79c15e3c) [@bep](https://github.com/bep) [#7048](https://github.com/gohugoio/hugo/issues/7048)
+* resources: Add data context to the key in ExecuteAsTemplate [18cb21ff](https://github.com/gohugoio/hugo/commit/18cb21ff2e4a60e7094908e4d6113a9d5a086316) [@bep](https://github.com/bep) [#7046](https://github.com/gohugoio/hugo/issues/7046)
+* Improve Tailwind/PostCSS error messages [df298558](https://github.com/gohugoio/hugo/commit/df298558a5a5b747288d9656402af85e0ac75a43) [@bep](https://github.com/bep) [#7041](https://github.com/gohugoio/hugo/issues/7041)[#7042](https://github.com/gohugoio/hugo/issues/7042)
+* deps: Update Blackfriday [b1106f87](https://github.com/gohugoio/hugo/commit/b1106f8715cac3544b8ea662b969336fe56fa047) [@bep](https://github.com/bep) [#7039](https://github.com/gohugoio/hugo/issues/7039)
+* resources: Try to fix a Go 1.15 go vet error [c0177fe2](https://github.com/gohugoio/hugo/commit/c0177fe2b28eb09d1534e62370849c3f1d70b40f) [@bep](https://github.com/bep)
+* Add languageDirection to language configuration [5914f91b](https://github.com/gohugoio/hugo/commit/5914f91b6c980e42693661d5fd5640e237691df6) [@le0tan](https://github.com/le0tan) [#6550](https://github.com/gohugoio/hugo/issues/6550)
+
+
+
diff --git a/docs/content/en/news/0.68.0-relnotes/hugo-68-featured.png b/docs/content/en/news/0.68.0-relnotes/hugo-68-featured.png
new file mode 100644
index 000000000..0696d990d
--- /dev/null
+++ b/docs/content/en/news/0.68.0-relnotes/hugo-68-featured.png
Binary files differ
diff --git a/docs/content/en/news/0.68.0-relnotes/index.md b/docs/content/en/news/0.68.0-relnotes/index.md
new file mode 100644
index 000000000..507249a21
--- /dev/null
+++ b/docs/content/en/news/0.68.0-relnotes/index.md
@@ -0,0 +1,57 @@
+
+---
+date: 2020-03-21
+title: "Minify config and more!"
+description: "Hugo 0.68.0 brings minify configuration and fully navigable headless sections."
+categories: ["Releases"]
+---
+
+
+This release (finally) brings minify configuration, a big thanks to [@satotake](https://github.com/satotake) for that contribution. See [Configure Minify](https://gohugo.io/getting-started/configuration/#configure-minify) for details.
+
+We have also extended the [Page Build Options](https://gohugo.io/content-management/build-options/) to allow fully navigable headless sections.
+
+This release represents **17 contributions by 6 contributors** to the main Hugo code base.[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@evankanderson](https://github.com/evankanderson), [@QuLogic](https://github.com/QuLogic), and [@le0tan](https://github.com/le0tan) for their ongoing contributions.
+
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) and [@onedrawingperday](https://github.com/onedrawingperday) for their relentless work on keeping the themes site in pristine condition and to [@davidsneighbour](https://github.com/davidsneighbour) and [@kaushalmodi](https://github.com/kaushalmodi) for all the great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **3 contributions by 3 contributors**.
+
+Hugo now has:
+
+* 42462+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 439+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 300+ [themes](http://themes.gohugo.io/)
+
+## Enhancements
+
+### Other
+
+* Some minify configuration adjustments [7204b354](https://github.com/gohugoio/hugo/commit/7204b354a9f46778f068a4712447d6d4fefbefd8) [@bep](https://github.com/bep)
+* Add minify config [574c2959](https://github.com/gohugoio/hugo/commit/574c2959b8d3338764fa1db102a5e0fd6ed322d9) [@satotake](https://github.com/satotake) [#6750](https://github.com/gohugoio/hugo/issues/6750)[#6892](https://github.com/gohugoio/hugo/issues/6892)
+* Allow headless bundles to list pages via $page.Pages and $page.RegularPages [99958f90](https://github.com/gohugoio/hugo/commit/99958f90fedec11d749a1397300860aa8e8459c2) [@bep](https://github.com/bep) [#7075](https://github.com/gohugoio/hugo/issues/7075)
+* Update to Go 1.14.1 and 1.13.9 [1d91d8e1](https://github.com/gohugoio/hugo/commit/1d91d8e14b13bd135dc4d4a901fc936c9649b219) [@bep](https://github.com/bep) [#7078](https://github.com/gohugoio/hugo/issues/7078)
+* Pass directory name to filters in LstatIfPossible in the same way as Readdir [cc2a5d52](https://github.com/gohugoio/hugo/commit/cc2a5d52a4ad188d93aeb2d51d5c19c7661e098d) [@evankanderson](https://github.com/evankanderson)
+* Update to goldmark 1.1.25. [52c159c4](https://github.com/gohugoio/hugo/commit/52c159c452ab7f48369b5cc9ecc57ecc8dc91654) [@QuLogic](https://github.com/QuLogic)
+* Add workaround for regular CSS imports in SCSS [1a8af7d4](https://github.com/gohugoio/hugo/commit/1a8af7d4f087256710ae0bdf504ed53c0c24a211) [@bep](https://github.com/bep) [#7059](https://github.com/gohugoio/hugo/issues/7059)
+* Add .RegularPagesRecursive [03b93bb9](https://github.com/gohugoio/hugo/commit/03b93bb9884ea479c855c2699e8c7b039dce6224) [@bep](https://github.com/bep) [#6411](https://github.com/gohugoio/hugo/issues/6411)
+* Add data context to the key in ExecuteAsTemplate [18cb21ff](https://github.com/gohugoio/hugo/commit/18cb21ff2e4a60e7094908e4d6113a9d5a086316) [@bep](https://github.com/bep) [#7046](https://github.com/gohugoio/hugo/issues/7046)
+* Improve Tailwind/PostCSS error messages [df298558](https://github.com/gohugoio/hugo/commit/df298558a5a5b747288d9656402af85e0ac75a43) [@bep](https://github.com/bep) [#7041](https://github.com/gohugoio/hugo/issues/7041)[#7042](https://github.com/gohugoio/hugo/issues/7042)
+* Update Blackfriday [b1106f87](https://github.com/gohugoio/hugo/commit/b1106f8715cac3544b8ea662b969336fe56fa047) [@bep](https://github.com/bep) [#7039](https://github.com/gohugoio/hugo/issues/7039)
+* Add languageDirection to language configuration [5914f91b](https://github.com/gohugoio/hugo/commit/5914f91b6c980e42693661d5fd5640e237691df6) [@le0tan](https://github.com/le0tan) [#6550](https://github.com/gohugoio/hugo/issues/6550)
+
+## Fixes
+
+### Other
+
+* Fix Go build version [2ebb9f54](https://github.com/gohugoio/hugo/commit/2ebb9f5484162062c74698237bcdaa31cb8666b9) [@bep](https://github.com/bep)
+* Fix GetTerms nil pointer [95f49211](https://github.com/gohugoio/hugo/commit/95f492114e33fc6e4d9dcfd2b7c1eca5c50d755f) [@carlmjohnson](https://github.com/carlmjohnson) [#7061](https://github.com/gohugoio/hugo/issues/7061)
+* Fix scss vs css import regexp [c7b6d74e](https://github.com/gohugoio/hugo/commit/c7b6d74e898c78da9f5e272e528ff9654206576e) [@bep](https://github.com/bep) [#7063](https://github.com/gohugoio/hugo/issues/7063)
+* Fix --templateMetricsHints [5eadc4c0](https://github.com/gohugoio/hugo/commit/5eadc4c0a8e5c51e72670591c4b7877e79c15e3c) [@bep](https://github.com/bep) [#7048](https://github.com/gohugoio/hugo/issues/7048)
+* Try to fix a Go 1.15 go vet error [c0177fe2](https://github.com/gohugoio/hugo/commit/c0177fe2b28eb09d1534e62370849c3f1d70b40f) [@bep](https://github.com/bep)
+
+
+
+
+
diff --git a/docs/content/en/news/0.68.1-relnotes/index.md b/docs/content/en/news/0.68.1-relnotes/index.md
new file mode 100644
index 000000000..ab9946b8e
--- /dev/null
+++ b/docs/content/en/news/0.68.1-relnotes/index.md
@@ -0,0 +1,19 @@
+
+---
+date: 2020-03-22
+title: "Hugo 0.68.1: 1 bug fix"
+description: "This release reverts a change in resources.ExecuteAsTemplate that broke some theme demos."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with one important fix.
+
+* Revert "resources: Add data context to the key in ExecuteAsTemplate" [c9dc316a](https://github.com/gohugoio/hugo/commit/c9dc316ad160e78c9dff4e75313db4cac8ea6414) [@bep](https://github.com/bep) [#7064](https://github.com/gohugoio/hugo/issues/7064)
+
+
+
diff --git a/docs/content/en/news/0.68.2-relnotes/index.md b/docs/content/en/news/0.68.2-relnotes/index.md
new file mode 100644
index 000000000..c61d1012a
--- /dev/null
+++ b/docs/content/en/news/0.68.2-relnotes/index.md
@@ -0,0 +1,19 @@
+
+---
+date: 2020-03-24T12:00:00-05:00
+title: "Hugo 0.68.2: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.68.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with one important fix.
+
+* Fix cache reset for a page's collections on server live reload [cfa73050](https://github.com/gohugoio/hugo/commit/cfa73050a49b2646fe3557cefa0ed31989b0eeeb) [@bep](https://github.com/bep) [#7085](https://github.com/gohugoio/hugo/issues/7085)
+
+
+
diff --git a/docs/content/en/news/0.68.3-relnotes/index.md b/docs/content/en/news/0.68.3-relnotes/index.md
new file mode 100644
index 000000000..3855aadf3
--- /dev/null
+++ b/docs/content/en/news/0.68.3-relnotes/index.md
@@ -0,0 +1,19 @@
+
+---
+date: 2020-03-24T13:00:00-05:00
+title: "Hugo 0.68.3: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.68.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with one important fix.
+
+* Fix _build.list.local logic [523d5194](https://github.com/gohugoio/hugo/commit/523d51948fc20e2afb4721b43203c5ab696ae220) [@bep](https://github.com/bep) [#7089](https://github.com/gohugoio/hugo/issues/7089)
+
+
+
diff --git a/docs/content/en/news/0.69.0-relnotes/hugo-69-easter-featured.png b/docs/content/en/news/0.69.0-relnotes/hugo-69-easter-featured.png
new file mode 100644
index 000000000..d1b413142
--- /dev/null
+++ b/docs/content/en/news/0.69.0-relnotes/hugo-69-easter-featured.png
Binary files differ
diff --git a/docs/content/en/news/0.69.0-relnotes/index.md b/docs/content/en/news/0.69.0-relnotes/index.md
new file mode 100644
index 000000000..13bb1b76b
--- /dev/null
+++ b/docs/content/en/news/0.69.0-relnotes/index.md
@@ -0,0 +1,73 @@
+
+---
+date: 2020-04-10
+title: "Post Build Resource Transformations"
+description: "Hugo 0.69.0 allows you to delay resource processing to after the build, the prime use case being removal of unused CSS."
+categories: ["Releases"]
+---
+
+**It's Eeaster, a time for mysteries and puzzles.** And at first glance, this Hugo release looks a little mysterious. The core of if is a mind-twister:
+
+```go-html-template
+{{ $css := resources.Get "css/main.css" }}
+{{ $css = $css | resources.PostCSS }}
+{{ if hugo.IsProduction }}
+{{ $css = $css | minify | fingerprint | resources.PostProcess }}
+{{ end }}
+<link href="{{ $css.RelPermalink }}" rel="stylesheet" />
+```
+
+The above uses the new [resources.PostProcess](https://gohugo.io/hugo-pipes/postprocess/) template function which tells Hugo to postpone the transformation of the Hugo Pipes chain to _after the build_, allowing the build steps to use the build output in `/public` as part of its processing.
+
+The prime current use case for the above is CSS pruning in PostCSS. In simple cases you can use the templates as a base for the content filters, but that has its limitations and can be very hard to setup, especially in themed configurations. So we have added a new [writeStats](https://gohugo.io/getting-started/configuration/#configure-build) configuration that, when enabled, will write a file named `hugo_stats.json` to your project root with some aggregated data about the build, e.g. list of HTML entities published, to be used to do [CSS pruning](https://gohugo.io/hugo-pipes/postprocess/#css-purging-with-postcss).
+
+This release represents **20 contributions by 10 contributors** to the main Hugo code base.[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@moorereason](https://github.com/moorereason), [@jaywilliams](https://github.com/jaywilliams), and [@satotake](https://github.com/satotake) for their ongoing contributions.
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) and [@onedrawingperday](https://github.com/onedrawingperday) for their relentless work on keeping the themes site in pristine condition and to [@davidsneighbour](https://github.com/davidsneighbour) and [@kaushalmodi](https://github.com/kaushalmodi) for all the great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **14 contributions by 7 contributors**. A special thanks to [@bep](https://github.com/bep), [@coliff](https://github.com/coliff), [@dmgawel](https://github.com/dmgawel), and [@jasikpark](https://github.com/jasikpark) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 43052+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 438+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 302+ [themes](http://themes.gohugo.io/)
+
+## Enhancements
+
+### Templates
+
+* Extend Jsonify to support options map [8568928a](https://github.com/gohugoio/hugo/commit/8568928aa8e82a6bd7de4555c3703d8835fbd25b) [@moorereason](https://github.com/moorereason)
+* Extend Jsonify to support optional indent parameter [1bc93021](https://github.com/gohugoio/hugo/commit/1bc93021e3dca6405628f6fdd2dc32cff9c9836c) [@moorereason](https://github.com/moorereason) [#5040](https://github.com/gohugoio/hugo/issues/5040)
+
+### Other
+
+* Regen docs helper [b7ff4dc2](https://github.com/gohugoio/hugo/commit/b7ff4dc23e6314fd09ee2c1e24cde96fc833164e) [@bep](https://github.com/bep)
+* Collect HTML elements during the build to use in PurgeCSS etc. [095bf64c](https://github.com/gohugoio/hugo/commit/095bf64c99f57efe083540a50e658808a0a1c32b) [@bep](https://github.com/bep) [#6999](https://github.com/gohugoio/hugo/issues/6999)
+* Update to latest emoji package [7791a804](https://github.com/gohugoio/hugo/commit/7791a804e2179667617b3b145b0fe7eba17627a1) [@QuLogic](https://github.com/QuLogic)
+* Update hosting-on-aws-amplify.md [c774b230](https://github.com/gohugoio/hugo/commit/c774b230e941902675af081f118ea206a4f2a04e) [@Helicer](https://github.com/Helicer)
+* Add basic "post resource publish support" [2f721f8e](https://github.com/gohugoio/hugo/commit/2f721f8ec69c52202815cd1b543ca4bf535c0901) [@bep](https://github.com/bep) [#7146](https://github.com/gohugoio/hugo/issues/7146)
+* Typo correction [7eba37ae](https://github.com/gohugoio/hugo/commit/7eba37ae9b8653be4fc21a0dbbc6f35ca5b9280e) [@fekete-robert](https://github.com/fekete-robert)
+* Use semver for min_version per recommendations [efc61d6f](https://github.com/gohugoio/hugo/commit/efc61d6f3b9f5fb294411ac1dc872b8fc5bdbacb) [@jaywilliams](https://github.com/jaywilliams)
+* Updateto gitmap v1.1.2 [4de3ecdc](https://github.com/gohugoio/hugo/commit/4de3ecdc2658ffd54d2b5073c5ff303b4bf29383) [@dragtor](https://github.com/dragtor) [#6985](https://github.com/gohugoio/hugo/issues/6985)
+* Add data context to the key in ExecuteAsTemplate" [c9dc316a](https://github.com/gohugoio/hugo/commit/c9dc316ad160e78c9dff4e75313db4cac8ea6414) [@bep](https://github.com/bep) [#7064](https://github.com/gohugoio/hugo/issues/7064)
+
+## Fixes
+
+### Other
+
+* Fix hugo mod vendor for regular file mounts [d8d6a25b](https://github.com/gohugoio/hugo/commit/d8d6a25b5755bedaf90261a1539dc37a2f05c3df) [@bep](https://github.com/bep) [#7140](https://github.com/gohugoio/hugo/issues/7140)
+* Revert "Revert "common/herrors: Fix typos in comments"" [9f12be54](https://github.com/gohugoio/hugo/commit/9f12be54ee84f24efdf7c58f05867e8d0dea2ccb) [@bep](https://github.com/bep)
+* Fix typos in comments" [4437e918](https://github.com/gohugoio/hugo/commit/4437e918cdab1d84f2f184fe71e5dac14aa48897) [@bep](https://github.com/bep)
+* Fix typos in comments [1123711b](https://github.com/gohugoio/hugo/commit/1123711b0979b1647d7c486f67af7503afb11abb) [@rnazmo](https://github.com/rnazmo)
+* Fix TrimShortHTML [9c998753](https://github.com/gohugoio/hugo/commit/9c9987535f98714c8a4ec98903f54233735ef0e4) [@satotake](https://github.com/satotake) [#7081](https://github.com/gohugoio/hugo/issues/7081)
+* Fix IsDescendant/IsAncestor for overlapping section names [4a39564e](https://github.com/gohugoio/hugo/commit/4a39564efe7b02a685598ae9dbae95e2326c0230) [@bep](https://github.com/bep) [#7096](https://github.com/gohugoio/hugo/issues/7096)
+* fix typo in getting started [b6e097cf](https://github.com/gohugoio/hugo/commit/b6e097cfe65ecd1d47c805969082e6805563612b) [@matrixise](https://github.com/matrixise)
+* Fix _build.list.local logic [523d5194](https://github.com/gohugoio/hugo/commit/523d51948fc20e2afb4721b43203c5ab696ae220) [@bep](https://github.com/bep) [#7089](https://github.com/gohugoio/hugo/issues/7089)
+* Fix cache reset for a page's collections on server live reload [cfa73050](https://github.com/gohugoio/hugo/commit/cfa73050a49b2646fe3557cefa0ed31989b0eeeb) [@bep](https://github.com/bep) [#7085](https://github.com/gohugoio/hugo/issues/7085)
+
+
+
+
+
diff --git a/docs/content/en/news/0.69.1-relnotes/index.md b/docs/content/en/news/0.69.1-relnotes/index.md
new file mode 100644
index 000000000..d80e3f26d
--- /dev/null
+++ b/docs/content/en/news/0.69.1-relnotes/index.md
@@ -0,0 +1,29 @@
+
+---
+date: 2020-04-22
+title: "Hugo 0.69.1: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.69.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* hugolib/filesystems: Fix typo in test suite [49e6c8cb](https://github.com/gohugoio/hugo/commit/49e6c8cb4ed83e20f1e0ac164e91c38854177b99) [@panakour](https://github.com/panakour)
+* Fix class collector when running with --minify [f37e77f2](https://github.com/gohugoio/hugo/commit/f37e77f2d338cf876cfa637a662acd76f0f2009b) [@bep](https://github.com/bep) [#7161](https://github.com/gohugoio/hugo/issues/7161)
+* related: Fix toLower [27af5a33](https://github.com/gohugoio/hugo/commit/27af5a339a4d3c5712b5ed946a636a8c21916039) [@bep](https://github.com/bep) [#7198](https://github.com/gohugoio/hugo/issues/7198)
+* Fix broken test [b3c82575](https://github.com/gohugoio/hugo/commit/b3c825756f3251f8b26e53262f9d6f484aecf750) [@bep](https://github.com/bep)
+* tpl/tmplimpl/template: Change defer RLock to RUnlock [5146dc61](https://github.com/gohugoio/hugo/commit/5146dc614fc45df698ebf890af06421dea988c96) [@BurtonQin](https://github.com/BurtonQin)
+* hugolib: Add Unlock before panic [736f84b2](https://github.com/gohugoio/hugo/commit/736f84b2d539857f7fdd0e42353af80b4dccfe8d) [@BurtonQin](https://github.com/BurtonQin)
+* docs: Fix typo in Hugo's Security Model [cd4d8202](https://github.com/gohugoio/hugo/commit/cd4d8202016bd3eb5ed9144c8945edaba73c8cf4) [@sensimevanidus](https://github.com/sensimevanidus)
+* deps: Update go-org to v1.1.0 [2b28e5a9](https://github.com/gohugoio/hugo/commit/2b28e5a9cb79af2a8d70c80036f52bcf5399b9df) [@niklasfasching](https://github.com/niklasfasching)
+* commands: Modify gen chromastyles to output all CSS classes [102ec2da](https://github.com/gohugoio/hugo/commit/102ec2da7adcc4afb7050b17989f0486f8379679) [@acahir](https://github.com/acahir) [#7167](https://github.com/gohugoio/hugo/issues/7167)
+* deps: Update to goldmark v1.1.28 [feaa582c](https://github.com/gohugoio/hugo/commit/feaa582cbe950e82969da5e99e3fb9a3947025df) [@bep](https://github.com/bep) [#7113](https://github.com/gohugoio/hugo/issues/7113)
+* Fix query parameter handling in server fast render mode [ee67dbef](https://github.com/gohugoio/hugo/commit/ee67dbeff5bae6941facaaa39cb995a1ee6def03) [@bep](https://github.com/bep) [#7163](https://github.com/gohugoio/hugo/issues/7163)
+
+
+
diff --git a/docs/content/en/news/0.69.2-relnotes/index.md b/docs/content/en/news/0.69.2-relnotes/index.md
new file mode 100644
index 000000000..048a58817
--- /dev/null
+++ b/docs/content/en/news/0.69.2-relnotes/index.md
@@ -0,0 +1,21 @@
+
+---
+date: 2020-04-24
+title: "Hugo 0.69.2: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.69.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* Fix IsAncestor and IsDescendant when the same page is passed [8d5766d4](https://github.com/gohugoio/hugo/commit/8d5766d417d6564a1aa1cbe8f9a29ab9bba22371) [@tekezo](https://github.com/tekezo)
+* deps: Update goldmark-highlighting [5c41f41a](https://github.com/gohugoio/hugo/commit/5c41f41ad4b14e48aea64687a7600f5ad231e879) [@satotake](https://github.com/satotake) [#7027](https://github.com/gohugoio/hugo/issues/7027)[#6596](https://github.com/gohugoio/hugo/issues/6596)
+* Fix IsAncestor and IsDescendant under subsection [27a4c441](https://github.com/gohugoio/hugo/commit/27a4c4410cd9592249925fb14b32605fb961c597) [@tekezo](https://github.com/tekezo)
+
+
+
diff --git a/docs/content/en/news/0.7-relnotes/index.md b/docs/content/en/news/0.7-relnotes/index.md
new file mode 100644
index 000000000..e140304c0
--- /dev/null
+++ b/docs/content/en/news/0.7-relnotes/index.md
@@ -0,0 +1,16 @@
+---
+date: 2013-07-05T04:22:00Z
+description: "The first public release of Hugo."
+title: "Hugo 0.7"
+categories: ["Releases"]
+---
+
+As the first public release here's a bit about what Hugo can do so far:
+
+- **0.7.0** July 4, 2013
+ - Hugo now includes a simple server
+ - First public release
+- **0.6.0** July 2, 2013
+ - Hugo includes an [example documentation site](http://hugo.spf13.com) which it builds
+- **0.5.0** June 25, 2013
+ - Hugo is quite usable and able to build [spf13.com](http://spf13.com)
diff --git a/docs/content/en/news/0.70.0-relnotes/hugo-70-featured.png b/docs/content/en/news/0.70.0-relnotes/hugo-70-featured.png
new file mode 100644
index 000000000..3b9c67d5f
--- /dev/null
+++ b/docs/content/en/news/0.70.0-relnotes/hugo-70-featured.png
Binary files differ
diff --git a/docs/content/en/news/0.70.0-relnotes/index.md b/docs/content/en/news/0.70.0-relnotes/index.md
new file mode 100644
index 000000000..8a6c25b00
--- /dev/null
+++ b/docs/content/en/news/0.70.0-relnotes/index.md
@@ -0,0 +1,68 @@
+
+---
+date: 2020-05-06
+title: "JavaScript Transpiler"
+description: "Hugo 0.70.0 adds a new pipe function that uses Babel to transpile JavaScript."
+categories: ["Releases"]
+---
+
+This is a small release, and the main new feature is that you can now use [Babel](https://gohugo.io/hugo-pipes/babel/) to transpile JavaScript.
+
+This release represents **22 contributions by 12 contributors** to the main Hugo code base.[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@BurtonQin](https://github.com/BurtonQin), [@tekezo](https://github.com/tekezo), and [@sensimevanidus](https://github.com/sensimevanidus) for their ongoing contributions.
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) and [@onedrawingperday](https://github.com/onedrawingperday) for their relentless work on keeping the themes site in pristine condition and to [@davidsneighbour](https://github.com/davidsneighbour) and [@kaushalmodi](https://github.com/kaushalmodi) for all the great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **6 contributions by 4 contributors**. A special thanks to [@bep](https://github.com/bep), [@MJ2097](https://github.com/MJ2097), [@jeremyzilar](https://github.com/jeremyzilar), and [@larryclaman](https://github.com/larryclaman) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 43734+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 437+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 316+ [themes](http://themes.gohugo.io/)
+
+## Enhancements
+
+### Templates
+
+* Change defer RLock to RUnlock [5146dc61](https://github.com/gohugoio/hugo/commit/5146dc614fc45df698ebf890af06421dea988c96) [@BurtonQin](https://github.com/BurtonQin)
+
+### Output
+
+* Modify gen chromastyles to output all CSS classes [102ec2da](https://github.com/gohugoio/hugo/commit/102ec2da7adcc4afb7050b17989f0486f8379679) [@acahir](https://github.com/acahir) [#7167](https://github.com/gohugoio/hugo/issues/7167)
+
+### Core
+
+* Add Unlock before panic [736f84b2](https://github.com/gohugoio/hugo/commit/736f84b2d539857f7fdd0e42353af80b4dccfe8d) [@BurtonQin](https://github.com/BurtonQin)
+
+### Other
+
+* Update minify to v2.6.2 [01befcce](https://github.com/gohugoio/hugo/commit/01befcce35ec992d195ce1b9a6a1eeda693cb5a8) [@pperzyna](https://github.com/pperzyna) [#6699](https://github.com/gohugoio/hugo/issues/6699)
+* Add support for sort by boolean [04b1a6d9](https://github.com/gohugoio/hugo/commit/04b1a6d997e72d9abada28db22650d38ccbcbb39) [@Mipsters](https://github.com/Mipsters)
+* Update to Libsass 3.6.4 [dd31e800](https://github.com/gohugoio/hugo/commit/dd31e800075eebd78f921df8b4865c238006e7a7) [@bep](https://github.com/bep) [#7231](https://github.com/gohugoio/hugo/issues/7231)
+* Rename transpileJS to babel [6add6d77](https://github.com/gohugoio/hugo/commit/6add6d77b48cf0aab8b39d7a2bddedb1aa2a52b8) [@bep](https://github.com/bep) [#5764](https://github.com/gohugoio/hugo/issues/5764)
+* Add JavaScript transpiling solution [2a171ff1](https://github.com/gohugoio/hugo/commit/2a171ff1c5d9b1603fe78c67d2d894bb2efccc8b) [@hmmmmniek](https://github.com/hmmmmniek) [#5764](https://github.com/gohugoio/hugo/issues/5764)
+* Disable a test locally [67f92041](https://github.com/gohugoio/hugo/commit/67f920419a53c7ff11e01c4286dca23e92110a12) [@bep](https://github.com/bep)
+* Add diagnostic hints to init timeout message [fe60b7d9](https://github.com/gohugoio/hugo/commit/fe60b7d9e4c12dbc428f992c05969bc14c7fe7a2) [@mtlynch](https://github.com/mtlynch)
+* Update goldmark-highlighting [5c41f41a](https://github.com/gohugoio/hugo/commit/5c41f41ad4b14e48aea64687a7600f5ad231e879) [@satotake](https://github.com/satotake) [#7027](https://github.com/gohugoio/hugo/issues/7027)[#6596](https://github.com/gohugoio/hugo/issues/6596)
+* Update go-org to v1.1.0 [2b28e5a9](https://github.com/gohugoio/hugo/commit/2b28e5a9cb79af2a8d70c80036f52bcf5399b9df) [@niklasfasching](https://github.com/niklasfasching)
+* Update to goldmark v1.1.28 [feaa582c](https://github.com/gohugoio/hugo/commit/feaa582cbe950e82969da5e99e3fb9a3947025df) [@bep](https://github.com/bep) [#7113](https://github.com/gohugoio/hugo/issues/7113)
+
+## Fixes
+
+### Other
+
+* Fix some missing JS class collector cases [c03ea2b6](https://github.com/gohugoio/hugo/commit/c03ea2b66010d2996d652903cb8fa41e983e787f) [@bep](https://github.com/bep) [#7216](https://github.com/gohugoio/hugo/issues/7216)
+* Fix IsAncestor and IsDescendant when the same page is passed [8d5766d4](https://github.com/gohugoio/hugo/commit/8d5766d417d6564a1aa1cbe8f9a29ab9bba22371) [@tekezo](https://github.com/tekezo)
+* Fix IsAncestor and IsDescendant under subsection [27a4c441](https://github.com/gohugoio/hugo/commit/27a4c4410cd9592249925fb14b32605fb961c597) [@tekezo](https://github.com/tekezo)
+* Fix typo in test suite [49e6c8cb](https://github.com/gohugoio/hugo/commit/49e6c8cb4ed83e20f1e0ac164e91c38854177b99) [@panakour](https://github.com/panakour)
+* Fix class collector when running with --minify [f37e77f2](https://github.com/gohugoio/hugo/commit/f37e77f2d338cf876cfa637a662acd76f0f2009b) [@bep](https://github.com/bep) [#7161](https://github.com/gohugoio/hugo/issues/7161)
+* Fix toLower [27af5a33](https://github.com/gohugoio/hugo/commit/27af5a339a4d3c5712b5ed946a636a8c21916039) [@bep](https://github.com/bep) [#7198](https://github.com/gohugoio/hugo/issues/7198)
+* Fix broken test [b3c82575](https://github.com/gohugoio/hugo/commit/b3c825756f3251f8b26e53262f9d6f484aecf750) [@bep](https://github.com/bep)
+* Fix typo in Hugo's Security Model [cd4d8202](https://github.com/gohugoio/hugo/commit/cd4d8202016bd3eb5ed9144c8945edaba73c8cf4) [@sensimevanidus](https://github.com/sensimevanidus)
+* Fix query parameter handling in server fast render mode [ee67dbef](https://github.com/gohugoio/hugo/commit/ee67dbeff5bae6941facaaa39cb995a1ee6def03) [@bep](https://github.com/bep) [#7163](https://github.com/gohugoio/hugo/issues/7163)
+
+
+
+
+
diff --git a/docs/content/en/news/0.71.0-relnotes/hugo-71-featured.png b/docs/content/en/news/0.71.0-relnotes/hugo-71-featured.png
new file mode 100644
index 000000000..081581df8
--- /dev/null
+++ b/docs/content/en/news/0.71.0-relnotes/hugo-71-featured.png
Binary files differ
diff --git a/docs/content/en/news/0.71.0-relnotes/index.md b/docs/content/en/news/0.71.0-relnotes/index.md
new file mode 100644
index 000000000..07d951bf3
--- /dev/null
+++ b/docs/content/en/news/0.71.0-relnotes/index.md
@@ -0,0 +1,50 @@
+
+---
+date: 2020-05-18
+title: "Markdown Render Hooks for Headings"
+description: "Render hooks for headings, update to Go 1.14.3, several bug fixes etc."
+categories: ["Releases"]
+---
+
+Hugo 0.71 brings [Markdown render hooks for headings](https://gohugo.io/getting-started/configuration-markup#markdown-render-hooks), a set of bug fixes and more.
+
+This release represents **12 contributions by 7 contributors** to the main Hugo code base. [@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@anthonyfok](https://github.com/anthonyfok), [@apexskier](https://github.com/apexskier), and [@johnweldon](https://github.com/johnweldon) for their ongoing contributions.
+
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) and [@onedrawingperday](https://github.com/onedrawingperday) for their relentless work on keeping the themes site in pristine condition and to [@davidsneighbour](https://github.com/davidsneighbour) and [@kaushalmodi](https://github.com/kaushalmodi) for all the great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **8 contributions by 7 contributors**. A special thanks to [@bep](https://github.com/bep), [@mikeee](https://github.com/mikeee), [@h-enk](https://github.com/h-enk), and [@tjamet](https://github.com/tjamet) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 44043+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 437+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 322+ [themes](http://themes.gohugo.io/)
+
+## Enhancements
+
+### Other
+
+* Use WARN log level also for the early initialization [518d1496](https://github.com/gohugoio/hugo/commit/518d149646c13fb49c296a63e61a048f5e672179) [@bep](https://github.com/bep) [#7285](https://github.com/gohugoio/hugo/issues/7285)
+* Update to Go 1.14.3 and Go 1.13.11 [3cc41523](https://github.com/gohugoio/hugo/commit/3cc41523bef802d1942f3d31018547a18cc55923) [@bep](https://github.com/bep)
+* Improve error message when no Babel installed [2fd0a5a6](https://github.com/gohugoio/hugo/commit/2fd0a5a6781456e88745b370d12aaf5351a020ff) [@bep](https://github.com/bep)
+* Add test for headings render hook [6e051c05](https://github.com/gohugoio/hugo/commit/6e051c053e2b5b8419f357ed8acd177440266d07) [@apexskier](https://github.com/apexskier)
+* Add render template hooks for headings [423b8f2f](https://github.com/gohugoio/hugo/commit/423b8f2fb834139cf31514b14b1c1bf28e43b384) [@elihunter173](https://github.com/elihunter173) [#6713](https://github.com/gohugoio/hugo/issues/6713)
+* Add math.Pow [99193449](https://github.com/gohugoio/hugo/commit/991934497e88dcd4134a369a213bb5072c51c139) [@jmooring](https://github.com/jmooring) [#7266](https://github.com/gohugoio/hugo/issues/7266)
+* Do not suppress .well-known/ directory [558c0930](https://github.com/gohugoio/hugo/commit/558c09305e2be16953238c6c0e828f62b950e4f5) [@johnweldon](https://github.com/johnweldon) [#6691](https://github.com/gohugoio/hugo/issues/6691)
+* Quote "@babel/cli" to solve build error [b69a3614](https://github.com/gohugoio/hugo/commit/b69a36140f42ec99ffa2d1e029b8b86ecf8ff929) [@anthonyfok](https://github.com/anthonyfok)
+* Remove custom x-nodejs plugin [a0103864](https://github.com/gohugoio/hugo/commit/a0103864ab76c6a1462a6dee538801740acf4858) [@anthonyfok](https://github.com/anthonyfok)
+* Use .Lastmod for og:updated_time [6205d56b](https://github.com/gohugoio/hugo/commit/6205d56b85fea31e008cd0fef26805bab8084786) [@dtip](https://github.com/dtip)
+
+## Fixes
+
+### Other
+
+* Fix Babel on Windows [723ec555](https://github.com/gohugoio/hugo/commit/723ec555e75fbfa94d90d3ecbcd5775d6c7800e1) [@bep](https://github.com/bep) [#7251](https://github.com/gohugoio/hugo/issues/7251)
+* Upgrade chroma to 0.7.3 to fix invalid css [b342e8fb](https://github.com/gohugoio/hugo/commit/b342e8fbdb23157f3979af91cb5d8d3438003707) [@apexskier](https://github.com/apexskier) [#7207](https://github.com/gohugoio/hugo/issues/7207)
+
+
+
+
+
diff --git a/docs/content/en/news/0.71.1-relnotes/index.md b/docs/content/en/news/0.71.1-relnotes/index.md
new file mode 100644
index 000000000..7fbd01dd3
--- /dev/null
+++ b/docs/content/en/news/0.71.1-relnotes/index.md
@@ -0,0 +1,25 @@
+
+---
+date: 2020-05-25
+title: "Hugo 0.71.1: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* Add some more date test cases [81f56332](https://github.com/gohugoio/hugo/commit/81f5633245bf123fbe7ad78eec51ae7b4e6c177a) [@bep](https://github.com/bep) [#7310](https://github.com/gohugoio/hugo/issues/7310)
+* Fix RenderString vs render hooks [9698b0da](https://github.com/gohugoio/hugo/commit/9698b0dab11f52d52145e85ff71311d2f103cb4e) [@bep](https://github.com/bep) [#7265](https://github.com/gohugoio/hugo/issues/7265)
+* Prevent WARNINGs in RenderString [32344fe3](https://github.com/gohugoio/hugo/commit/32344fe3db862584e3f926d63bdf33b7fa7d22f7) [@bep](https://github.com/bep)
+* Fix IsAncestor/IsDescendant for taxonomies [4d7fa9f1](https://github.com/gohugoio/hugo/commit/4d7fa9f114c62ae2ec12257203ed21b0e4d69a04) [@bep](https://github.com/bep) [#7305](https://github.com/gohugoio/hugo/issues/7305)
+* Fix GetPage on section/bundle name overlaps [a985efce](https://github.com/gohugoio/hugo/commit/a985efcecf44afe1d252690ec0a00cf077974f44) [@bep](https://github.com/bep) [#7301](https://github.com/gohugoio/hugo/issues/7301)
+* Fix Go template script escaping [6c3c6686](https://github.com/gohugoio/hugo/commit/6c3c6686f5d3c7155e2d455b07ac8ab70f42cb88) [@bep](https://github.com/bep) [#6695](https://github.com/gohugoio/hugo/issues/6695)
+* Add a test helper [c34bf485](https://github.com/gohugoio/hugo/commit/c34bf48560c91c8a2fa106867af7b08a569609b5) [@bep](https://github.com/bep)
+
+
+
diff --git a/docs/content/en/news/0.72.0-relnotes/hugo-72-featured.png b/docs/content/en/news/0.72.0-relnotes/hugo-72-featured.png
new file mode 100644
index 000000000..673ab28c3
--- /dev/null
+++ b/docs/content/en/news/0.72.0-relnotes/hugo-72-featured.png
Binary files differ
diff --git a/docs/content/en/news/0.72.0-relnotes/index.md b/docs/content/en/news/0.72.0-relnotes/index.md
new file mode 100644
index 000000000..8e413f02a
--- /dev/null
+++ b/docs/content/en/news/0.72.0-relnotes/index.md
@@ -0,0 +1,41 @@
+
+---
+date: 2020-05-31
+title: URL rewrites in dev server
+description: "Hugo 0.72.0 comes with dev server redirects and URL rewrites, Goldmark typography extension fixes, Scratch.Values."
+categories: ["Releases"]
+---
+
+This is a rather small release, its probably main motivation being the fixes in Goldmark's [Typographer extension](https://github.com/gohugoio/hugo/commit/432885c499849efb29d3e50196f377fe0e908333).
+
+This release also adds [redirect and URL rewrite support](https://gohugo.io/getting-started/configuration/#configure-server) to the development server, with mostly Netlify-compatible configuration syntax. This is especially useful if you're building a [SPA](https://en.wikipedia.org/wiki/Single-page_application) with client-side routing.
+
+
+This release represents **13 contributions by 3 contributors** to the main Hugo code base.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **9 contributions by 6 contributors**. A special thanks to [@faraixyz](https://github.com/faraixyz), [@bep](https://github.com/bep), [@coliff](https://github.com/coliff), and [@Leon0824](https://github.com/Leon0824) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 44383+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 437+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 327+ [themes](http://themes.gohugo.io/)
+
+## Enhancements
+
+### Other
+
+* Add Scratch.Values [2919a6a5](https://github.com/gohugoio/hugo/commit/2919a6a503f7b369154d6eb787023a1fe58a9ad4) [@bep](https://github.com/bep) [#7335](https://github.com/gohugoio/hugo/issues/7335)
+* Update Goldmark to improve Typographer [432885c4](https://github.com/gohugoio/hugo/commit/432885c499849efb29d3e50196f377fe0e908333) [@bep](https://github.com/bep) [#7289](https://github.com/gohugoio/hugo/issues/7289)
+* Add redirect support to the server [6a3e8974](https://github.com/gohugoio/hugo/commit/6a3e89743ccad58097a6dd203a63448946a2304d) [@bep](https://github.com/bep) [#7323](https://github.com/gohugoio/hugo/issues/7323)
+
+## Fixes
+
+### Other
+
+* Fix tag collector for nested table elements [c950c86b](https://github.com/gohugoio/hugo/commit/c950c86b4e5fb93f787ec78ca823bded9ef9fa3a) [@bep](https://github.com/bep) [#7318](https://github.com/gohugoio/hugo/issues/7318)
+* Fix build error: my previous commits did not fix it [91520249](https://github.com/gohugoio/hugo/commit/915202494b140882d594e0542153531f6afada02) [@anthonyfok](https://github.com/anthonyfok)
+
+
diff --git a/docs/content/en/news/0.73.0-relnotes/hugo-73-featured.png b/docs/content/en/news/0.73.0-relnotes/hugo-73-featured.png
new file mode 100644
index 000000000..92685b15c
--- /dev/null
+++ b/docs/content/en/news/0.73.0-relnotes/hugo-73-featured.png
Binary files differ
diff --git a/docs/content/en/news/0.73.0-relnotes/index.md b/docs/content/en/news/0.73.0-relnotes/index.md
new file mode 100644
index 000000000..398869e92
--- /dev/null
+++ b/docs/content/en/news/0.73.0-relnotes/index.md
@@ -0,0 +1,64 @@
+
+---
+date: 2020-06-23
+title: "Summer Breeze"
+description: "Taxonomy terms cleanup, render hooks per section/type, HMAC function, and more."
+categories: ["Releases"]
+---
+
+Again, a release on the small side. Some new features -- one example is that we now support hook templates per section/type, see [#7349](https://github.com/gohugoio/hugo/issues/7349) -- and some important bug fixes.
+
+But the most important part of this release is that we have now finally cleaned up the terms used for the taxonomy page kinds. This has made the taxonomy feature in Hugo harder to understand than it needed to be. The old/new values for these are `taxonomy` => `term` and `taxonomyTerm` => `taxonomy`. We have taken great care to avoid site breakage. See [#6911](https://github.com/gohugoio/hugo/issues/6911) for more information.
+
+This release represents **21 contributions by 9 contributors** to the main Hugo code base.bjorn.erik.pedersen leads the Hugo development with a significant amount of contributions, but also a big shoutout to helfper, moorereason, and onedrawingperday for their ongoing contributions.
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the themes site in pristine condition and to [@davidsneighbour](https://github.com/davidsneighbour), [@coliff](https://github.com/coliff) and [@kaushalmodi](https://github.com/kaushalmodi) for all the great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **30 contributions by 14 contributors**. A special thanks to christianoliff, bjorn.erik.pedersen, patrick, and hello for their work on the documentation site.
+
+
+## Notes
+
+* Rename taxonomy kinds from taxonomy to term, taxonomyTerm to taxonomy [#6911](https://github.com/gohugoio/hugo/issues/6911)
+
+## Enhancements
+
+### Templates
+
+* tpl/crypto: Add hmac
+
+### Other
+
+* Remove some old release notes
+* Create robots.txt in the domain root directory [#5160](https://github.com/gohugoio/hugo/issues/5160)[#4193](https://github.com/gohugoio/hugo/issues/4193)
+* Make GroupByParamDate work with string params [#3983](https://github.com/gohugoio/hugo/issues/3983)
+* Add GroupByLastmod [#7408](https://github.com/gohugoio/hugo/issues/7408)
+* Rename taxonomy kinds from taxonomy to term, taxonomyTerm to taxonomy [#6911](https://github.com/gohugoio/hugo/issues/6911)[#7395](https://github.com/gohugoio/hugo/issues/7395)
+* Add genDocsHelper mage target
+* Regenerate templates
+* Beautify HTML generated by pagination template [#7199](https://github.com/gohugoio/hugo/issues/7199)
+* Add a nested data dir test
+* Use os.PathError in RootMappingFs.doLstat
+* Remove credit (#7347)
+* Allow hook template per section/type [#7349](https://github.com/gohugoio/hugo/issues/7349)
+
+## Fixes
+
+### Templates
+
+* Fix bad rounding in NumFmt [#7116](https://github.com/gohugoio/hugo/issues/7116)
+
+### Other
+
+* Fix aliases with path in baseURL
+* Fix server data race/nil pointer in withMaps [#7392](https://github.com/gohugoio/hugo/issues/7392)
+* Fix order of GetTerms [#7213](https://github.com/gohugoio/hugo/issues/7213)
+* Fix aliases with uglyURLs
+* Fix crash for closing shortcode with no .Inner set [#6857](https://github.com/gohugoio/hugo/issues/6857)[#7330](https://github.com/gohugoio/hugo/issues/7330)
+* Fix aliases with relativeURLs
+* Fix URL rewrites vs fast render server mode [#7357](https://github.com/gohugoio/hugo/issues/7357)
+
+
+
+
+
diff --git a/docs/content/en/news/0.74.0-relnotes/featured.png b/docs/content/en/news/0.74.0-relnotes/featured.png
new file mode 100644
index 000000000..34f288495
--- /dev/null
+++ b/docs/content/en/news/0.74.0-relnotes/featured.png
Binary files differ
diff --git a/docs/content/en/news/0.74.0-relnotes/index.md b/docs/content/en/news/0.74.0-relnotes/index.md
new file mode 100644
index 000000000..d793f4888
--- /dev/null
+++ b/docs/content/en/news/0.74.0-relnotes/index.md
@@ -0,0 +1,85 @@
+
+---
+date: 2020-07-13
+title: "Native JS Bundler, Open API Support, Inline Partials"
+description: "Hugo 0.74.0 brings blazingly fast native JavaScript bundling, with minification, tree shaking, scope hoisting for ES6 modules, and transpilation of JSX and newer JS syntax down to ES6. And more."
+categories: ["Releases"]
+---
+
+**Note:** The documentation site isn't updated with all of the main new things below. We will get to it soon. See https://github.com/gohugoio/hugoDocs/issues/1171
+
+This release comes with native JavaScript bundling (and minifier), with [import](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import) support (from `node_modules` etc.), tree shaking, scope hoisting for ES6 modules, transpilation of JSX and newer JS syntax down to ES6, JavaScript/JSX and TypeScript/TSX support. And it's _very fast_. [Benchmarks](https://github.com/evanw/esbuild#benchmarks) rates it **at least 100x faster** than the other JavaScript bundlers included. This new feature is backed by the very impressive [ESBuild](https://github.com/evanw/esbuild) project by [@evanw](https://github.com/evanw). Many thanks to [@remko](https://github.com/remko) for the integration work.
+
+A very simple example building a TypeScript file:
+
+```go-html-template
+{{ $js := resources.Get "js/main.ts" | js.Build }}
+```
+This release also comes with Open API 3-support. This makes it much easier to create "Swagger styled" API-documentation. The below will unmarshal your YAML file into [this object graph](https://godoc.org/github.com/getkin/kin-openapi/openapi3#Swagger):
+
+```go-html-template
+{{ $api := resources.Get "api/openapi.yaml" | openapi3.Unmarshal }}
+```
+
+Hugo's Asciidoc integration has also gotten a face lift. A big shoutout to [@muenchhausen](https://github.com/muenchhausen) and [@bwklein](https://github.com/bwklein) for their work on this.
+
+And finally, [partials](https://gohugo.io/templates/partials/#inline-partials) can now be defined inline -- and that is way more useful than it sounds.
+
+
+This release represents **23 contributions by 9 contributors** to the main Hugo code base. [@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@niklasfasching](https://github.com/niklasfasching), [@bwklein](https://github.com/bwklein), and [@muenchhausen](https://github.com/muenchhausen) for their ongoing contributions.
+
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the themes site in pristine condition and to [@davidsneighbour](https://github.com/davidsneighbour), [@coliff](https://github.com/coliff) and [@kaushalmodi](https://github.com/kaushalmodi) for all the great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **8 contributions by 7 contributors**. A special thanks to [@OmarEmaraDev](https://github.com/OmarEmaraDev), [@regisphilibert](https://github.com/regisphilibert), [@coliff](https://github.com/coliff), and [@jessicahuynh](https://github.com/jessicahuynh) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 45377+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 438+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 331+ [themes](http://themes.gohugo.io/)
+
+## Enhancements
+
+### Templates
+
+* Add strings.Count [028b3567](https://github.com/gohugoio/hugo/commit/028b356787426dbc190ce9868fbc9a6400c2996e) [@bep](https://github.com/bep) [#7453](https://github.com/gohugoio/hugo/issues/7453)
+* Add debug.Dump [defd7106](https://github.com/gohugoio/hugo/commit/defd7106bf79a502418ec373bdb82742b16f777f) [@bep](https://github.com/bep) [#3957](https://github.com/gohugoio/hugo/issues/3957)
+
+### Output
+
+* Add proper Media Type handling in js.Build [9df98ec4](https://github.com/gohugoio/hugo/commit/9df98ec49ca9fa326125ccfee626b6e46c6ab14b) [@bep](https://github.com/bep) [#732](https://github.com/gohugoio/hugo/issues/732)
+
+### Core
+
+* Add missing zero check on file [ccfaeb67](https://github.com/gohugoio/hugo/commit/ccfaeb678b312535928af3451324a54f2c7cb199) [@bep](https://github.com/bep)
+
+### Other
+
+* Regenerate docs helper [25e3da33](https://github.com/gohugoio/hugo/commit/25e3da3343b5cd4bbcd11fa76b382fb089971840) [@bep](https://github.com/bep)
+* Add js.Build asset bundling [2fc33807](https://github.com/gohugoio/hugo/commit/2fc33807077cd25bf91f2298bf1a8ace126881a7) [@remko](https://github.com/remko) [#7321](https://github.com/gohugoio/hugo/issues/7321)
+* Add openapi3.Unmarshal [12a65e76](https://github.com/gohugoio/hugo/commit/12a65e76df9470d9563b91a22969ddb41b7c19aa) [@bep](https://github.com/bep) [#7442](https://github.com/gohugoio/hugo/issues/7442)[#7443](https://github.com/gohugoio/hugo/issues/7443)
+* Remove trailing hyphen from auto heading ID [58c0f5e6](https://github.com/gohugoio/hugo/commit/58c0f5e6171cbf8e3ed8d73ac95a7b85168c5b2f) [@jmooring](https://github.com/jmooring) [#6798](https://github.com/gohugoio/hugo/issues/6798)
+* Ensure that non-trivial default flag values are passed through. [a1c3e3c1](https://github.com/gohugoio/hugo/commit/a1c3e3c1f32bcbc3b3aa6921bdee98a9f795a2da) [@vangent](https://github.com/vangent)
+* Update formats.md doc for new allowed extensions. [e9f87c4e](https://github.com/gohugoio/hugo/commit/e9f87c4e3feee937d05504763935805fec26213c) [@bwklein](https://github.com/bwklein)
+* Update config.go to add two Asciidoctor extensions [beb6c03b](https://github.com/gohugoio/hugo/commit/beb6c03bc8f476b753e5f3e3bc7a4a2e3f8ad355) [@bwklein](https://github.com/bwklein)
+* Add support for inline partials [4a3efea7](https://github.com/gohugoio/hugo/commit/4a3efea7efe59cd3de7d0eb352836ab395a2b6b3) [@bep](https://github.com/bep) [#7444](https://github.com/gohugoio/hugo/issues/7444)
+* Add support for native Org dates in frontmatter [c66dc6c7](https://github.com/gohugoio/hugo/commit/c66dc6c74fa3bbe308ccaade8c76071b49908129) [@sometimesfood](https://github.com/sometimesfood)
+* Update go-org to v1.3.0 [127d5feb](https://github.com/gohugoio/hugo/commit/127d5feb32b466c4a0035e81f86684920dd88cfe) [@niklasfasching](https://github.com/niklasfasching)
+* Update go-org to v1.2.0 [2d42ba91](https://github.com/gohugoio/hugo/commit/2d42ba912ba945230aa0be23c3c8256cba40ce99) [@niklasfasching](https://github.com/niklasfasching)
+* Update bug_report.md [5b7b5dea](https://github.com/gohugoio/hugo/commit/5b7b5dea1fe3494995c6a9c3368087abf47cdc12) [@bep](https://github.com/bep)
+* Remove some unused code [057b1377](https://github.com/gohugoio/hugo/commit/057b1377c5f4d0d80ee299293db06384a475ad19) [@bep](https://github.com/bep)
+* Add an option to print memory usage at intervals [48dbb593](https://github.com/gohugoio/hugo/commit/48dbb593f7cc0dceb55d232ac198e82f3df1c964) [@bep](https://github.com/bep)
+* Rework external asciidoctor integration [f0266e2e](https://github.com/gohugoio/hugo/commit/f0266e2ef3487bc57dd05402002fc816e3b40195) [@muenchhausen](https://github.com/muenchhausen)
+* Enable the embedded template test when race detector is off [77aa385b](https://github.com/gohugoio/hugo/commit/77aa385b84dbc1805ff7e34dafeadb181905c689) [@bep](https://github.com/bep) [#5926](https://github.com/gohugoio/hugo/issues/5926)
+* Merge branch 'release-0.73.0' [545a1c1c](https://github.com/gohugoio/hugo/commit/545a1c1cedc93d091050bae07c02fc2435ad2d20) [@bep](https://github.com/bep)
+* Updated installation instruction about Sass/SCSS support [0b579db8](https://github.com/gohugoio/hugo/commit/0b579db80fba1bde7dab07ea92d622dd6214dcfb) [@mateusz-szczyrzyca](https://github.com/mateusz-szczyrzyca)
+
+## Fixes
+
+### Other
+
+* Fix server reload when non-HTML shortcode changes [42e150fb](https://github.com/gohugoio/hugo/commit/42e150fbfac736bd49bc7e50cb8cdf9f81386f59) [@bep](https://github.com/bep) [#7448](https://github.com/gohugoio/hugo/issues/7448)
+
+
diff --git a/docs/content/en/news/0.74.1-relnotes/index.md b/docs/content/en/news/0.74.1-relnotes/index.md
new file mode 100644
index 000000000..7419296af
--- /dev/null
+++ b/docs/content/en/news/0.74.1-relnotes/index.md
@@ -0,0 +1,19 @@
+
+---
+date: 2020-07-13
+title: "Hugo 0.74.1: A couple of Bug Fixes"
+description: "This version fixes one issue introduced in 0.74.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with one important fix.
+
+* Fix baseof block regression [c91dbe4c](https://github.com/gohugoio/hugo/commit/c91dbe4ce9c30623ba6e686fd17efae935aa0cc5) [@bep](https://github.com/bep) [#7478](https://github.com/gohugoio/hugo/issues/7478)
+
+
+
diff --git a/docs/content/en/news/0.74.2-relnotes/index.md b/docs/content/en/news/0.74.2-relnotes/index.md
new file mode 100644
index 000000000..e78d8564c
--- /dev/null
+++ b/docs/content/en/news/0.74.2-relnotes/index.md
@@ -0,0 +1,24 @@
+
+---
+date: 2020-07-17
+title: "Hugo 0.74.2: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.74.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+Add .Defines to js.Build options [35011bcb](https://github.com/gohugoio/hugo/commit/35011bcb26b6fcfcbd77dc05aa8246ca45b2c2ba) [@bep](https://github.com/bep) [#7489](https://github.com/gohugoio/hugo/issues/7489)
+
+This is needed to import `react` as a library, e.g.:
+
+```
+{{ $jsx := resources.Get "index.jsx" }}
+{{ $options := dict "defines" (dict "process.env.NODE_ENV" "\"development\"") }}
+{{ $js := $jsx | js.Build $options }}
+```
+
+
diff --git a/docs/content/en/news/0.74.3-relnotes/index.md b/docs/content/en/news/0.74.3-relnotes/index.md
new file mode 100644
index 000000000..b5503982c
--- /dev/null
+++ b/docs/content/en/news/0.74.3-relnotes/index.md
@@ -0,0 +1,26 @@
+
+---
+date: 2020-07-23
+title: "Hugo 0.74.3: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.74.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* publisher: Collect transition attributes as classes [00e00da2](https://github.com/gohugoio/hugo/commit/00e00da233ab4d643de90bafca00f60ee0bbe785) [@bep](https://github.com/bep) [#7509](https://github.com/gohugoio/hugo/issues/7509)
+* Fix Asciidoctor args [45c665d3](https://github.com/gohugoio/hugo/commit/45c665d396ed368261f4a63ceee753c7f6dc5bf9) [@helfper](https://github.com/helfper) [#7493](https://github.com/gohugoio/hugo/issues/7493)
+* Fix date format in internal schema template [a06c06a5](https://github.com/gohugoio/hugo/commit/a06c06a5c202de85ff47792b7468bfaeec2fea12) [@jmooring](https://github.com/jmooring) [#7495](https://github.com/gohugoio/hugo/issues/7495)
+* resources/js: Add option for setting bundle format [0256959a](https://github.com/gohugoio/hugo/commit/0256959a358bb26b983c9d9496862b0fdf387621) [@bep](https://github.com/bep) [#7503](https://github.com/gohugoio/hugo/issues/7503)
+* resources/js: Simplify options handling [eded9ac2](https://github.com/gohugoio/hugo/commit/eded9ac2a05b9a7244c25c70ca8f761b69b33385) [@bep](https://github.com/bep) [#7499](https://github.com/gohugoio/hugo/issues/7499)
+* make sure documentation intro text only appears once [8d725128](https://github.com/gohugoio/hugo/commit/8d72512825b4cee12dc1952004f48fd076a3517b) [@TheHippo](https://github.com/TheHippo)
+* resources/js: Add es5 build target [e81aef0a](https://github.com/gohugoio/hugo/commit/e81aef0a954623e4a19062d1534bd8c2af97102a) [@bep](https://github.com/bep)
+* deps: esbuild v0.6.5 [9f919147](https://github.com/gohugoio/hugo/commit/9f9191471ec501f1f957020726f939c9ef48e193) [@bep](https://github.com/bep)
+
+
+
diff --git a/docs/content/en/news/0.75.0-relnotes/featured.png b/docs/content/en/news/0.75.0-relnotes/featured.png
new file mode 100644
index 000000000..0ee2a713f
--- /dev/null
+++ b/docs/content/en/news/0.75.0-relnotes/featured.png
Binary files differ
diff --git a/docs/content/en/news/0.75.0-relnotes/index.md b/docs/content/en/news/0.75.0-relnotes/index.md
new file mode 100644
index 000000000..3758be13b
--- /dev/null
+++ b/docs/content/en/news/0.75.0-relnotes/index.md
@@ -0,0 +1,166 @@
+
+---
+date: 2020-09-14
+title: "NPM Pack"
+description: "Hugo 0.75 comes with a new \"hugo mod npm pack\" command, several improvements re. Hugo Modules and the Node tools, and more."
+categories: ["Releases"]
+---
+
+Hugo `0.75.0` brings several improvements to Hugo Modules, a new CLI command to bridge the JavaScript dependencies into Hugo, a refresh of the versions of the most important upstream dependencies, and more. There are also some good bug fixes in this release. One notable one is covered by [this commit](https://github.com/gohugoio/hugo/commit/4055c121847847d8bd6b95a928185daee065091b) -- which covers a "stale content scenario in server" when you include content or page data via `GetPage` from a shortcode.
+
+## NPM Pack
+
+The new CLI command is called `hugo mod npm pack`. We have marked it as experimental. It works great, go ahead and use it, but we need to test this out in real projects to get a feel of it; it is likely that it will change/improve in the upcoming versions of Hugo. The command creates a consolidated `package.json` from the project and all of its [theme components](https://gohugo.io/hugo-modules/theme-components/). On version conflicts, the version closest to the project is selected. We may revise that strategy in the future ([minimal version selection](https://about.sourcegraph.com/blog/the-pain-that-minimal-version-selection-solves/) maybe?), but this should give both control and the least amount of surprise for the site owner.
+
+So, why did we do this? JavaScript is often a background actor in a Hugo project, and it doesn't make sense to publish it to a NPM registry. The JS dependencies are mostly build tools (PostCSS, TailwindCSS, Babel), `devDependencies`. This has been working fine as long as you kept the JS config files (including `package.json`) in the project, adding duplication/work when using ready-to-use theme components. These tools work best when you have everything below a single file tree, which is very much different to how [Hugo Modules](https://gohugo.io/hugo-modules/) work. An example of a module with TailwindCSS:
+
+```bash
+tailwind-module
+├── assets
+│   └── css
+├── package.json
+├── postcss.config.js
+└── tailwind.config.js
+```
+
+If you included `tailwind-module` in a Hugo project and processed it with `PostCSS`, this is what happened in earlier versions:
+
+* It used the directory where the `postcss.config.js` lives as a starting point to look for any `require`'d dependency.
+* TailwindCSS would, on the other hand, load its configuration file relative to where `PostCSS` was invoked (the project directory).
+
+The above just doesn't work and here is the technical notes on how we have fixed this:
+
+* The new `hugo mod npm pack` creates a consolidated `package.json` based on files named `package.hugo.json` it finds in the dependency tree (one is created for you the first time you run this command). The end result will always be `package.json`, which works seamlessly with `npm install` invoked automatically by Netlify and other CI vendors.
+* The main project's `node_modules` folder is added to [NODE_PATH](https://medium.com/nafsadh/setting-up-node-path-for-using-global-packages-via-require-642eb711c725) when running `PostCSS`and `Babel`.
+* We have introduced a new mount point `assets/_jsconfig` where we, by default, mount the JS configuration files that we're interested in. This is where Hugo will start looking for these files, and the files' filenames will also be available in the Node environment, so you can do:
+
+```js
+let tailwindConfig = process.env.HUGO_FILE_TAILWIND_CONFIG_JS || './tailwind.config.js';
+const tailwind = require('tailwindcss')(tailwindConfig);
+```
+
+## Module Enhancements
+
+* We have added a `noVendor` Glob pattern config to the module config [d4611c43](https://github.com/gohugoio/hugo/commit/d4611c4322dabfd8d2520232be578388029867db) [@bep](https://github.com/bep) [#7647](https://github.com/gohugoio/hugo/issues/7647). This allows you to only vendor a subset of your dependencies.
+* We have added `ignoreImports` option to module imports config [20af9a07](https://github.com/gohugoio/hugo/commit/20af9a078189ce1e92a1d2047c90fba2a4e91827) [@bep](https://github.com/bep) [#7646](https://github.com/gohugoio/hugo/issues/7646), which allows you to import a module and load its config, but not follow its imports.
+* We have deprecated `--ignoreVendor` in favour of a `--ignoreVendorPaths`, a patch matching Glob pattern [9a1e6d15](https://github.com/gohugoio/hugo/commit/9a1e6d15a31ec667b2ff9cf20e43b1daca61e004) [@bep](https://github.com/bep). A typical use for this would be when you have vendored your dependencies, but want to edit one of them.
+
+
+## Statistics
+
+This release represents **79 contributions by 19 contributors** to the main Hugo code base. [@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@dependabot[bot]](https://github.com/apps/dependabot), [@moorereason](https://github.com/moorereason), and [@jmooring](https://github.com/jmooring) for their ongoing contributions.
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the themes site in pristine condition and to [@davidsneighbour](https://github.com/davidsneighbour), [@coliff](https://github.com/coliff) and [@kaushalmodi](https://github.com/kaushalmodi) for all the great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **24 contributions by 15 contributors**. A special thanks to [@jmooring](https://github.com/jmooring), [@bep](https://github.com/bep), [@jornane](https://github.com/jornane), and [@inwardmovement](https://github.com/inwardmovement) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 46596+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 438+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 352+ [themes](http://themes.gohugo.io/)
+
+## Notes
+* We now build with Go 1.15, which means that we no longer build release binaries for MacOS 32-bit.
+* You may now get an error message about "error calling partial: partials that returns a value needs a non-zero argument.". This error situation was not caught earlier, and comes from a limitation in Go's templates: If you use the `return` keyword in a partial, the argument you pass to that partial (e.g. the ".") cannot be zero (and 0 and "" is considered a zero argument).
+
+## Enhancements
+
+### Templates
+
+* Print layout name if it was specified when showing missing layout file error [9df60b62](https://github.com/gohugoio/hugo/commit/9df60b62f9c4e36a269f0c6e9a69bee9dc691031) [@richtera](https://github.com/richtera) [#7617](https://github.com/gohugoio/hugo/issues/7617)
+* Add limit support to replaceRE [cdfd1c99](https://github.com/gohugoio/hugo/commit/cdfd1c99baa22d69e865294dfcd783811f96c880) [@moorereason](https://github.com/moorereason) [#7586](https://github.com/gohugoio/hugo/issues/7586)
+* Extend merge to accept multiple parameters [047af7cf](https://github.com/gohugoio/hugo/commit/047af7cfe5e9aa740b85e0f9974a2d31a0ef4c08) [@moorereason](https://github.com/moorereason) [#7595](https://github.com/gohugoio/hugo/issues/7595)
+* Add limit option to replace template function [f9ebaaed](https://github.com/gohugoio/hugo/commit/f9ebaaed1be1e4a26eef2aebd2c7554c979f29fa) [@moorereason](https://github.com/moorereason) [#7586](https://github.com/gohugoio/hugo/issues/7586)
+
+### Output
+
+* Respect mediatypes for deploy [12f6a1cd](https://github.com/gohugoio/hugo/commit/12f6a1cdc0aedf4319367af57bda3c94150d6a84) [@satotake](https://github.com/satotake) [#6861](https://github.com/gohugoio/hugo/issues/6861)
+
+### Other
+
+* Set PWD in environment when running the Node apps [377ad87a](https://github.com/gohugoio/hugo/commit/377ad87a51e0ef3619af4fe1be6aeee14c215c0a) [@bep](https://github.com/bep)
+* already -> already [292b0e26](https://github.com/gohugoio/hugo/commit/292b0e26ec9253398f7289dcf096691f63de2d96) [@dholbach](https://github.com/dholbach)
+* Regen docs helper [be2404c8](https://github.com/gohugoio/hugo/commit/be2404c8b17d3275cc82d9e659b9e41dddea7ded) [@bep](https://github.com/bep)
+* Regenerate CLI docs [c8da8eb1](https://github.com/gohugoio/hugo/commit/c8da8eb1f5551e6d141843daab41cb0ddbb0de4b) [@bep](https://github.com/bep)
+* Add "hugo mod npm pack" [85ba9bff](https://github.com/gohugoio/hugo/commit/85ba9bfffba9bfd0b095cb766f72700d4c211e31) [@bep](https://github.com/bep) [#7644](https://github.com/gohugoio/hugo/issues/7644)[#7656](https://github.com/gohugoio/hugo/issues/7656)[#7675](https://github.com/gohugoio/hugo/issues/7675)
+* bump github.com/aws/aws-sdk-go from 1.34.21 to 1.34.22 [4fad43c8](https://github.com/gohugoio/hugo/commit/4fad43c8bd528f1805e78c50cd2e33822351c183) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Add support to linkable line anchors on Chroma [fb0f2cc7](https://github.com/gohugoio/hugo/commit/fb0f2cc718a54fd0774a0367e0a60718b5731de5) [@fjorgemota](https://github.com/fjorgemota) [#7622](https://github.com/gohugoio/hugo/issues/7622)
+* Bump bundled Node.js from v8.12.0 to v12.18.3 [748fd4cb](https://github.com/gohugoio/hugo/commit/748fd4cb0d083de7c173d4b04b874358750fc900) [@anthonyfok](https://github.com/anthonyfok) [#7278](https://github.com/gohugoio/hugo/issues/7278)
+* Change confinement from strict to classic" [b82f440c](https://github.com/gohugoio/hugo/commit/b82f440c59a5bf466c0f4c0431af6099216b0e37) [@anthonyfok](https://github.com/anthonyfok)
+* bump github.com/getkin/kin-openapi from 0.14.0 to 0.22.0 [c8143efa](https://github.com/gohugoio/hugo/commit/c8143efa5d21d20bcf3fa1d4f3fb292e460f90d8) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/aws/aws-sdk-go from 1.34.20 to 1.34.21 [c80132bb](https://github.com/gohugoio/hugo/commit/c80132bbe50f443a8be06dcbc51b855a5a5f8fa2) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/spf13/viper from 1.6.1 to 1.7.1 [75fa4c5c](https://github.com/gohugoio/hugo/commit/75fa4c5c950a43e33dfadfa138f61126b548ac40) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Run "go mod tidy" [fd7969e0](https://github.com/gohugoio/hugo/commit/fd7969e0b09e282d1cd83281bc0f5a62080afe5a) [@bep](https://github.com/bep)
+* Update to Goldmark v1.2.1 [b7fa3c4b](https://github.com/gohugoio/hugo/commit/b7fa3c4bba73f873bda71ba028ef46ce58aad908) [@bep](https://github.com/bep)
+* bump github.com/aws/aws-sdk-go from 1.27.1 to 1.34.20 [746ba803](https://github.com/gohugoio/hugo/commit/746ba803afee8f0f56ee0655cc55087f1822d39c) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/mitchellh/mapstructure from 1.1.2 to 1.3.3 [612b7d37](https://github.com/gohugoio/hugo/commit/612b7d376f1c50abe1fe6fe5188d576c1f5f1743) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Change confinement from strict to classic [6f4ff1a4](https://github.com/gohugoio/hugo/commit/6f4ff1a4617ec42861d255db718286ceaf4f6c8e) [@anthonyfok](https://github.com/anthonyfok)
+* bump github.com/spf13/cobra from 0.0.5 to 0.0.7 [ddeca459](https://github.com/gohugoio/hugo/commit/ddeca45933ab6e58c1b5187ad58dd261c9059009) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/sanity-io/litter from 1.2.0 to 1.3.0 [31f2091f](https://github.com/gohugoio/hugo/commit/31f2091f5803129b97c2a3f6245acc8b788235c7) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Add noVendor to module config [d4611c43](https://github.com/gohugoio/hugo/commit/d4611c4322dabfd8d2520232be578388029867db) [@bep](https://github.com/bep) [#7647](https://github.com/gohugoio/hugo/issues/7647)
+* Add ignoreImports to module imports config [20af9a07](https://github.com/gohugoio/hugo/commit/20af9a078189ce1e92a1d2047c90fba2a4e91827) [@bep](https://github.com/bep) [#7646](https://github.com/gohugoio/hugo/issues/7646)
+* Make ignoreVendor a glob pattern [9a1e6d15](https://github.com/gohugoio/hugo/commit/9a1e6d15a31ec667b2ff9cf20e43b1daca61e004) [@bep](https://github.com/bep) [#7642](https://github.com/gohugoio/hugo/issues/7642)
+* bump github.com/gorilla/websocket from 1.4.1 to 1.4.2 [84adecf9](https://github.com/gohugoio/hugo/commit/84adecf97baa91ab18cb26812fa864b4451d3c5f) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/fsnotify/fsnotify from 1.4.7 to 1.4.9 [573558a0](https://github.com/gohugoio/hugo/commit/573558a078c6aaa671de0224c2d62b6d451d667c) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/kyokomi/emoji [8b10c22f](https://github.com/gohugoio/hugo/commit/8b10c22f822f0874890d2d6df68439450b83ef89) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/markbates/inflect from 1.0.0 to 1.0.4 [195bd124](https://github.com/gohugoio/hugo/commit/195bd1243b350e7a7814e0c893d17c3c408039c7) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/frankban/quicktest from 1.7.2 to 1.10.2 [6a544ece](https://github.com/gohugoio/hugo/commit/6a544ece24c37c98e2e4770fab350d76a0553f6a) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Encode & in livereload injected code [4b430d45](https://github.com/gohugoio/hugo/commit/4b430d456afee9c6da5e5ab46084a05469be1430) [@axllent](https://github.com/axllent)
+* bump github.com/niklasfasching/go-org from 1.3.1 to 1.3.2 [b9f10c75](https://github.com/gohugoio/hugo/commit/b9f10c75cb74c1976fbbf3d9e8dcdd4f3d46e790) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/bep/golibsass from 0.6.0 to 0.7.0 [537c598e](https://github.com/gohugoio/hugo/commit/537c598e9a4d8b8b47f5bffbcf59f72e9a1902c1) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump golang.org/x/text from 0.3.2 to 0.3.3 [67348676](https://github.com/gohugoio/hugo/commit/67348676f703f3ad3f778da1cdfa0fe001e5f925) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/evanw/esbuild from 0.6.5 to 0.6.32 [f9cc0ec7](https://github.com/gohugoio/hugo/commit/f9cc0ec76ee84451583a16a0abb9b09d298c7e00) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/nicksnyder/go-i18n from 1.10.0 to 1.10.1 [b5483eed](https://github.com/gohugoio/hugo/commit/b5483eed6e8c07809fc818192e0ce00d9496565c) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Revert "Update dependabot.yml" [90285f47](https://github.com/gohugoio/hugo/commit/90285f47504f8f2e30254745dd795d4ef007e205) [@bep](https://github.com/bep)
+* Update replaceRE func [f7c1b5fe](https://github.com/gohugoio/hugo/commit/f7c1b5fe1c22ba5f16e3fa442df6a8a70711f23f) [@moorereason](https://github.com/moorereason)
+* Update replace func [183e8626](https://github.com/gohugoio/hugo/commit/183e8626070a5f55c11648082e3060e35231d934) [@moorereason](https://github.com/moorereason)
+* Update merge function [f50ee6bb](https://github.com/gohugoio/hugo/commit/f50ee6bbe5ec0c0a1f7c21da6629faaed23bbe71) [@moorereason](https://github.com/moorereason)
+* Update dependabot.yml [c0655ba6](https://github.com/gohugoio/hugo/commit/c0655ba6ce5db54e8fec2c0e2bef9965b9fb90fc) [@bep](https://github.com/bep)
+* Create dependabot.yml [a2dda22c](https://github.com/gohugoio/hugo/commit/a2dda22c368adbffbba74c8c388cc10299801692) [@bep](https://github.com/bep)
+* Remove Pygments from requirements.txt [910d81a6](https://github.com/gohugoio/hugo/commit/910d81a6927c30ad1126c1bfaab1155b970f6442) [@bep](https://github.com/bep)
+* Regen CLI docs [8c490a73](https://github.com/gohugoio/hugo/commit/8c490a73b3735a0db46abba9bbe15de5ed2167e1) [@bep](https://github.com/bep)
+* Regen docs helper [e6cd9da4](https://github.com/gohugoio/hugo/commit/e6cd9da42d415552ae69e6b0afae823fd5e0003c) [@bep](https://github.com/bep)
+* markup/asciidocext: Revert trace=true [dcf25c0b](https://github.com/gohugoio/hugo/commit/dcf25c0b49eefef0572ec66337a5721bfde22233) [@bep](https://github.com/bep)
+* Update to Go 1.15.1 and 1.14.8 [e820b366](https://github.com/gohugoio/hugo/commit/e820b366b91729313c68be04b413e8894efc4421) [@bep](https://github.com/bep) [#7627](https://github.com/gohugoio/hugo/issues/7627)
+* Add support for .TableOfContents [3ba7c925](https://github.com/gohugoio/hugo/commit/3ba7c92530a80f2f04fe57705ab05c247a6e8437) [@npiganeau](https://github.com/npiganeau) [#1687](https://github.com/gohugoio/hugo/issues/1687)
+* Add a test case [19ef27b9](https://github.com/gohugoio/hugo/commit/19ef27b98edca53c4138b01c0f7c7bfbeb5ffcf1) [@bep](https://github.com/bep) [#7619](https://github.com/gohugoio/hugo/issues/7619)
+* Add SourceMap flag with inline option [c6b661de](https://github.com/gohugoio/hugo/commit/c6b661de826f3ed8768a97a5178b4e020cb2ace1) [@richtera](https://github.com/richtera) [#7607](https://github.com/gohugoio/hugo/issues/7607)
+* Remove logic that hides 'Building Sites' message after build completes [d39636a5](https://github.com/gohugoio/hugo/commit/d39636a5fc6bb82b3e0bd013858c7d116faa0c6b) [@jwarner112](https://github.com/jwarner112) [#7579](https://github.com/gohugoio/hugo/issues/7579)
+* Improve stderr logging for PostCSS and simlilar [ec374204](https://github.com/gohugoio/hugo/commit/ec37420468157284651ef6b04b30420b249179e2) [@bep](https://github.com/bep) [#7584](https://github.com/gohugoio/hugo/issues/7584)
+* Fail on partials with return when given none or a zero argument [ae63c2b5](https://github.com/gohugoio/hugo/commit/ae63c2b5c94f68fbabd5dbd821630e747e8959a4) [@bep](https://github.com/bep) [#7572](https://github.com/gohugoio/hugo/issues/7572)[#7528](https://github.com/gohugoio/hugo/issues/7528)
+* Update to Go 1.15 [e627449c](https://github.com/gohugoio/hugo/commit/e627449c0a2f1d2ffac29357c4f1832fc5462870) [@bep](https://github.com/bep) [#7554](https://github.com/gohugoio/hugo/issues/7554)
+* Revert "Update stale.yml" [c2235c6a](https://github.com/gohugoio/hugo/commit/c2235c6a62d29e0a9e2e274eb340358a445b695d) [@bep](https://github.com/bep)
+* Update stale.yml [4f69ade7](https://github.com/gohugoio/hugo/commit/4f69ade7118302abff97169d17bfa9baac6a711c) [@bep](https://github.com/bep)
+* Remove trailing whitespace and tabs from RSS templates [5f425901](https://github.com/gohugoio/hugo/commit/5f42590144579c318a444ea2ce46d5c3fbbbfe6e) [@solarkennedy](https://github.com/solarkennedy)
+* Add uninstall target [21dbfa1f](https://github.com/gohugoio/hugo/commit/21dbfa1f111ca2f066e06af68f267932ce6cf04f) [@felicianotech](https://github.com/felicianotech)
+* Update Chroma to 0.8.0 [e5591e89](https://github.com/gohugoio/hugo/commit/e5591e89d3a71560b70c5f0ded33f2c9465ffe5a) [@jmooring](https://github.com/jmooring) [#7517](https://github.com/gohugoio/hugo/issues/7517)
+* Update go-org to v1.3.1 [88929bc2](https://github.com/gohugoio/hugo/commit/88929bc23f5a830645c4e2cdac60aa43f480a478) [@niklasfasching](https://github.com/niklasfasching)
+* Collect transition attributes as classes [00e00da2](https://github.com/gohugoio/hugo/commit/00e00da233ab4d643de90bafca00f60ee0bbe785) [@bep](https://github.com/bep) [#7509](https://github.com/gohugoio/hugo/issues/7509)
+* Add option for setting bundle format [0256959a](https://github.com/gohugoio/hugo/commit/0256959a358bb26b983c9d9496862b0fdf387621) [@bep](https://github.com/bep) [#7503](https://github.com/gohugoio/hugo/issues/7503)
+* Simplify options handling [eded9ac2](https://github.com/gohugoio/hugo/commit/eded9ac2a05b9a7244c25c70ca8f761b69b33385) [@bep](https://github.com/bep) [#7499](https://github.com/gohugoio/hugo/issues/7499)
+* make sure documentation intro text only appears once [8d725128](https://github.com/gohugoio/hugo/commit/8d72512825b4cee12dc1952004f48fd076a3517b) [@TheHippo](https://github.com/TheHippo)
+* Add es5 build target [e81aef0a](https://github.com/gohugoio/hugo/commit/e81aef0a954623e4a19062d1534bd8c2af97102a) [@bep](https://github.com/bep)
+* esbuild v0.6.5 [9f919147](https://github.com/gohugoio/hugo/commit/9f9191471ec501f1f957020726f939c9ef48e193) [@bep](https://github.com/bep)
+* Add .Defines to js.Build options [35011bcb](https://github.com/gohugoio/hugo/commit/35011bcb26b6fcfcbd77dc05aa8246ca45b2c2ba) [@bep](https://github.com/bep) [#7489](https://github.com/gohugoio/hugo/issues/7489)
+
+## Fixes
+
+### Other
+
+* Fix AsciiDoc TOC with code [6a848cbc](https://github.com/gohugoio/hugo/commit/6a848cbc3a2487c8b015e715c2de44aef6051080) [@helfper](https://github.com/helfper) [#7649](https://github.com/gohugoio/hugo/issues/7649)
+* markup/asciidocext: Fix broken test [4949bdc2](https://github.com/gohugoio/hugo/commit/4949bdc2ef98a1aebe5536c554d214f15c574a81) [@bep](https://github.com/bep)
+* Fix some change detection issues on server reloads [4055c121](https://github.com/gohugoio/hugo/commit/4055c121847847d8bd6b95a928185daee065091b) [@bep](https://github.com/bep) [#7623](https://github.com/gohugoio/hugo/issues/7623)[#7624](https://github.com/gohugoio/hugo/issues/7624)[#7625](https://github.com/gohugoio/hugo/issues/7625)
+* Fixed misspelled words [ad01aea3](https://github.com/gohugoio/hugo/commit/ad01aea3f426206c2b70bbd97c5d29562dfe954d) [@aurkenb](https://github.com/aurkenb)
+* Fix a typo in CONTRIBUTING.md [f3cb0be3](https://github.com/gohugoio/hugo/commit/f3cb0be35adddfe43423a19116994b53817d97f7) [@capnfabs](https://github.com/capnfabs)
+* Revert "Fix ellipsis display logic in pagination template" [bffc4e12](https://github.com/gohugoio/hugo/commit/bffc4e12fe6d255e1fb8d28943993afc7e99e010) [@jmooring](https://github.com/jmooring)
+* Fix ellipsis display logic in pagination template [2fa851e6](https://github.com/gohugoio/hugo/commit/2fa851e6500752c0cea1da5cfdfc6d99e0a81a71) [@jmooring](https://github.com/jmooring) [#7523](https://github.com/gohugoio/hugo/issues/7523)
+* Fix Asciidoctor args [45c665d3](https://github.com/gohugoio/hugo/commit/45c665d396ed368261f4a63ceee753c7f6dc5bf9) [@helfper](https://github.com/helfper) [#7493](https://github.com/gohugoio/hugo/issues/7493)
+* Fix date format in internal schema template [a06c06a5](https://github.com/gohugoio/hugo/commit/a06c06a5c202de85ff47792b7468bfaeec2fea12) [@jmooring](https://github.com/jmooring) [#7495](https://github.com/gohugoio/hugo/issues/7495)
+* Fix baseof block regression [c91dbe4c](https://github.com/gohugoio/hugo/commit/c91dbe4ce9c30623ba6e686fd17efae935aa0cc5) [@bep](https://github.com/bep) [#7478](https://github.com/gohugoio/hugo/issues/7478)
+
+
+
+
+
diff --git a/docs/content/en/news/0.75.1-relnotes/index.md b/docs/content/en/news/0.75.1-relnotes/index.md
new file mode 100644
index 000000000..6da3d6c65
--- /dev/null
+++ b/docs/content/en/news/0.75.1-relnotes/index.md
@@ -0,0 +1,21 @@
+
+---
+date: 2020-09-15
+title: "Hugo 0.75.1: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.75.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* resources/image: Fix nilpointer for images with no Exif [cd00f7f9](https://github.com/gohugoio/hugo/commit/cd00f7f9661d67951ef16c5198541f09f1c058b4) [@bep](https://github.com/bep) [#7688](https://github.com/gohugoio/hugo/issues/7688)
+* modules/npm: Preserve the original package.json if it exists [214afe4c](https://github.com/gohugoio/hugo/commit/214afe4c1bb9c37bc6159e659d66ba9a268a2849) [@bep](https://github.com/bep) [#7690](https://github.com/gohugoio/hugo/issues/7690)
+* tpl: Fix grammar in the new 'requires non-zero' error message [cd830bb0](https://github.com/gohugoio/hugo/commit/cd830bb0275fc39240861627ef26e146985b5c86) [@nekr0z](https://github.com/nekr0z)
+
+
+
diff --git a/docs/content/en/news/0.76.0-relnotes/featured.png b/docs/content/en/news/0.76.0-relnotes/featured.png
new file mode 100644
index 000000000..a2130ce81
--- /dev/null
+++ b/docs/content/en/news/0.76.0-relnotes/featured.png
Binary files differ
diff --git a/docs/content/en/news/0.76.0-relnotes/index.md b/docs/content/en/news/0.76.0-relnotes/index.md
new file mode 100644
index 000000000..65f3ebb9d
--- /dev/null
+++ b/docs/content/en/news/0.76.0-relnotes/index.md
@@ -0,0 +1,111 @@
+
+---
+date: 2020-10-06
+title: "Multiple Cascades With Page Filters"
+description: "Hugo 0.76.0 brings multiple cascade blocks per page with filters for path, kind and language."
+categories: ["Releases"]
+---
+
+In **Hugo 0.76.0** you can now have a list of [cascade](https://gohugo.io/content-management/front-matter#front-matter-cascade) blocks per page and a new `_target` keyword where you can select which pages to _cascade_ upon using [Glob](https://github.com/gobwas/glob) patterns for a `Page`'s `Kind`, `Lang` and/or `Path`:
+
+```toml
+title ="Blog"
+[[cascade]]
+background = "yosemite.jpg"
+[cascade._target]
+path="/blog/**"
+lang="en"
+kind="page"
+[[cascade]]
+background = "goldenbridge.jpg"
+[cascade._target]
+kind="section"
+```
+
+Tasks that were earlier hard/borderline impossible to do are now simple. One common example would to apply a different template set to nested sections; you can now apply a custom `Type` to these sections using `path="/blog/*/**"` and similar.
+
+A related improvement is that the [build option](https://gohugo.io/content-management/build-options/#readout) `render` is now an enum. In addition to turning on/off rendering of a given page you can tell Hugo to not render, but you want to preserve the `.Permalink`, useful for SPA applications.
+
+This release represents **35 contributions by 8 contributors** to the main Hugo code base. A big shoutout to [@bep](https://github.com/bep), [@ai](https://github.com/ai), and [@jmooring](https://github.com/jmooring) for their ongoing contributions.
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the themes site in pristine condition and to [@davidsneighbour](https://github.com/davidsneighbour), [@coliff](https://github.com/coliff) and [@kaushalmodi](https://github.com/kaushalmodi) for all the great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **11 contributions by 6 contributors**. A special thanks to [@amdw](https://github.com/amdw), [@davidsneighbour](https://github.com/davidsneighbour), [@samrobbins85](https://github.com/samrobbins85), and [@yaythomas](https://github.com/yaythomas) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 47025+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 438+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 354+ [themes](http://themes.gohugo.io/)
+
+## Notes
+
+
+We have added a `force` flag to the [server redirects](https://gohugo.io/getting-started/configuration/#configure-server) configuration, configuring whether to override any existing content in the path or not. This is inline with how [Netlify](https://docs.netlify.com/routing/redirects/#syntax-for-the-netlify-configuration-file) does it.
+
+This is set to default `false`. If you want the old behaviour you need to add this flag to your configuration:
+
+{{< code-toggle file="config" >}}
+[[redirects]]
+from = "/myspa/**"
+to = "/myspa/"
+status = 200
+force = true
+{{< /code-toggle >}}
+
+## Enhancements
+
+### Templates
+
+* Add Do Not Track (dnt) option to Vimeo shortcode [edc5c474](https://github.com/gohugoio/hugo/commit/edc5c4741caaee36ba4d42b5947c195a3e02e6aa) [@joshgerdes](https://github.com/joshgerdes) [#7700](https://github.com/gohugoio/hugo/issues/7700)
+
+### Other
+
+* Regen docshelper [b9318e43](https://github.com/gohugoio/hugo/commit/b9318e4315d9112f727140c0950d8836bf26eb87) [@bep](https://github.com/bep)
+* Make BuildConfig.Render an enum [63493890](https://github.com/gohugoio/hugo/commit/634938908ec8f393b9a05d26b4cfe19ca7abb0d0) [@bep](https://github.com/bep) [#7783](https://github.com/gohugoio/hugo/issues/7783)
+* Allow cascade to be a slice with a _target discriminator [c63db7f1](https://github.com/gohugoio/hugo/commit/c63db7f1f6774a2d661af1d8197c6fe377e3ad25) [@bep](https://github.com/bep) [#7782](https://github.com/gohugoio/hugo/issues/7782)
+* Add force flag to server redirects config [5e2a547c](https://github.com/gohugoio/hugo/commit/5e2a547cb594b31ecb0f089b08db2e15c6dc381a) [@bep](https://github.com/bep) [#7778](https://github.com/gohugoio/hugo/issues/7778)
+* bump github.com/evanw/esbuild from 0.7.8 to 0.7.9 [ee090c09](https://github.com/gohugoio/hugo/commit/ee090c0940cdbf636e3a55a40b41612d92b9c62d) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/tdewolff/minify/v2 from 2.9.5 to 2.9.7 [05e358fd](https://github.com/gohugoio/hugo/commit/05e358fd335bcb5c7bdc2783ab0c17ec42667df6) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/aws/aws-sdk-go from 1.34.34 to 1.35.0 [a2e85d9a](https://github.com/gohugoio/hugo/commit/a2e85d9a75aca59fd720cce6561ff64997858cd2) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/getkin/kin-openapi from 0.22.0 to 0.22.1 [4fba78dd](https://github.com/gohugoio/hugo/commit/4fba78dd0e950742132954a5d24629e4adfa1bb1) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/aws/aws-sdk-go from 1.34.33 to 1.34.34 [c011b466](https://github.com/gohugoio/hugo/commit/c011b4667f3e1e3c6ecea2fe8f251578884c53b6) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/evanw/esbuild from 0.7.7 to 0.7.8 [35348b4b](https://github.com/gohugoio/hugo/commit/35348b4b343600ec24b1eb1a06f4d3c59199df25) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/aws/aws-sdk-go from 1.34.27 to 1.34.33 [34915777](https://github.com/gohugoio/hugo/commit/34915777c2e8bc1457ff90d09cf814d494d9eece) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/evanw/esbuild from 0.7.4 to 0.7.7 [0f4a837e](https://github.com/gohugoio/hugo/commit/0f4a837ed1fd903bb6740b512683528ddb917918) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/tdewolff/minify/v2 from 2.9.4 to 2.9.5 [b395d686](https://github.com/gohugoio/hugo/commit/b395d686e9a77bf4e0d587ee9a3af4ae6e1aee02) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Upgrade to go-i18n v2 [97987e5c](https://github.com/gohugoio/hugo/commit/97987e5c0254e35668dca7f89e67b79553e617c8) [@bep](https://github.com/bep) [#5242](https://github.com/gohugoio/hugo/issues/5242)
+* bump github.com/evanw/esbuild from 0.7.2 to 0.7.4 [4855c186](https://github.com/gohugoio/hugo/commit/4855c186d8f05e5e1b0f681b4aa6482a033df241) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/aws/aws-sdk-go from 1.34.26 to 1.34.27 [6f07ec7e](https://github.com/gohugoio/hugo/commit/6f07ec7e9ec5c43f78100aa36b82786ba0260d75) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/alecthomas/chroma from 0.8.0 to 0.8.1 [4318dc72](https://github.com/gohugoio/hugo/commit/4318dc72f8c562b3bc106cd953d9fce58a93455d) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/evanw/esbuild from 0.7.1 to 0.7.2 [acdc27a3](https://github.com/gohugoio/hugo/commit/acdc27a32de83f32557e7a108797ddbebe4eb464) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Make sure CSS is rebuilt when postcss.config.js or tailwind.config.js changes [3acde9ae](https://github.com/gohugoio/hugo/commit/3acde9ae04fbf4a8c635d404608cb87218a8b803) [@bep](https://github.com/bep) [#7715](https://github.com/gohugoio/hugo/issues/7715)
+* bump github.com/aws/aws-sdk-go from 1.34.22 to 1.34.26 [0bce9770](https://github.com/gohugoio/hugo/commit/0bce97703c17318b13b95d78ba41f40efb06aea7) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Update to github.com/tdewolff/minify v2.9.4 [b254532b](https://github.com/gohugoio/hugo/commit/b254532b52785954c98a473a635b9cea016d8565) [@bep](https://github.com/bep)
+* Bump bundled Node.js from v12.18.3 to v12.18.4 [05a22892](https://github.com/gohugoio/hugo/commit/05a22892921bd4618efe6135ce0d6fe2be545607) [@anthonyfok](https://github.com/anthonyfok)
+* Add preserveTOC option [8e553dcd](https://github.com/gohugoio/hugo/commit/8e553dcdefe50ab534f1199c006ae7754e14bee5) [@helfper](https://github.com/helfper)
+* bump github.com/frankban/quicktest from 1.10.2 to 1.11.0 [d4fc70a3](https://github.com/gohugoio/hugo/commit/d4fc70a3b320a55c4f571eed806d5ad5fdf1ef14) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/evanw/esbuild from 0.6.32 to 0.7.1 [d905abc0](https://github.com/gohugoio/hugo/commit/d905abc002aa6fd260e82063ef1edb8876aa76fd) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/rogpeppe/go-internal from 1.5.1 to 1.6.2 [8f394674](https://github.com/gohugoio/hugo/commit/8f3946746dda444f183ba235288c2b39d0d6a943) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/jdkato/prose from 1.1.1 to 1.2.0 [b01b2564](https://github.com/gohugoio/hugo/commit/b01b2564eefe342c9bf9767ffc256ebd04b94c71) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/spf13/afero from 1.2.2 to 1.4.0 [9fa5ebe2](https://github.com/gohugoio/hugo/commit/9fa5ebe2c42fbb37d066ffcd36bad4d08efe879a) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Preserve the original package.json if it exists [214afe4c](https://github.com/gohugoio/hugo/commit/214afe4c1bb9c37bc6159e659d66ba9a268a2849) [@bep](https://github.com/bep) [#7690](https://github.com/gohugoio/hugo/issues/7690)
+
+## Fixes
+
+### Templates
+
+* Fix grammar in the new 'requires non-zero' error message [cd830bb0](https://github.com/gohugoio/hugo/commit/cd830bb0275fc39240861627ef26e146985b5c86) [@nekr0z](https://github.com/nekr0z)
+
+### Other
+
+* Fix writeStats with quote inside quotes [11134411](https://github.com/gohugoio/hugo/commit/111344113bf8c16ae45528d67ff408da15961727) [@bep](https://github.com/bep) [#7746](https://github.com/gohugoio/hugo/issues/7746)
+* Fix CLI example for PostCSS 8 [0c3d2b67](https://github.com/gohugoio/hugo/commit/0c3d2b67e0af38a4c3935fb04f722a73ec1d3f8b) [@ai](https://github.com/ai)
+* Fix typo in redirect error message [473b6610](https://github.com/gohugoio/hugo/commit/473b6610d51d4a33ba35917f95b0d97ea78dad2b) [@jmooring](https://github.com/jmooring)
+* Fix nilpointer for images with no Exif [cd00f7f9](https://github.com/gohugoio/hugo/commit/cd00f7f9661d67951ef16c5198541f09f1c058b4) [@bep](https://github.com/bep) [#7688](https://github.com/gohugoio/hugo/issues/7688)
+
+
+
+
+
diff --git a/docs/content/en/news/0.76.1-relnotes/index.md b/docs/content/en/news/0.76.1-relnotes/index.md
new file mode 100644
index 000000000..b28b17960
--- /dev/null
+++ b/docs/content/en/news/0.76.1-relnotes/index.md
@@ -0,0 +1,17 @@
+
+---
+date: 2020-10-07
+title: "Hugo 0.76.1: One Bug Fix"
+description: "This version fixes one bug introduced in 0.76.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+With this, we should finally have proper [plural numerals in Russian etc.](https://discourse.gohugo.io/t/0-76-0-i18n-gone-wrong/28689/7?u=bep):
+
+* langs/i18n: Fix i18n .Count regression [f9e798e8](https://github.com/gohugoio/hugo/commit/f9e798e8c4234bd60277e3cb10663ba254d4ecb7) [@bep](https://github.com/bep) [#7787](https://github.com/gohugoio/hugo/issues/7787)
+
+
+
diff --git a/docs/content/en/news/0.76.2-relnotes/index.md b/docs/content/en/news/0.76.2-relnotes/index.md
new file mode 100644
index 000000000..c071fdcac
--- /dev/null
+++ b/docs/content/en/news/0.76.2-relnotes/index.md
@@ -0,0 +1,17 @@
+
+---
+date: 2020-10-07
+title: "Hugo 0.76.2: One Bug Fix"
+description: "This release reverts to an older (and working) version of the JS minifier."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+This is a bug-fix release with one important fix.
+
+* Revert "deps: Update to github.com/tdewolff/minify v2.9.4" [6dd60fca](https://github.com/gohugoio/hugo/commit/6dd60fca73ff96b48064bb8c6586631a2370ffc6) [@bep](https://github.com/bep) [#7792](https://github.com/gohugoio/hugo/issues/7792)
+
+
+
diff --git a/docs/content/en/news/0.76.3-relnotes/index.md b/docs/content/en/news/0.76.3-relnotes/index.md
new file mode 100644
index 000000000..1dc2d8b09
--- /dev/null
+++ b/docs/content/en/news/0.76.3-relnotes/index.md
@@ -0,0 +1,20 @@
+
+---
+date: 2020-10-08
+title: "Hugo 0.76.3: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.76.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* langs/i18n: Add workaround for known language, but missing plural rule error [33e9d79b](https://github.com/gohugoio/hugo/commit/33e9d79b78b32d0cc19693ab3c29ba9941d80f8f) [@bep](https://github.com/bep) [#7798](https://github.com/gohugoio/hugo/issues/7798)
+* langs/i18n: Fix for bare TOML keys [fc6abc39](https://github.com/gohugoio/hugo/commit/fc6abc39c75c152780151c35bc95b12bee01b09c) [@bep](https://github.com/bep)
+
+
+
diff --git a/docs/content/en/news/0.76.4-relnotes/index.md b/docs/content/en/news/0.76.4-relnotes/index.md
new file mode 100644
index 000000000..cb7e8670c
--- /dev/null
+++ b/docs/content/en/news/0.76.4-relnotes/index.md
@@ -0,0 +1,22 @@
+
+---
+date: 2020-10-12
+title: "Hugo 0.76.4: One Bug Fix"
+description: "This version fixes one more i18n regression from 0.76.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* snap: Install postcss v8 explicitly as it is now a peer dependency [e9a7ebaf](https://github.com/gohugoio/hugo/commit/e9a7ebaf67a63ffe5e64c3b3aaefe66feb7f1868) [@anthonyfok](https://github.com/anthonyfok)
+* lang/i18n: Fix for language code case issue with pt-br etc. [50682043](https://github.com/gohugoio/hugo/commit/506820435cacb39ce7bb1835f46a15e913b95828) [@bep](https://github.com/bep) [#7804](https://github.com/gohugoio/hugo/issues/7804)
+* Merge branch 'release-0.76.3' [49972d07](https://github.com/gohugoio/hugo/commit/49972d07925604fea45afe1ace7b5dcc6efc30bf) [@bep](https://github.com/bep)
+* Add merge helper [c98132e3](https://github.com/gohugoio/hugo/commit/c98132e30e01a9638e61bd888c769d30e4e43ad5) [@bep](https://github.com/bep)
+
+
+
diff --git a/docs/content/en/news/0.76.5-relnotes/index.md b/docs/content/en/news/0.76.5-relnotes/index.md
new file mode 100644
index 000000000..063cbbaa9
--- /dev/null
+++ b/docs/content/en/news/0.76.5-relnotes/index.md
@@ -0,0 +1,19 @@
+
+---
+date: 2020-10-14
+title: "Hugo 0.76.5: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.76.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with one important fix.
+
+* Render aliases even if render=link [79a022a1](https://github.com/gohugoio/hugo/commit/79a022a15c5f39b8ae87a94665f14bf1797b605c) [@bep](https://github.com/bep) [#7832](https://github.com/gohugoio/hugo/issues/7832)
+
+
+
diff --git a/docs/content/en/news/0.77.0-relnotes/featured.png b/docs/content/en/news/0.77.0-relnotes/featured.png
new file mode 100644
index 000000000..4245479a5
--- /dev/null
+++ b/docs/content/en/news/0.77.0-relnotes/featured.png
Binary files differ
diff --git a/docs/content/en/news/0.77.0-relnotes/index.md b/docs/content/en/news/0.77.0-relnotes/index.md
new file mode 100644
index 000000000..c9db7ef99
--- /dev/null
+++ b/docs/content/en/news/0.77.0-relnotes/index.md
@@ -0,0 +1,90 @@
+
+---
+date: 2020-10-30
+title: "Hugo 0.77.0: Hugo Modules Improvements and More "
+description: "New Replacements config option for simpler development workflows, ignore errors from getJSON, localized dates, and more."
+categories: ["Releases"]
+---
+
+Hugo `0.77.0` is a small, but useful release. Some notable updates are:
+
+* **time.AsTime** accepts an optional location as second parameter, allowing timezone aware printing of dates.
+* You can now build with `go install -tags nodeploy` if you don't need the **`hugo deploy`** feature.
+* Remote **`getJSON`** errors can now be ignored by adding `ignoreErrors = ["error-remote-getjson"]` to your site config.
+
+There are also several useful **[Hugo Modules](https://gohugo.io/hugo-modules/)** enhancements:
+
+* We have added `Replacements` to the [Module Configuration](https://gohugo.io/hugo-modules/configuration/#module-config-top-level). This should enable a much simpler developer workflow, simpler to set up preview sites for your remote theme etc, as you now can do `env HUGO_MODULE_REPLACEMENTS="github.com/bep/myprettytheme -> ../.." hugo` and similar.
+* The module `Path` for local modules can now be absolute for imports defined in the project.
+
+This release represents **38 contributions by 11 contributors** to the main Hugo code base. [@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@moorereason](https://github.com/moorereason), and [@anthonyfok](https://github.com/anthonyfok) for their ongoing contributions.
+
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the themes site in pristine condition and to [@davidsneighbour](https://github.com/davidsneighbour), [@coliff](https://github.com/coliff) and [@kaushalmodi](https://github.com/kaushalmodi) for all the great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **3 contributions by 3 contributors**.
+
+Hugo now has:
+
+* 47530+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 438+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 361+ [themes](http://themes.gohugo.io/)
+
+## Enhancements
+
+### Templates
+
+* Refactor time.AsTime location implementation [807db97a](https://github.com/gohugoio/hugo/commit/807db97af83ff61b022cbc8af80b9dc9cdb8dd43) [@moorereason](https://github.com/moorereason)
+* Update Hugo time to support optional [LOCATION] parameter [26eeb291](https://github.com/gohugoio/hugo/commit/26eeb2914720929d2d778f14d6a4bf737014e9e3) [@virgofx](https://github.com/virgofx)
+* Improve layout path construction [acfa1538](https://github.com/gohugoio/hugo/commit/acfa153863d6ff2acf17ffb4395e05d102229905) [@moorereason](https://github.com/moorereason)
+* Test all lookup permutations in TestLayout [78b26d53](https://github.com/gohugoio/hugo/commit/78b26d538c716d463b30c23de7df5eaa4d5504fd) [@moorereason](https://github.com/moorereason)
+* Reformat TestLayout table [28179bd5](https://github.com/gohugoio/hugo/commit/28179bd55619847f46ca0ffd316ef52fc9c96f1e) [@moorereason](https://github.com/moorereason)
+
+### Other
+
+* Allow absolute paths for project imports [beabc8d9](https://github.com/gohugoio/hugo/commit/beabc8d998249ecc5dd522d696dc6233a29131c2) [@bep](https://github.com/bep) [#7910](https://github.com/gohugoio/hugo/issues/7910)
+* Regen docs helper [332b65e4](https://github.com/gohugoio/hugo/commit/332b65e4ccb6ac0d606de2a1b23f5189c72542be) [@bep](https://github.com/bep)
+* Add module.replacements [173187e2](https://github.com/gohugoio/hugo/commit/173187e2633f3fc037c83e1e3de2902ae3c93b92) [@bep](https://github.com/bep) [#7904](https://github.com/gohugoio/hugo/issues/7904)[#7908](https://github.com/gohugoio/hugo/issues/7908)
+* Do not call CDN service invalidation when executing a dry run deployment [56a34350](https://github.com/gohugoio/hugo/commit/56a343507ca28254edb891bc1c21b6c8ca017982) [@zemanel](https://github.com/zemanel) [#7884](https://github.com/gohugoio/hugo/issues/7884)
+* Pass editor arguments from newContentEditor correctly [d48a98c4](https://github.com/gohugoio/hugo/commit/d48a98c477a818d28008d9771050d2681e63e880) [@bhavin192](https://github.com/bhavin192)
+* Bump github.com/spf13/cobra from 0.0.7 to 1.1.1 [3261678f](https://github.com/gohugoio/hugo/commit/3261678f63fd66810db77ccaf9a0c0e426be5380) [@anthonyfok](https://github.com/anthonyfok)
+* Allow optional "nodeploy" tag to exclude deploy command from bin [f465c5c3](https://github.com/gohugoio/hugo/commit/f465c5c3079261eb7fa513e2d2793851b9c52b83) [@emhagman](https://github.com/emhagman) [#7826](https://github.com/gohugoio/hugo/issues/7826)
+* Allow cascade _target to work with non toml fm [3400aff2](https://github.com/gohugoio/hugo/commit/3400aff2588cbf9dd4629c05537d16b019d0fdf5) [@gwatts](https://github.com/gwatts) [#7874](https://github.com/gohugoio/hugo/issues/7874)
+* Allow getJSON errors to be ignored [fdfa4a5f](https://github.com/gohugoio/hugo/commit/fdfa4a5fe62232f65f1dd8d6fe0c500374228788) [@bep](https://github.com/bep) [#7866](https://github.com/gohugoio/hugo/issues/7866)
+* bump github.com/evanw/esbuild from 0.7.15 to 0.7.18 [8cbe2bbf](https://github.com/gohugoio/hugo/commit/8cbe2bbfad6aa4de267921e24e166d4addf47040) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Revert "Add benchmark for building docs site" [b886fa46](https://github.com/gohugoio/hugo/commit/b886fa46bb92916152476cfac45c7a5ee5e5820a) [@bep](https://github.com/bep)
+* Avoid making unnecessary allocation [14bce18a](https://github.com/gohugoio/hugo/commit/14bce18a6c5aca8cb3e70a74d5045ca8b2358fee) [@moorereason](https://github.com/moorereason)
+* Add benchmark for building docs site [837e084b](https://github.com/gohugoio/hugo/commit/837e084bbe53e9e2e6cd471d2a3daf273a874d92) [@moorereason](https://github.com/moorereason)
+* Always show page number when 5 pages or less [08e4f9ff](https://github.com/gohugoio/hugo/commit/08e4f9ff9cc448d5fea9b8a62a23aed8aad0d047) [@moorereason](https://github.com/moorereason) [#7523](https://github.com/gohugoio/hugo/issues/7523)
+* bump github.com/frankban/quicktest from 1.11.0 to 1.11.1 [f033d9f0](https://github.com/gohugoio/hugo/commit/f033d9f01d13d8cd08205ccfaa09919ed15dca77) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/evanw/esbuild from 0.7.14 to 0.7.15 [59fe2794](https://github.com/gohugoio/hugo/commit/59fe279424c66ac6a89cafee01a5b2e34dbcc1fb) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Merge branch 'release-0.76.5' [62119022](https://github.com/gohugoio/hugo/commit/62119022d1be41e423ef3bcf467a671ce6c4f7dd) [@bep](https://github.com/bep)
+* Render aliases even if render=link [79a022a1](https://github.com/gohugoio/hugo/commit/79a022a15c5f39b8ae87a94665f14bf1797b605c) [@bep](https://github.com/bep) [#7832](https://github.com/gohugoio/hugo/issues/7832)
+* Render aliases even if render=link [ead5799f](https://github.com/gohugoio/hugo/commit/ead5799f7ea837fb2ca1879a6d37ba364e53827f) [@bep](https://github.com/bep) [#7832](https://github.com/gohugoio/hugo/issues/7832)
+* bump github.com/spf13/afero from 1.4.0 to 1.4.1 [d57be113](https://github.com/gohugoio/hugo/commit/d57be113243be4b76310d4476fbb7525d1452658) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/evanw/esbuild from 0.7.9 to 0.7.14 [d0705966](https://github.com/gohugoio/hugo/commit/d070596694a3edbf42fc315bb326505aa39fce90) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Update to Go 1.15 and Alpine 3.12 [f5ea359d](https://github.com/gohugoio/hugo/commit/f5ea359dd34bf59a2944f1d9667838202af13c93) [@ducksecops](https://github.com/ducksecops)
+* Install postcss v8 explicitly as it is now a peer dependency [e9a7ebaf](https://github.com/gohugoio/hugo/commit/e9a7ebaf67a63ffe5e64c3b3aaefe66feb7f1868) [@anthonyfok](https://github.com/anthonyfok)
+* Merge branch 'release-0.76.3' [49972d07](https://github.com/gohugoio/hugo/commit/49972d07925604fea45afe1ace7b5dcc6efc30bf) [@bep](https://github.com/bep)
+* Add merge helper [c98132e3](https://github.com/gohugoio/hugo/commit/c98132e30e01a9638e61bd888c769d30e4e43ad5) [@bep](https://github.com/bep)
+* Add workaround for known language, but missing plural rule error [33e9d79b](https://github.com/gohugoio/hugo/commit/33e9d79b78b32d0cc19693ab3c29ba9941d80f8f) [@bep](https://github.com/bep) [#7798](https://github.com/gohugoio/hugo/issues/7798)
+* Update to github.com/tdewolff/minify v2.9.4" [6dd60fca](https://github.com/gohugoio/hugo/commit/6dd60fca73ff96b48064bb8c6586631a2370ffc6) [@bep](https://github.com/bep) [#7792](https://github.com/gohugoio/hugo/issues/7792)
+
+## Fixes
+
+### Templates
+
+* Fix reflection bug in merge [6d95dc9d](https://github.com/gohugoio/hugo/commit/6d95dc9d74681cba53b46e79c6e1d58d27fcdfb0) [@moorereason](https://github.com/moorereason) [#7899](https://github.com/gohugoio/hugo/issues/7899)
+
+### Other
+
+* Fix setting HUGO_MODULE_PROXY etc. via env vars [8a1c637c](https://github.com/gohugoio/hugo/commit/8a1c637c4494751046142e0ef345fce38fc1431b) [@bep](https://github.com/bep) [#7903](https://github.com/gohugoio/hugo/issues/7903)
+* Fix for language code case issue with pt-br etc. [50682043](https://github.com/gohugoio/hugo/commit/506820435cacb39ce7bb1835f46a15e913b95828) [@bep](https://github.com/bep) [#7804](https://github.com/gohugoio/hugo/issues/7804)
+* Fix for bare TOML keys [fc6abc39](https://github.com/gohugoio/hugo/commit/fc6abc39c75c152780151c35bc95b12bee01b09c) [@bep](https://github.com/bep)
+* Fix i18n .Count regression [f9e798e8](https://github.com/gohugoio/hugo/commit/f9e798e8c4234bd60277e3cb10663ba254d4ecb7) [@bep](https://github.com/bep) [#7787](https://github.com/gohugoio/hugo/issues/7787)
+* Fix typo in 0.76.0 release note [ee56efff](https://github.com/gohugoio/hugo/commit/ee56efffcb3f81120b0d3e0297b4fb5966124354) [@digitalcraftsman](https://github.com/digitalcraftsman)
+
+
+
+
+
diff --git a/docs/content/en/news/0.78.0-relnotes/featured.png b/docs/content/en/news/0.78.0-relnotes/featured.png
new file mode 100644
index 000000000..36ae0ac95
--- /dev/null
+++ b/docs/content/en/news/0.78.0-relnotes/featured.png
Binary files differ
diff --git a/docs/content/en/news/0.78.0-relnotes/index.md b/docs/content/en/news/0.78.0-relnotes/index.md
new file mode 100644
index 000000000..25b0fd4d8
--- /dev/null
+++ b/docs/content/en/news/0.78.0-relnotes/index.md
@@ -0,0 +1,50 @@
+
+---
+date: 2020-11-03
+title: "Hugo 0.78.0: Full Hugo Modules Support in js.Build"
+description: "Resolve JavaScript imports top-down in the layered filesystem, pass parameters from template to JS, new JS intellisense helper, improved JS build errors."
+categories: ["Releases"]
+---
+
+This release finally brings full [Hugo Modules](https://gohugo.io/hugo-modules/) support to [js.Build](https://gohugo.io/hugo-pipes/js/), curtsy of he new plugin API in the really, really fast [ESBuild](https://github.com/evanw/esbuild) by [@evanw](https://github.com/evanw).
+
+Some notes on the improvements in this release:
+
+* Now `js.Build` fully supports the virtual union filesystem in [Hugo Modules](https://gohugo.io/hugo-modules/). Any import inside your JavaScript components will resolve starting from the top component mount inside `/assets` with a fallback to the traditional "JS way" (`node_modules` etc.)
+* You can now pass configuration data from the templates to your scripts via a new `params` option.
+* Hugo now writes a `jsconfig.json` file inside `/assets` (you can turn it off) with import mappings to help editors such as VS Code with intellisense/navigation, which is especially useful when there is no common root and the source lives inside some temporary directory.
+* We have also improved the build errors you get from `js.Build`. In server mode you will get a preview of the failing lines and in the console you will get a link to the location.
+
+Read more about this in [the documentation](https://gohugo.io/hugo-pipes/js/), but a short usage example would look like:
+
+In the template:
+
+```go-html-template
+{{ $js := resources.Get "js/main.js" | js.Build (dict "params" (dict "api" "https://example.org/api" ) }}
+```
+
+And then in a JavaScript component:
+
+```js
+import * as params from '@params';
+
+// Will resolve to one of `hello.{js,ts,tsx,jsx}` inside `assets/my/module`.
+import { hello } from 'my/module/hello';
+
+var api = params.api;
+
+hello();
+
+```
+
+## Changes
+
+* Add avoidTDZ option [3b2fe3cd](https://github.com/gohugoio/hugo/commit/3b2fe3cd33b74166c3debec9826826f2b5a54fd9) [@bep](https://github.com/bep) [#7865](https://github.com/gohugoio/hugo/issues/7865)
+* Make js.Build fully support modules [85e4dd73](https://github.com/gohugoio/hugo/commit/85e4dd7370eae97ae367e596aa6a10ba42fd4b7c) [@bep](https://github.com/bep) [#7816](https://github.com/gohugoio/hugo/issues/7816)[#7777](https://github.com/gohugoio/hugo/issues/7777)[#7916](https://github.com/gohugoio/hugo/issues/7916)
+* Generate tsconfig files [3089fc0b](https://github.com/gohugoio/hugo/commit/3089fc0ba171be14670b19439bc2eab6b077b6c3) [@richtera](https://github.com/richtera) [#7777](https://github.com/gohugoio/hugo/issues/7777)
+
+
+
+
+
+
diff --git a/docs/content/en/news/0.78.1-relnotes/index.md b/docs/content/en/news/0.78.1-relnotes/index.md
new file mode 100644
index 000000000..168c1bbcd
--- /dev/null
+++ b/docs/content/en/news/0.78.1-relnotes/index.md
@@ -0,0 +1,20 @@
+
+---
+date: 2020-11-05
+title: "Hugo 0.78.1: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.78.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+The main fix in this release is that of dependency resolution for package.json/node_modules in theme components. See [the documentation](https://gohugo.io/hugo-pipes/js/#include-dependencies-in-packagejson--node_modules) for more information.
+
+* Disable NPM test on Travis on Windows [3437174c](https://github.com/gohugoio/hugo/commit/3437174c3a7b96925b82b351ac87530b4fa796a5) [@bep](https://github.com/bep)
+* travis: Install nodejs on Windows [f66302ca](https://github.com/gohugoio/hugo/commit/f66302ca0579171ffd1730eb8f33dd05af3d9a00) [@bep](https://github.com/bep)
+* js: Remove external source map option [944150ba](https://github.com/gohugoio/hugo/commit/944150bafbbb5c3e807ba3688174e70764dbdc64) [@bep](https://github.com/bep) [#7932](https://github.com/gohugoio/hugo/issues/7932)
+* js: Misc fixes [bf2837a3](https://github.com/gohugoio/hugo/commit/bf2837a314eaf70135791984a423b0b09f58741d) [@bep](https://github.com/bep) [#7924](https://github.com/gohugoio/hugo/issues/7924)[#7923](https://github.com/gohugoio/hugo/issues/7923)
+
+
+
diff --git a/docs/content/en/news/0.78.2-relnotes/index.md b/docs/content/en/news/0.78.2-relnotes/index.md
new file mode 100644
index 000000000..4714373e9
--- /dev/null
+++ b/docs/content/en/news/0.78.2-relnotes/index.md
@@ -0,0 +1,28 @@
+
+---
+date: 2020-11-13
+title: "Hugo 0.78.2: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.78.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* js: Let ESBuild handle all imports from node_modules [78f227b6](https://github.com/gohugoio/hugo/commit/78f227b664d86c30fbb25f7a953b7ef8f2dacf13) [@bep](https://github.com/bep) [#7948](https://github.com/gohugoio/hugo/issues/7948)
+* build(deps): bump github.com/evanw/esbuild from 0.8.5 to 0.8.6 [5e03f644](https://github.com/gohugoio/hugo/commit/5e03f644a4507f51bdbcdb42b65ce4e99095374f) [@dependabot[bot]](https://github.com/apps/dependabot)
+* build(deps): bump github.com/evanw/esbuild from 0.8.4 to 0.8.5 [a92ef20f](https://github.com/gohugoio/hugo/commit/a92ef20ff6e43ba05844539b60782e8190712cdc) [@dependabot[bot]](https://github.com/apps/dependabot)
+* build(deps): bump github.com/getkin/kin-openapi from 0.22.1 to 0.26.0 [0d54a844](https://github.com/gohugoio/hugo/commit/0d54a844061e808dd5b4ff4874b2e4bd9df4d556) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Update GH docs to say "main" as default branch [943f3c93](https://github.com/gohugoio/hugo/commit/943f3c932f5f67ab52bf8e0636e57751dc9b1891) [@maco](https://github.com/maco)
+* Updated year in header [4f20bf29](https://github.com/gohugoio/hugo/commit/4f20bf29eb246a2e65508175fdd5f25b44e98370) [@AdamKorcz](https://github.com/AdamKorcz)
+* Added first fuzzer [4c613d5d](https://github.com/gohugoio/hugo/commit/4c613d5d5d60b80a262e968ae8a4525eba8619a2) [@AdamKorcz](https://github.com/AdamKorcz)
+* build(deps): bump github.com/frankban/quicktest from 1.11.1 to 1.11.2 [82a182e5](https://github.com/gohugoio/hugo/commit/82a182e52c4165b4f51d0cc8ef0f21df5d628c69) [@dependabot[bot]](https://github.com/apps/dependabot)
+* build(deps): bump golang.org/x/text from 0.3.3 to 0.3.4 [dfc662b2](https://github.com/gohugoio/hugo/commit/dfc662b2086430dde96c18ccb6b92bba4f1be428) [@dependabot[bot]](https://github.com/apps/dependabot)
+* build(deps): bump github.com/evanw/esbuild from 0.8.3 to 0.8.4 [2f0917cc](https://github.com/gohugoio/hugo/commit/2f0917cc014557e201a9348664736d608a7fa131) [@dependabot[bot]](https://github.com/apps/dependabot)
+
+
+
diff --git a/docs/content/en/news/0.79.0-relnotes/featured.png b/docs/content/en/news/0.79.0-relnotes/featured.png
new file mode 100644
index 000000000..f1b7686da
--- /dev/null
+++ b/docs/content/en/news/0.79.0-relnotes/featured.png
Binary files differ
diff --git a/docs/content/en/news/0.79.0-relnotes/index.md b/docs/content/en/news/0.79.0-relnotes/index.md
new file mode 100644
index 000000000..23ed1ef2e
--- /dev/null
+++ b/docs/content/en/news/0.79.0-relnotes/index.md
@@ -0,0 +1,71 @@
+
+---
+date: 2020-11-27
+title: "Hugo 0.79.0: Black Friday Edition"
+description: "Hugo 0.79.0 brings .Params to menus, snake_case support for OS environment config, and a refresh of upstream dependencies (Chroma, ESBuild etc.)."
+categories: ["Releases"]
+---
+
+Hugo `0.79.0` is a small, but useful release. You can now set custom `.Params` in your [menu](https://gohugo.io/content-management/menus/) configuration, and you can now also override deeply nested snake_cased configuration variables with [OS environment variables](https://gohugo.io/getting-started/configuration/#configure-with-environment-variables). Other than that we have refreshed all the core upstream dependencies. A special thanks to [@alecthomas](https://github.com/alecthomas) (some new [Chroma lexers](https://github.com/alecthomas/chroma/releases/tag/v0.8.2) and fixes) and [@evanw](https://github.com/evanw) ([ESBuild](https://github.com/evanw/esbuild)).
+
+This release represents **33 contributions by 8 contributors** to the main Hugo code base. [@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout [@AdamKorcz](https://github.com/AdamKorcz), and [@davidejones](https://github.com/davidejones) for their ongoing contributions. And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the themes site in pristine condition and to [@davidsneighbour](https://github.com/davidsneighbour), [@coliff](https://github.com/coliff) and [@kaushalmodi](https://github.com/kaushalmodi) for all the great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **13 contributions by 11 contributors**. A special thanks to [@Valac01](https://github.com/Valac01), [@bep](https://github.com/bep), [@mhansen](https://github.com/mhansen), and [@chanjarster](https://github.com/chanjarster) for their work on the documentation site.
+
+Hugo now has:
+
+* 48392+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 437+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 361+ [themes](http://themes.gohugo.io/)
+
+## Enhancements
+
+### Templates
+
+* Add more layout lookup tests [34061706](https://github.com/gohugoio/hugo/commit/34061706e6a9631d92ae3d01e0458eee7bc251cc) [@moorereason](https://github.com/moorereason) [#7964](https://github.com/gohugoio/hugo/issues/7964)
+
+### Other
+
+* bump gopkg.in/yaml.v2 from 2.3.0 to 2.4.0 [17e0bbe8](https://github.com/gohugoio/hugo/commit/17e0bbe821b508cea936bcfd5c1c181bdb8ad70d) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Allow setting the delimiter used for setting config via OS env, e.g. HUGO_ [7e223b3b](https://github.com/gohugoio/hugo/commit/7e223b3baaef68d6e6f99e28f162362c81deffba) [@bep](https://github.com/bep) [#7829](https://github.com/gohugoio/hugo/issues/7829)
+* Update to github.com/evanw/esbuild 0.8.11 to 0.8.14 [8a6e7060](https://github.com/gohugoio/hugo/commit/8a6e70605350255920100c5c085bb9ea6576d972) [@bep](https://github.com/bep) [#7986](https://github.com/gohugoio/hugo/issues/7986)
+* bump github.com/google/go-cmp from 0.5.2 to 0.5.3 [6f7633df](https://github.com/gohugoio/hugo/commit/6f7633df7d2c06e32eac628f9c7809dfee75eeed) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Remove unneeded meta tag from blog example [a546059a](https://github.com/gohugoio/hugo/commit/a546059a9c0b4541f6c9e292f2bb065c1b6115d9) [@coliff](https://github.com/coliff)
+* bump github.com/getkin/kin-openapi from 0.30.0 to 0.31.0 [b5d906e3](https://github.com/gohugoio/hugo/commit/b5d906e31e716328e2c0fbbdbfe6fc5b2ff98886) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Regen docshelper [fd70bdaf](https://github.com/gohugoio/hugo/commit/fd70bdafe7dc5d18c9a2f22c49acc3a8de376e8e) [@bep](https://github.com/bep)
+* Add menu params [8f5c9a74](https://github.com/gohugoio/hugo/commit/8f5c9a747fcebb02bb99f5de272046411eb15370) [@davidejones](https://github.com/davidejones) [#7951](https://github.com/gohugoio/hugo/issues/7951)
+* Preserve url set in frontmatter without sanitizing [e4fcb672](https://github.com/gohugoio/hugo/commit/e4fcb672ed8bae21fd9780292b54fea3040dd877) [@satotake](https://github.com/satotake) [#6007](https://github.com/gohugoio/hugo/issues/6007)
+* Add file deleted by accident [18c13adc](https://github.com/gohugoio/hugo/commit/18c13adcd46bdff963311fdba9eaa9b5a299106e) [@bep](https://github.com/bep) [#7972](https://github.com/gohugoio/hugo/issues/7972)
+* Regenerate docshelper" [20a35374](https://github.com/gohugoio/hugo/commit/20a35374a3c90adb32a90a5f671afb15165210be) [@bep](https://github.com/bep) [#7972](https://github.com/gohugoio/hugo/issues/7972)
+* Regenerate docshelper [caf16c20](https://github.com/gohugoio/hugo/commit/caf16c20853947138883f6460682e19733895f52) [@bep](https://github.com/bep)
+* Update to Chroma v0.8.2 [b298c06e](https://github.com/gohugoio/hugo/commit/b298c06e0551e3eba10b39ae5668b7a6a36a08a7) [@bep](https://github.com/bep) [#7970](https://github.com/gohugoio/hugo/issues/7970)
+* bump github.com/evanw/esbuild from 0.8.8 to 0.8.11 [55e290af](https://github.com/gohugoio/hugo/commit/55e290af41ad1c92af13679d4a84d64985d41456) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/getkin/kin-openapi from 0.26.0 to 0.30.0 [506a190a](https://github.com/gohugoio/hugo/commit/506a190a82cc5564012a1228b4179637b64e58eb) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/evanw/esbuild from 0.8.6 to 0.8.8 [fc81de64](https://github.com/gohugoio/hugo/commit/fc81de643934e84bb1e1392f6200559ee0ada9b6) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Let ESBuild handle all imports from node_modules [78f227b6](https://github.com/gohugoio/hugo/commit/78f227b664d86c30fbb25f7a953b7ef8f2dacf13) [@bep](https://github.com/bep) [#7948](https://github.com/gohugoio/hugo/issues/7948)
+* bump github.com/evanw/esbuild from 0.8.5 to 0.8.6 [5e03f644](https://github.com/gohugoio/hugo/commit/5e03f644a4507f51bdbcdb42b65ce4e99095374f) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/evanw/esbuild from 0.8.4 to 0.8.5 [a92ef20f](https://github.com/gohugoio/hugo/commit/a92ef20ff6e43ba05844539b60782e8190712cdc) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/getkin/kin-openapi from 0.22.1 to 0.26.0 [0d54a844](https://github.com/gohugoio/hugo/commit/0d54a844061e808dd5b4ff4874b2e4bd9df4d556) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Update GH docs to say "main" as default branch [943f3c93](https://github.com/gohugoio/hugo/commit/943f3c932f5f67ab52bf8e0636e57751dc9b1891) [@maco](https://github.com/maco)
+* Updated year in header [4f20bf29](https://github.com/gohugoio/hugo/commit/4f20bf29eb246a2e65508175fdd5f25b44e98370) [@AdamKorcz](https://github.com/AdamKorcz)
+* Added first fuzzer [4c613d5d](https://github.com/gohugoio/hugo/commit/4c613d5d5d60b80a262e968ae8a4525eba8619a2) [@AdamKorcz](https://github.com/AdamKorcz)
+* bump github.com/frankban/quicktest from 1.11.1 to 1.11.2 [82a182e5](https://github.com/gohugoio/hugo/commit/82a182e52c4165b4f51d0cc8ef0f21df5d628c69) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump golang.org/x/text from 0.3.3 to 0.3.4 [dfc662b2](https://github.com/gohugoio/hugo/commit/dfc662b2086430dde96c18ccb6b92bba4f1be428) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/evanw/esbuild from 0.8.3 to 0.8.4 [2f0917cc](https://github.com/gohugoio/hugo/commit/2f0917cc014557e201a9348664736d608a7fa131) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Disable NPM test on Travis on Windows [3437174c](https://github.com/gohugoio/hugo/commit/3437174c3a7b96925b82b351ac87530b4fa796a5) [@bep](https://github.com/bep)
+* Install nodejs on Windows [f66302ca](https://github.com/gohugoio/hugo/commit/f66302ca0579171ffd1730eb8f33dd05af3d9a00) [@bep](https://github.com/bep)
+* Remove external source map option [944150ba](https://github.com/gohugoio/hugo/commit/944150bafbbb5c3e807ba3688174e70764dbdc64) [@bep](https://github.com/bep) [#7932](https://github.com/gohugoio/hugo/issues/7932)
+
+## Fixes
+
+### Other
+
+* Fix memory usage in writeStats [d162bbd7](https://github.com/gohugoio/hugo/commit/d162bbd7990b6a523bdadcd10bf60fcb43ecf270) [@bep](https://github.com/bep) [#7945](https://github.com/gohugoio/hugo/issues/7945)
+* Fix server rebuild issue with partials referenced from render hooks [e442cf30](https://github.com/gohugoio/hugo/commit/e442cf30a215e33b49ce588a9098147282bd883f) [@bep](https://github.com/bep) [#7990](https://github.com/gohugoio/hugo/issues/7990)
+* Misc fixes [bf2837a3](https://github.com/gohugoio/hugo/commit/bf2837a314eaf70135791984a423b0b09f58741d) [@bep](https://github.com/bep) [#7924](https://github.com/gohugoio/hugo/issues/7924)[#7923](https://github.com/gohugoio/hugo/issues/7923)
+
+
+
+
+
diff --git a/docs/content/en/news/0.79.1-relnotes/index.md b/docs/content/en/news/0.79.1-relnotes/index.md
new file mode 100644
index 000000000..2a3f32765
--- /dev/null
+++ b/docs/content/en/news/0.79.1-relnotes/index.md
@@ -0,0 +1,22 @@
+
+---
+date: 2020-12-19
+title: "Hugo 0.79.1: One Security Patch for Hugo on Windows"
+description: "Disallow running of e.g. Pandoc in the current directory."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+Hugo depends on Go's `os/exec` for certain features, e.g. for rendering of Pandoc documents if these binaries are found in the system `%PATH%` on Windows. However, if a malicious file with the same name (`exe` or `bat`) was found in the current working directory at the time of running `hugo`, the malicious command would be invoked instead of the system one.
+
+Windows users who ran `hugo` inside untrusted Hugo sites were affected.
+
+The origin of this issue comes from Go, see https://github.com/golang/go/issues/38736
+
+We have fixed this in Hugo by [using](https://github.com/gohugoio/hugo/commit/4a8267d64a40564aced0695bca05249da17b0eab) a patched version of `exec.LookPath` from https://github.com/cli/safeexec (thanks to [@mislav](https://github.com/mislav) for the implementation).
+
+Thanks to [@Ry0taK](https://github.com/Ry0taK) for the bug report.
+
+
diff --git a/docs/content/en/news/0.8-relnotes/index.md b/docs/content/en/news/0.8-relnotes/index.md
new file mode 100644
index 000000000..6da6b9671
--- /dev/null
+++ b/docs/content/en/news/0.8-relnotes/index.md
@@ -0,0 +1,21 @@
+---
+date: 2013-08-03T15:26:04Z
+description: "Hugo 0.8 added support for pretty URLs, support for TOML and YAML, better Windows compatibility, and more!"
+title: "Hugo 0.8"
+categories: ["Releases"]
+---
+
+**Please read the docs as a few options have changed in this release:**
+
+- Added support for pretty URLs (filename/index.html vs filename.html)
+- Hugo supports a destination directory
+- Will efficiently sync content in static to destination directory
+- Cleaned up options.. now with support for short and long options
+- Added support for TOML
+- Added support for YAML
+- Added support for Previous & Next
+- Added support for indexes for the indexes
+- Better Windows compatibility
+- Support for series
+- Adding verbose output
+- Loads of bugfixes
diff --git a/docs/content/en/news/0.80.0-relnotes/featured.png b/docs/content/en/news/0.80.0-relnotes/featured.png
new file mode 100644
index 000000000..09308b04c
--- /dev/null
+++ b/docs/content/en/news/0.80.0-relnotes/featured.png
Binary files differ
diff --git a/docs/content/en/news/0.80.0-relnotes/index.md b/docs/content/en/news/0.80.0-relnotes/index.md
new file mode 100644
index 000000000..1c390b685
--- /dev/null
+++ b/docs/content/en/news/0.80.0-relnotes/index.md
@@ -0,0 +1,79 @@
+
+---
+date: 2020-12-31
+title: "Hugo 0.80: Last Release of 2020!"
+description: "This release brings Dart Sass support, a new image overlay function, and more."
+categories: ["Releases"]
+---
+
+The last Hugo release of the year brings a new [images.Overlay](https://gohugo.io/functions/images/#overlay) filter to overlay an image on top of another, e.g. for watermarking, and [Dart Sass](https://gohugo.io/hugo-pipes/scss-sass/#options) support.
+
+This release represents **29 contributions by 12 contributors** to the main Hugo code base. [@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@moorereason](https://github.com/moorereason), and [@davidsneighbour](https://github.com/davidsneighbour) for their ongoing contributions.
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the themes site in pristine condition and to [@davidsneighbour](https://github.com/davidsneighbour), [@coliff](https://github.com/coliff) and [@kaushalmodi](https://github.com/kaushalmodi) for all the great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **22 contributions by 6 contributors**. A special thanks to [@bep](https://github.com/bep), [@D4D3VD4V3](https://github.com/D4D3VD4V3), [@chrischute](https://github.com/chrischute), and [@azenk](https://github.com/azenk) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 49096+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 436+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 369+ [themes](http://themes.gohugo.io/)
+
+## Notes
+
+* Resource.ResourceType now always returns MIME's main type [81975f84](https://github.com/gohugoio/hugo/commit/81975f847dc19c21c2321207645807771db97fab) [@bep](https://github.com/bep) [#8052](https://github.com/gohugoio/hugo/issues/8052)
+
+## Enhancements
+
+### Templates
+
+* Regenerate templates [a2d146ec](https://github.com/gohugoio/hugo/commit/a2d146ec32a26ccca9ffa68d3c840ec5b08cca96) [@bep](https://github.com/bep)
+* tpl/internal/go_templates: Revert formatting [718e09ed](https://github.com/gohugoio/hugo/commit/718e09ed4bc538f4fccc4337f99e9eb86aea31f3) [@bep](https://github.com/bep)
+* Add title parameter to YouTube shortcode [4fc918e0](https://github.com/gohugoio/hugo/commit/4fc918e02cfc7f260d6312248ff9d33e95b27943) [@azenk](https://github.com/azenk)
+
+### Output
+
+* Add missing OutputStyle option [428b0b32](https://github.com/gohugoio/hugo/commit/428b0b32947ec16f8585b8c33548d72fd4fb025d) [@bep](https://github.com/bep)
+
+### Other
+
+* Allow Dart Sass transformations to be cached on disk [ffbf5e45](https://github.com/gohugoio/hugo/commit/ffbf5e45fa0617a37950b34deab63736b1c6b1d3) [@bep](https://github.com/bep)
+* Dart Sass only supports `expanded` and `compressed` [48994ea7](https://github.com/gohugoio/hugo/commit/48994ea766f08332f57c0f8e74843b6c8617c3d1) [@bep](https://github.com/bep)
+* Update emoji import paths and version [1f7e9f73](https://github.com/gohugoio/hugo/commit/1f7e9f733397b891cefc725ffc94ba901e70425a) [@moorereason](https://github.com/moorereason)
+* Add Dart Sass support [cea15740](https://github.com/gohugoio/hugo/commit/cea157402365f34a69882110a4208999728007a6) [@bep](https://github.com/bep) [#7380](https://github.com/gohugoio/hugo/issues/7380)[#8102](https://github.com/gohugoio/hugo/issues/8102)
+* GroupByParamDate now supports datetimes [f9f77978](https://github.com/gohugoio/hugo/commit/f9f779786edcefc4449a14cfc04dd93379f71373) [@zerok](https://github.com/zerok)
+* Skip para test when not on CI [a9718f44](https://github.com/gohugoio/hugo/commit/a9718f44cd6c938448fc697f0ec720ebed7d863a) [@bep](https://github.com/bep) [#6963](https://github.com/gohugoio/hugo/issues/6963)
+* Update SECURITY.md [f802bb23](https://github.com/gohugoio/hugo/commit/f802bb236a60dcc6c64d53edac634891272e0c07) [@bep](https://github.com/bep)
+* Improve LookPath [10ae7c32](https://github.com/gohugoio/hugo/commit/10ae7c3210cd1add14d3750aa9512a87df0e1146) [@bep](https://github.com/bep)
+* create a SECURITY.md [ae2d1bd5](https://github.com/gohugoio/hugo/commit/ae2d1bd52df0099190ef9195666d0788708b0385) [@davidsneighbour](https://github.com/davidsneighbour) [#8074](https://github.com/gohugoio/hugo/issues/8074)
+* Show more detail on failed time test [8103188b](https://github.com/gohugoio/hugo/commit/8103188b9b9e8eeb3bcb53c8b64e2b83397e82ae) [@moorereason](https://github.com/moorereason) [#6963](https://github.com/gohugoio/hugo/issues/6963)
+* Add images.Overlay filter [3ba147e7](https://github.com/gohugoio/hugo/commit/3ba147e702a5ae0af6e8b3b0296d256c3246a546) [@bep](https://github.com/bep) [#8057](https://github.com/gohugoio/hugo/issues/8057)[#4595](https://github.com/gohugoio/hugo/issues/4595)[#6731](https://github.com/gohugoio/hugo/issues/6731)
+* Bump github.com/spf13/cobra from 0.15.0 to 0.20.0 [c84ad8db](https://github.com/gohugoio/hugo/commit/c84ad8db821c10225c0e603c6ec920c67b6ce36f) [@anthonyfok](https://github.com/anthonyfok)
+* configure proper link to discourse.gohugo.io (#8020) [4e0acb89](https://github.com/gohugoio/hugo/commit/4e0acb89b793d8895dc53eb8887be27430c3ab31) [@davidsneighbour](https://github.com/davidsneighbour)
+* Format code with gofumpt [d90e37e0](https://github.com/gohugoio/hugo/commit/d90e37e0c6e812f9913bf256c9c81aa05b7a08aa) [@bep](https://github.com/bep)
+* bump github.com/evanw/esbuild from 0.8.15 to 0.8.17 [32471b57](https://github.com/gohugoio/hugo/commit/32471b57bde51c55a15dbf1db75d6e5f7232c347) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Use --baseURL path for live-reload URL [0ad378b0](https://github.com/gohugoio/hugo/commit/0ad378b09cea90a2a70d7ff06af668abe22475a1) [@sth](https://github.com/sth) [#6595](https://github.com/gohugoio/hugo/issues/6595)
+* bump github.com/getkin/kin-openapi from 0.31.0 to 0.32.0 [907d9e92](https://github.com/gohugoio/hugo/commit/907d9e92682ed56a57a2206ae9bd9a985b3e1870) [@dependabot[bot]](https://github.com/apps/dependabot)
+
+## Fixes
+
+### Templates
+
+* Fix series detection in opengraph [d2d493ab](https://github.com/gohugoio/hugo/commit/d2d493ab5d6a054001a8448ea0de2949dac4b30e) [@Humberd](https://github.com/Humberd)
+* Fix substr when length parameter is zero [5862fd2a](https://github.com/gohugoio/hugo/commit/5862fd2a60b5d16f2437bd8c8b7bac700de5f047) [@moorereason](https://github.com/moorereason) [#7993](https://github.com/gohugoio/hugo/issues/7993)
+* Refactor and fix substr logic [64789fb5](https://github.com/gohugoio/hugo/commit/64789fb5dcf8326f14f13d69a2576ae3aa2bbbaa) [@moorereason](https://github.com/moorereason) [#7993](https://github.com/gohugoio/hugo/issues/7993)
+
+### Other
+
+* Fix Resource.ResourceType so it always returns MIME's main type [81975f84](https://github.com/gohugoio/hugo/commit/81975f847dc19c21c2321207645807771db97fab) [@bep](https://github.com/bep) [#8052](https://github.com/gohugoio/hugo/issues/8052)
+* hugolib/paths: Fix typo [ce96895d](https://github.com/gohugoio/hugo/commit/ce96895debb67df20ae24fb5f0f04b98a30cc6cc) [@mayocream](https://github.com/mayocream)
+* Fix minor typos [04b89857](https://github.com/gohugoio/hugo/commit/04b89857e104ac7dcbf9fc65d8d4f1a1178123e6) [@phil-davis](https://github.com/phil-davis)
+* Fix BenchmarkMergeByLanguage [21fa1e86](https://github.com/gohugoio/hugo/commit/21fa1e86f2aa929fb0983a0cc3dc4e271ea1cc54) [@bep](https://github.com/bep) [#7914](https://github.com/gohugoio/hugo/issues/7914)
+* Fix RelURL and AbsURL when path starts with language [aebfe156](https://github.com/gohugoio/hugo/commit/aebfe156fb2f27057e61b2e50c7576e6b06dab58) [@ivan-meridianbanc-com](https://github.com/ivan-meridianbanc-com)
+
+
+
+
+
diff --git a/docs/content/en/news/0.81.0-relnotes/featured.jpg b/docs/content/en/news/0.81.0-relnotes/featured.jpg
new file mode 100644
index 000000000..e1488c5c2
--- /dev/null
+++ b/docs/content/en/news/0.81.0-relnotes/featured.jpg
Binary files differ
diff --git a/docs/content/en/news/0.81.0-relnotes/index.md b/docs/content/en/news/0.81.0-relnotes/index.md
new file mode 100644
index 000000000..ebcbb5ac7
--- /dev/null
+++ b/docs/content/en/news/0.81.0-relnotes/index.md
@@ -0,0 +1,223 @@
+
+---
+date: 2021-02-19
+title: "Hugo 0.81.0: The Smorgasbord Edition"
+description: "Attribute lists (e.g. CSS classes) for Markdown blocks, newlines in template actions/blocks, native Apple M1 ARM64 binary, it's faster, and more …"
+categories: ["Releases"]
+toc: true
+---
+
+**Hugo 0.81.0** is the first release of this decade, it is the fastest to date, and it's packed with useful new features.
+
+## Newlines in Template Actions and Commands
+
+You can now have newlines within template actions and pipelines. This means that you can now do this and similar:
+
+```go-html-template
+{{ dict
+ "country" "Norway"
+ "population" "5 millions"
+ "language" "Norwegian"
+ "language_code" "nb"
+ "weather" "freezing cold"
+ "capitol" "Oslo"
+ "largest_city" "Oslo"
+ "currency" "Norwegian krone"
+ "dialing_code" "+47"
+}}
+```
+
+Note that the above construction will fail in Hugo versions < `0.81.0`.
+
+## Attribute Lists after Markdown Blocks
+
+Hugo already supports adding attribute lists (e.g CSS classes) after titles. We now also allow adding attribute lists after Markdown blocks, e.g. tables, lists, paragraphs etc.:
+
+```
+> foo
+> bar
+{.myclass}
+```
+
+See [Configure Goldmark](https://gohugo.io/getting-started/configuration-markup#goldmark).
+
+## Performance
+
+This release is the fastest Hugo to date, see details in the benchmarks below. This is [especially true](https://gohugo.io/news/hugo-macos-intel-vs-arm/) if you use the new ARM64 MacOS binary (only works on [Apple M1](https://en.wikipedia.org/wiki/Apple_M1) devices).
+
+### Site Building and Rebuilding Benchmarks: v0.80.0 => v0.81.0
+
+```
+name old time/op new time/op delta
+SiteNew/Edit_Bundle_with_image-16 771µs ± 6% 817µs ± 7% ~ (p=0.200 n=4+4)
+SiteNew/Edit_Bundle_with_JSON_file-16 728µs ± 2% 737µs ± 1% ~ (p=0.343 n=4+4)
+SiteNew/Edit_Tags_and_categories-16 16.6ms ± 5% 16.3ms ± 3% ~ (p=0.686 n=4+4)
+SiteNew/Edit_Canonify_URLs-16 29.4ms ± 6% 26.9ms ± 4% -8.37% (p=0.029 n=4+4)
+SiteNew/Edit_Deep_content_tree-16 33.8ms ± 3% 31.2ms ± 3% -7.53% (p=0.029 n=4+4)
+SiteNew/Edit_Many_HTML_templates-16 12.1ms ± 2% 11.6ms ± 1% -3.94% (p=0.029 n=4+4)
+SiteNew/Edit_Page_collections-16 20.6ms ± 1% 19.8ms ± 0% -3.57% (p=0.029 n=4+4)
+SiteNew/Edit_List_terms-16 3.91ms ± 1% 3.81ms ± 2% -2.52% (p=0.029 n=4+4)
+SiteNew/Regular_Bundle_with_image-16 6.15ms ± 2% 5.53ms ± 2% -10.11% (p=0.029 n=4+4)
+SiteNew/Regular_Bundle_with_JSON_file-16 6.26ms ± 4% 5.76ms ± 4% -7.98% (p=0.029 n=4+4)
+SiteNew/Regular_Tags_and_categories-16 26.2ms ± 2% 25.5ms ± 1% -2.42% (p=0.029 n=4+4)
+SiteNew/Regular_Canonify_URLs-16 34.7ms ± 8% 33.8ms ± 9% ~ (p=0.486 n=4+4)
+SiteNew/Regular_Deep_content_tree-16 43.8ms ± 1% 43.4ms ± 6% ~ (p=0.343 n=4+4)
+SiteNew/Regular_Many_HTML_templates-16 21.5ms ± 1% 19.7ms ± 2% -8.54% (p=0.029 n=4+4)
+SiteNew/Regular_Page_collections-16 30.7ms ± 2% 28.2ms ± 1% -8.23% (p=0.029 n=4+4)
+SiteNew/Regular_List_terms-16 9.70ms ± 1% 8.95ms ± 0% -7.72% (p=0.029 n=4+4)
+
+name old alloc/op new alloc/op delta
+SiteNew/Edit_Bundle_with_image-16 437kB ± 0% 428kB ± 0% -2.02% (p=0.029 n=4+4)
+SiteNew/Edit_Bundle_with_JSON_file-16 216kB ± 0% 207kB ± 0% -4.20% (p=0.029 n=4+4)
+SiteNew/Edit_Tags_and_categories-16 10.4MB ± 0% 9.7MB ± 0% -6.08% (p=0.029 n=4+4)
+SiteNew/Edit_Canonify_URLs-16 84.4MB ± 0% 85.2MB ± 0% +0.87% (p=0.029 n=4+4)
+SiteNew/Edit_Deep_content_tree-16 26.6MB ± 0% 25.6MB ± 0% -3.57% (p=0.029 n=4+4)
+SiteNew/Edit_Many_HTML_templates-16 6.03MB ± 0% 5.75MB ± 0% -4.57% (p=0.029 n=4+4)
+SiteNew/Edit_Page_collections-16 14.8MB ± 0% 14.2MB ± 0% -4.10% (p=0.029 n=4+4)
+SiteNew/Edit_List_terms-16 1.83MB ± 0% 1.73MB ± 0% -5.51% (p=0.029 n=4+4)
+SiteNew/Regular_Bundle_with_image-16 1.93MB ± 0% 1.90MB ± 0% -1.43% (p=0.029 n=4+4)
+SiteNew/Regular_Bundle_with_JSON_file-16 1.72MB ± 0% 1.69MB ± 0% -1.72% (p=0.029 n=4+4)
+SiteNew/Regular_Tags_and_categories-16 14.3MB ± 0% 13.6MB ± 0% -4.80% (p=0.029 n=4+4)
+SiteNew/Regular_Canonify_URLs-16 89.7MB ± 0% 90.2MB ± 0% +0.61% (p=0.029 n=4+4)
+SiteNew/Regular_Deep_content_tree-16 30.4MB ± 0% 29.2MB ± 0% -3.95% (p=0.029 n=4+4)
+SiteNew/Regular_Many_HTML_templates-16 9.26MB ± 0% 8.94MB ± 0% -3.47% (p=0.029 n=4+4)
+SiteNew/Regular_Page_collections-16 18.5MB ± 0% 17.7MB ± 0% -4.25% (p=0.029 n=4+4)
+SiteNew/Regular_List_terms-16 4.00MB ± 0% 3.85MB ± 0% -3.55% (p=0.029 n=4+4)
+
+name old allocs/op new allocs/op delta
+SiteNew/Edit_Bundle_with_image-16 3.99k ± 0% 4.07k ± 0% +1.80% (p=0.029 n=4+4)
+SiteNew/Edit_Bundle_with_JSON_file-16 3.99k ± 0% 4.06k ± 0% +1.81% (p=0.029 n=4+4)
+SiteNew/Edit_Tags_and_categories-16 241k ± 0% 245k ± 0% +1.67% (p=0.029 n=4+4)
+SiteNew/Edit_Canonify_URLs-16 364k ± 0% 321k ± 0% -11.78% (p=0.029 n=4+4)
+SiteNew/Edit_Deep_content_tree-16 264k ± 0% 268k ± 0% +1.53% (p=0.029 n=4+4)
+SiteNew/Edit_Many_HTML_templates-16 90.3k ± 0% 91.0k ± 0% +0.83% (p=0.029 n=4+4)
+SiteNew/Edit_Page_collections-16 153k ± 0% 156k ± 0% +1.46% (p=0.029 n=4+4)
+SiteNew/Edit_List_terms-16 30.4k ± 0% 30.9k ± 0% +1.54% (p=0.029 n=4+4)
+SiteNew/Regular_Bundle_with_image-16 23.3k ± 0% 23.1k ± 0% -0.57% (p=0.029 n=4+4)
+SiteNew/Regular_Bundle_with_JSON_file-16 23.3k ± 0% 23.1k ± 0% -0.59% (p=0.029 n=4+4)
+SiteNew/Regular_Tags_and_categories-16 284k ± 0% 288k ± 0% +1.58% (p=0.029 n=4+4)
+SiteNew/Regular_Canonify_URLs-16 387k ± 0% 343k ± 0% -11.41% (p=0.029 n=4+4)
+SiteNew/Regular_Deep_content_tree-16 307k ± 0% 309k ± 0% +0.52% (p=0.029 n=4+4)
+SiteNew/Regular_Many_HTML_templates-16 129k ± 0% 129k ± 0% +0.35% (p=0.029 n=4+4)
+SiteNew/Regular_Page_collections-16 199k ± 0% 200k ± 0% +0.55% (p=0.029 n=4+4)
+SiteNew/Regular_List_terms-16 53.5k ± 0% 53.4k ± 0% -0.18% (p=0.029 n=4+4)
+```
+
+
+
+## Native Arm Binary for Apple M1
+
+We finally provide native Hugo binary for [Apple M1](https://en.wikipedia.org/wiki/Apple_M1) devices. Download the file named `hugo_0.81.0_macOS-ARM64.tar.gz`.
+
+## JavaScript Building
+
+* Add `inject` config option allowing you to automatically replace a global variable with an import from another file relative to `assets`. [32b86076](https://github.com/gohugoio/hugo/commit/32b86076ee1c0833b538b84e1cc9e6d79babecf2) [@bep](https://github.com/bep) [#8164](https://github.com/gohugoio/hugo/issues/8164)
+* Add `shims` config option to swap out a component with another. A common use case is to load dependencies like React from a CDN (with _shims_) when in production, but running with the full bundled `node_modules` dependency during development [e19a046c](https://github.com/gohugoio/hugo/commit/e19a046c4be9b0654884259b9df94f41561e4fc3) [@bep](https://github.com/bep) [#8165](https://github.com/gohugoio/hugo/issues/8165)
+* Add external source map support to js.Build and Babel [2c8b5d91](https://github.com/gohugoio/hugo/commit/2c8b5d9165011c4b24b494e661ae60dfc7bb7d1b) [@richtera](https://github.com/richtera) [#8132](https://github.com/gohugoio/hugo/issues/8132)
+* Fix nilpointer in js.Build error handling [a1fe552f](https://github.com/gohugoio/hugo/commit/a1fe552fc9e622a15010a94281f604eb85bebd84) [@bep](https://github.com/bep) [#8162](https://github.com/gohugoio/hugo/issues/8162)
+
+Also see [js.Build Options](https://gohugo.io/hugo-pipes/js#options).
+
+## Hugo Modules
+
+There are several [Hugo Modules](https://gohugo.io/hugo-modules/)-related improvements in this release:
+
+* Allow absolute paths for any modules resolved via project replacement [3a5ee0d2](https://github.com/gohugoio/hugo/commit/3a5ee0d2d6e344b12efc7a97354ec3480c4c578b) [@bep](https://github.com/bep) [#8240](https://github.com/gohugoio/hugo/issues/8240)
+* Add config option modules.vendorClosest [bdfbcf6f](https://github.com/gohugoio/hugo/commit/bdfbcf6f4b4ab53a617ab76f72e8aa28da6067de) [@bep](https://github.com/bep) [#8235](https://github.com/gohugoio/hugo/issues/8235)[#8242](https://github.com/gohugoio/hugo/issues/8242)
+* Throw an error running hugo mod vendor on mountless module [4ffaeaf1](https://github.com/gohugoio/hugo/commit/4ffaeaf15536596c94dc73b393ca7894e3bd5e2c) [@bep](https://github.com/bep)
+
+## Minify - Keep Comments
+
+Keep comments when running `hugo --minify` with a new setting:
+
+{{< code-toggle file="config" >}}
+[minify.tdewolff.html]
+keepComments = true
+{{< /code-toggle >}}
+
+The default value for this setting is `false`.
+
+## Statistics
+
+This release represents **59 contributions by 14 contributors** to the main Hugo code base.[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@moorereason](https://github.com/moorereason) and [@benmezger](https://github.com/benmezger) for their ongoing contributions. And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the themes site in pristine condition and to [@davidsneighbour](https://github.com/davidsneighbour), [@coliff](https://github.com/coliff) and [@kaushalmodi](https://github.com/kaushalmodi) for all the great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **20 contributions by 13 contributors**. A special thanks to [@bep](https://github.com/bep), [@gagarine](https://github.com/gagarine), [@fridde](https://github.com/fridde), and [@NicoHood](https://github.com/NicoHood) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 50152+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 435+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 370+ [themes](http://themes.gohugo.io/)
+
+
+## Notes
+
+* We have updated to Beta 6 of the Dart Sass Protocol which is not backwards compatible, so if you use Dart Sass you need to also update [that binary](https://gohugo.io/hugo-pipes/scss-sass/#options).
+* `hugo gen autocomplete` now default to `stdout`; you can change this by setting `--completionfile`. As an added bonus we now also support auto completion for zsh, fish and powershell.
+
+## Changelog
+
+* Make the build green again [fe77f743](https://github.com/gohugoio/hugo/commit/fe77f7434bc0d7a9b54af69014eb28dbea2b236b) [@bep](https://github.com/bep)
+* Regenerate internal templates [c6080655](https://github.com/gohugoio/hugo/commit/c60806550a21062936b0d02708c9a8c240cafa9d) [@bep](https://github.com/bep)
+* Update date logic of opengraph and schema internal templates [ffd9dac4](https://github.com/gohugoio/hugo/commit/ffd9dac4218b8f1709de04f7131ca661715fc481) [@djatwood](https://github.com/djatwood)
+* Synch Go templates fork with Go 1.16dev [cf3e077d](https://github.com/gohugoio/hugo/commit/cf3e077da304e6f4d7c22f8296e1382335d055c6) [@bep](https://github.com/bep)
+* Exclude pages without Permalink from sitemap [4867cd1d](https://github.com/gohugoio/hugo/commit/4867cd1dea34ee53fb73cede2bcff4792e470104) [@Jaza](https://github.com/Jaza)
+* Add default user-agent header for getJSON requests [35def0ae](https://github.com/gohugoio/hugo/commit/35def0ae4560bb86febd12663bf5602485ad4b20) [@peacecwz](https://github.com/peacecwz)
+* remove 1mb limit for readFile. [ee9c1367](https://github.com/gohugoio/hugo/commit/ee9c1367635eab446fcf9baa1ab8b4066882548e) [@avdva](https://github.com/avdva)
+* Do not return errors in substr for out-of-bounds cases [8a26ab0b](https://github.com/gohugoio/hugo/commit/8a26ab0bc5dd9fa34e1362681fc08b0e522cd4ea) [@moorereason](https://github.com/moorereason) [#8113](https://github.com/gohugoio/hugo/issues/8113)
+* Add missing test scenario for strings.Substr [788e50ad](https://github.com/gohugoio/hugo/commit/788e50ad3a55609ed49ce0b7ee98965c181fe9cf) [@moorereason](https://github.com/moorereason)
+* Regen CLI docs [9e99950c](https://github.com/gohugoio/hugo/commit/9e99950c6ebf82c85ee52a8de85e284a506a2f90) [@bep](https://github.com/bep)
+* Regen docs helper [1b364b00](https://github.com/gohugoio/hugo/commit/1b364b003f68df3adb1644769fe69810d85e3897) [@bep](https://github.com/bep)
+* Run go mod tidy [88b93a09](https://github.com/gohugoio/hugo/commit/88b93a09dc79518d7fbd14681eeeea3411dab1dd) [@bep](https://github.com/bep)
+* Add arm64 to Darwinextended build and add vendorInfo [29fb456c](https://github.com/gohugoio/hugo/commit/29fb456c9e63ee1a2314bf4a7227a5146e7f9b31) [@bep](https://github.com/bep) [#8003](https://github.com/gohugoio/hugo/issues/8003)
+* Update Travis, GitHub, CircleCI and Snap to Go 1.16 (only) [718fba7d](https://github.com/gohugoio/hugo/commit/718fba7d63424017cb3b9774c33e7acc69c68af6) [@bep](https://github.com/bep)
+* Pull in latest Go 1.16 template source [e77b2e3a](https://github.com/gohugoio/hugo/commit/e77b2e3aa0b24c5ca960905772335b27845705eb) [@bep](https://github.com/bep)
+* Add breaking tests for "map read and map write in templates" [b5485aea](https://github.com/gohugoio/hugo/commit/b5485aeae7e1f73f18835fbf0b8eedc305d450d0) [@bep](https://github.com/bep) [#7293](https://github.com/gohugoio/hugo/issues/7293)
+* Pull in latest Go template source [ccb822eb](https://github.com/gohugoio/hugo/commit/ccb822eb5afad210432eb46ec3727e3536a87f58) [@bep](https://github.com/bep)
+* Expand template newline testcase to commands [21e9eb18](https://github.com/gohugoio/hugo/commit/21e9eb18acc2a2f8d8b97f096615b836e65091a2) [@bep](https://github.com/bep)
+* Add a test case for Go 1.16 template action newlines [ae57ba6a](https://github.com/gohugoio/hugo/commit/ae57ba6a9dee87347fa2d5e8c6865f390989622e) [@bep](https://github.com/bep)
+* Update github.com/tdewolff/minify/v2 v2.6.2 => v2.9.13 [66beac99](https://github.com/gohugoio/hugo/commit/66beac99c64b5e5fe7bec0bda437ba5858d49a36) [@bep](https://github.com/bep) [#8258](https://github.com/gohugoio/hugo/issues/8258)
+* bump github.com/frankban/quicktest from 1.11.2 to 1.11.3 [968dd7a7](https://github.com/gohugoio/hugo/commit/968dd7a711063934af84bd1c017c58a1e66f51bb) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/getkin/kin-openapi from 0.32.0 to 0.39.0 [38f29e81](https://github.com/gohugoio/hugo/commit/38f29e817f2058ed56f96fb8e628315f3ab5d7f9) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/aws/aws-sdk-go from 1.36.33 to 1.37.11 [cd87813a](https://github.com/gohugoio/hugo/commit/cd87813aa0327ec7a7e6f023dadcea5a3e6a9fef) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/sanity-io/litter from 1.3.0 to 1.5.0 [4e815b06](https://github.com/gohugoio/hugo/commit/4e815b063e4af70f21b6796688025675253bec65) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/olekukonko/tablewriter from 0.0.4 to 0.0.5 [652a59d3](https://github.com/gohugoio/hugo/commit/652a59d38523e23e39376cba9c554abbe87b198d) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Update to esbuild v0.8.46 [84f0ec7f](https://github.com/gohugoio/hugo/commit/84f0ec7f80855dcc9b123418bcbf816b5efa2cdf) [@bep](https://github.com/bep)
+* Add config option modules.vendorClosest [bdfbcf6f](https://github.com/gohugoio/hugo/commit/bdfbcf6f4b4ab53a617ab76f72e8aa28da6067de) [@bep](https://github.com/bep) [#8235](https://github.com/gohugoio/hugo/issues/8235)[#8242](https://github.com/gohugoio/hugo/issues/8242)
+* bump google.golang.org/api from 0.26.0 to 0.40.0 [a9b0fea6](https://github.com/gohugoio/hugo/commit/a9b0fea6a3aec658912a8db134824dee4a9b6369) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Change version string format and add VendorInfo to help with issue triaging [e8df0977](https://github.com/gohugoio/hugo/commit/e8df09774534abe6131eb455b4f5c614fb438983) [@anthonyfok](https://github.com/anthonyfok)
+* Allow absolute paths for any modules resolved via project replacement [3a5ee0d2](https://github.com/gohugoio/hugo/commit/3a5ee0d2d6e344b12efc7a97354ec3480c4c578b) [@bep](https://github.com/bep) [#8240](https://github.com/gohugoio/hugo/issues/8240)
+* Throw an error running hugo mod vendor on mountless module [4ffaeaf1](https://github.com/gohugoio/hugo/commit/4ffaeaf15536596c94dc73b393ca7894e3bd5e2c) [@bep](https://github.com/bep)
+* Add PowerShell completion support [5f621df2](https://github.com/gohugoio/hugo/commit/5f621df2570236a08cd21e8dd1c60502ec3db328) [@anthonyfok](https://github.com/anthonyfok) [#8122](https://github.com/gohugoio/hugo/issues/8122)
+* Refer to mage instead of make in comment regarding commitHash [7118f89c](https://github.com/gohugoio/hugo/commit/7118f89cf35246767e26dcb5e747469ffa61f473) [@anthonyfok](https://github.com/anthonyfok)
+* Add attributes support for blocks (tables etc.) [2681633d](https://github.com/gohugoio/hugo/commit/2681633db8d340d2dc59cf801419874d572fc704) [@bep](https://github.com/bep) [#7548](https://github.com/gohugoio/hugo/issues/7548)
+* Update to Goldmark v1.3.2 [1b247282](https://github.com/gohugoio/hugo/commit/1b2472825664763c0b88807b0d193e73553423ec) [@bep](https://github.com/bep) [#8143](https://github.com/gohugoio/hugo/issues/8143)
+* Update to Dart Sass Protocol beta6 [441b11be](https://github.com/gohugoio/hugo/commit/441b11beec3cf0371ff9a2898f220a0bf00faf8c) [@bep](https://github.com/bep)
+* Write to stdout by default [d36fd5b3](https://github.com/gohugoio/hugo/commit/d36fd5b3ee6989203de2a29b1de67521fd1c8ea5) [@benmezger](https://github.com/benmezger)
+* Remove powershell support [a7c515e1](https://github.com/gohugoio/hugo/commit/a7c515e1b56e8cab34ca2647b4116904df9c8250) [@benmezger](https://github.com/benmezger)
+* Add zsh, fish and powershell completion support [216b00f3](https://github.com/gohugoio/hugo/commit/216b00f358dbfa36b34ff515d7f4f88387156db8) [@benmezger](https://github.com/benmezger) [#4296](https://github.com/gohugoio/hugo/issues/4296)
+* Enable NPM tests on Windows [14494379](https://github.com/gohugoio/hugo/commit/144943798c2a199ed256ae901a14d3c918055eba) [@bep](https://github.com/bep) [#8196](https://github.com/gohugoio/hugo/issues/8196)
+* Update to esbuild v0.8.39 [440fdb0e](https://github.com/gohugoio/hugo/commit/440fdb0eb96b3230ddefee732b0c1afe52a37228) [@bep](https://github.com/bep) [#8189](https://github.com/gohugoio/hugo/issues/8189)
+* Trim whitespace in elements written to hugo_stats.json [b2a48dce](https://github.com/gohugoio/hugo/commit/b2a48dce58abd3a661aa198af3277ef12f44cce0) [@pmatiash](https://github.com/pmatiash) [#7958](https://github.com/gohugoio/hugo/issues/7958)
+* bump github.com/aws/aws-sdk-go from 1.35.0 to 1.36.33 [2f9dadae](https://github.com/gohugoio/hugo/commit/2f9dadae4072960bbaec3656347e20eec238288c) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Remove mention of a file size limit for readFile [ed3071b7](https://github.com/gohugoio/hugo/commit/ed3071b753c8dec83a2c054624e49b204553ecd3) [@avdva](https://github.com/avdva)
+* Add Inject config option [32b86076](https://github.com/gohugoio/hugo/commit/32b86076ee1c0833b538b84e1cc9e6d79babecf2) [@bep](https://github.com/bep) [#8164](https://github.com/gohugoio/hugo/issues/8164)
+* Add Shims option [e19a046c](https://github.com/gohugoio/hugo/commit/e19a046c4be9b0654884259b9df94f41561e4fc3) [@bep](https://github.com/bep) [#8165](https://github.com/gohugoio/hugo/issues/8165)
+* bump github.com/spf13/afero from 1.4.1 to 1.5.1 [07ad283f](https://github.com/gohugoio/hugo/commit/07ad283f686904e5835f621d73ed342ba2a48eb3) [@eclipseo](https://github.com/eclipseo)
+* Add external source map support to js.Build and Babel [2c8b5d91](https://github.com/gohugoio/hugo/commit/2c8b5d9165011c4b24b494e661ae60dfc7bb7d1b) [@richtera](https://github.com/richtera) [#8132](https://github.com/gohugoio/hugo/issues/8132)
+* Run go mod tidy [4d2b6fc4](https://github.com/gohugoio/hugo/commit/4d2b6fc4c0e714f3f1ed345d6d75ed1662948791) [@bep](https://github.com/bep)
+* Update go-org to v1.4.0 [212e5e55](https://github.com/gohugoio/hugo/commit/212e5e554284bc9368e52a512ed09be5a0224d3e) [@niklasfasching](https://github.com/niklasfasching)
+* Adjust log level [4fdec67b](https://github.com/gohugoio/hugo/commit/4fdec67b1155ae1cdf051582d9ab387286b71a07) [@bep](https://github.com/bep)
+* Add temporary patch to fix template data race [9650e568](https://github.com/gohugoio/hugo/commit/9650e568418a316e71ad94d7e27caf544a4a2d0d) [@bep](https://github.com/bep) [#7293](https://github.com/gohugoio/hugo/issues/7293)
+* Fix race condition in text template baseof [241b7483](https://github.com/gohugoio/hugo/commit/241b7483ea954653512d4895ad6bacf79ee26ddc) [@moorereason](https://github.com/moorereason)
+* Fix metrics hint tracking [0004a733](https://github.com/gohugoio/hugo/commit/0004a733c85cee991a8a170e93cd69c326cc8f2f) [@moorereason](https://github.com/moorereason) [#8125](https://github.com/gohugoio/hugo/issues/8125)
+* Fix potential path issue on Windows [b60e9279](https://github.com/gohugoio/hugo/commit/b60e9279ab95030828eb4f822be96250284c4d8d) [@bep](https://github.com/bep)
+* Fix some humanize issues [bf55afd7](https://github.com/gohugoio/hugo/commit/bf55afd71f2fdb47272ebf1188c9cc87df47b233) [@susiwen8](https://github.com/susiwen8) [#7912](https://github.com/gohugoio/hugo/issues/7912)
+* Fix handling of legacy attribute config [e6dd3128](https://github.com/gohugoio/hugo/commit/e6dd312812c7c711986af2d60f2999d116b82ea0) [@bep](https://github.com/bep) [#7548](https://github.com/gohugoio/hugo/issues/7548)
+* Support translation files with suffix *.yml [92c6c404](https://github.com/gohugoio/hugo/commit/92c6c40419bdc13b8bb422a212d1d79240356651) [@bep](https://github.com/bep) [#8212](https://github.com/gohugoio/hugo/issues/8212)
+* Fix nilpointer in js.Build error handling [a1fe552f](https://github.com/gohugoio/hugo/commit/a1fe552fc9e622a15010a94281f604eb85bebd84) [@bep](https://github.com/bep) [#8162](https://github.com/gohugoio/hugo/issues/8162)
+
+
+
diff --git a/docs/content/en/news/0.82.0-relnotes/featured.png b/docs/content/en/news/0.82.0-relnotes/featured.png
new file mode 100644
index 000000000..d09243f61
--- /dev/null
+++ b/docs/content/en/news/0.82.0-relnotes/featured.png
Binary files differ
diff --git a/docs/content/en/news/0.82.0-relnotes/index.md b/docs/content/en/news/0.82.0-relnotes/index.md
new file mode 100644
index 000000000..0297ea041
--- /dev/null
+++ b/docs/content/en/news/0.82.0-relnotes/index.md
@@ -0,0 +1,78 @@
+
+---
+date: 2021-03-21
+title: "Hugo 0.82: Mostly bugfixes"
+description: "Mostly bug fixes, but some useful improvements with Markdown attributes."
+categories: ["Releases"]
+---
+
+This is a small release, mostly a maintainance/bugfix release. But also notable is that you can now add custom Markdown attributes (e.g. CSS classes) to code fences ([aed7df62](https://github.com/gohugoio/hugo/commit/aed7df62a811b07b73ec5cbbf03e69e4bbf00919) [@bep](https://github.com/bep) [#8278](https://github.com/gohugoio/hugo/issues/8278)) and that you can use the attribute lists in title render hooks (`.Attributes`; see [cd0c5d7e](https://github.com/gohugoio/hugo/commit/cd0c5d7ef32cbd570af00c50ce760452381df64e) [@bep](https://github.com/bep) [#8270](https://github.com/gohugoio/hugo/issues/8270)).
+
+This release represents **28 contributions by 8 contributors** to the main Hugo code base.[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@moorereason](https://github.com/moorereason), and [@gzagatti](https://github.com/gzagatti) for their ongoing contributions.
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the themes site in pristine condition and to [@davidsneighbour](https://github.com/davidsneighbour), [@coliff](https://github.com/coliff) and [@kaushalmodi](https://github.com/kaushalmodi) for all the great work on the documentation site.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **20 contributions by 12 contributors**. A special thanks to [@bep](https://github.com/bep), [@jmooring](https://github.com/jmooring), [@rootkea](https://github.com/rootkea), and [@PaulPineda](https://github.com/PaulPineda) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 50763+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 435+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 370+ [themes](http://themes.gohugo.io/)
+
+## Notes
+
+* We have made `.MediaType` comparable [ba1d0051](https://github.com/gohugoio/hugo/commit/ba1d0051b44fdd242b20899e195e37ab26501516) [@bep](https://github.com/bep) [#8317](https://github.com/gohugoio/hugo/issues/8317)[#8324](https://github.com/gohugoio/hugo/issues/8324). This also means that the old `MediaType.Suffix` and `MediaType.FullSuffix` is moved to `MediaType.FirstSuffix.Suffix` and `MediaType.FirstSuffix.FullSuffix`, which also better describes what they represent.
+
+## Enhancements
+
+### Templates
+
+* Add method mappings for strings.Contains, strings.ContainsAny [7f853003](https://github.com/gohugoio/hugo/commit/7f8530039aa018f23bad9d58e97777705a6d19ac) [@bep](https://github.com/bep)
+
+### Output
+
+* Make Type comparable [ba1d0051](https://github.com/gohugoio/hugo/commit/ba1d0051b44fdd242b20899e195e37ab26501516) [@bep](https://github.com/bep) [#8317](https://github.com/gohugoio/hugo/issues/8317)[#8324](https://github.com/gohugoio/hugo/issues/8324)
+* Add a basic benchmark [4d24e2a3](https://github.com/gohugoio/hugo/commit/4d24e2a3261d8c7dc0395db3ac4de89ebb0974a5) [@bep](https://github.com/bep)
+
+### Other
+
+* Regenerate docs helper [86b4fd35](https://github.com/gohugoio/hugo/commit/86b4fd35e78f545510f19b49246a3ccf5487831b) [@bep](https://github.com/bep)
+* Regen CLI docs [195d108d](https://github.com/gohugoio/hugo/commit/195d108da75c9e5b9ef790bc4a5879c1e913964b) [@bep](https://github.com/bep)
+* Simplify some config loading code [df8bb881](https://github.com/gohugoio/hugo/commit/df8bb8812f466bce563cdba297db3cd3f954a799) [@bep](https://github.com/bep)
+* Update github.com/evanw/esbuild v0.9.0 => v0.9.6 [57d8d208](https://github.com/gohugoio/hugo/commit/57d8d208ed2245858c6439f19803bf2749f9377f) [@bep](https://github.com/bep)
+* Apply OS env overrides twice [fc06e850](https://github.com/gohugoio/hugo/commit/fc06e85082b63a54d9403e57c8d01a7d5a62fc04) [@bep](https://github.com/bep)
+* Attributes for code fences should be placed after the lang indicator only [b725253f](https://github.com/gohugoio/hugo/commit/b725253f9e3033e18bd45096c0622e6fb7b1ff79) [@bep](https://github.com/bep) [#8313](https://github.com/gohugoio/hugo/issues/8313)
+* Bump github.com/tdewolff/minify/v2 v2.9.15 [35dedf15](https://github.com/gohugoio/hugo/commit/35dedf15c04a605df4d4a09263b0b299e5161f86) [@bep](https://github.com/bep) [#8332](https://github.com/gohugoio/hugo/issues/8332)
+* More explicit support link to discourse [137d2dab](https://github.com/gohugoio/hugo/commit/137d2dab3285e9b0f8fe4dcc65ab6ecf8bb09002) [@davidsneighbour](https://github.com/davidsneighbour)
+* Update to esbuild v0.9.0 [1b1dcf58](https://github.com/gohugoio/hugo/commit/1b1dcf586e220c3a8ad5ecfa8e4c3dac97f0ab44) [@bep](https://github.com/bep)
+* Allow more spacing characters in strings [0a2ab3f8](https://github.com/gohugoio/hugo/commit/0a2ab3f8feb961f8394b1f9964fab36bfa468027) [@moorereason](https://github.com/moorereason) [#8079](https://github.com/gohugoio/hugo/issues/8079)[#8079](https://github.com/gohugoio/hugo/issues/8079)
+* Rename a test [35bfb662](https://github.com/gohugoio/hugo/commit/35bfb662229226d5f3cc3077ca74323f0aa88b7d) [@bep](https://github.com/bep)
+* Add a debug helper [6d21559f](https://github.com/gohugoio/hugo/commit/6d21559fb55cda39c7b92bb61fd8e65a84465fe5) [@bep](https://github.com/bep)
+* Add support for Google Analytics v4 [ba16a14c](https://github.com/gohugoio/hugo/commit/ba16a14c6e884e309380610331aff78213f84751) [@djatwood](https://github.com/djatwood)
+* Bump go.mod to Go 1.16 [782c79ae](https://github.com/gohugoio/hugo/commit/782c79ae61a5ec30746ce3729933d6b4d31e0540) [@bep](https://github.com/bep) [#8294](https://github.com/gohugoio/hugo/issues/8294)
+* #8210 Upgrade golang version for Dockerfile [5afcae7e](https://github.com/gohugoio/hugo/commit/5afcae7e0b4c08bc37db6e34ab4cf960558f4b6e) [@systemkern](https://github.com/systemkern)
+* Update CONTRIBUTING.md [60469f42](https://github.com/gohugoio/hugo/commit/60469f429e227631d76d951f2ed92986f0bd92e9) [@bep](https://github.com/bep)
+* Handle attribute lists in code fences [aed7df62](https://github.com/gohugoio/hugo/commit/aed7df62a811b07b73ec5cbbf03e69e4bbf00919) [@bep](https://github.com/bep) [#8278](https://github.com/gohugoio/hugo/issues/8278)
+* Allow markdown attribute lists to be used in title render hooks [cd0c5d7e](https://github.com/gohugoio/hugo/commit/cd0c5d7ef32cbd570af00c50ce760452381df64e) [@bep](https://github.com/bep) [#8270](https://github.com/gohugoio/hugo/issues/8270)
+* bump github.com/kyokomi/emoji/v2 from 2.2.7 to 2.2.8 [88a85dce](https://github.com/gohugoio/hugo/commit/88a85dcea951b0b5622cf02b167ec9299d93118b) [@dependabot[bot]](https://github.com/apps/dependabot)
+
+## Fixes
+
+### Output
+
+* Fix output format handling for render hooks [18074d0c](https://github.com/gohugoio/hugo/commit/18074d0c2375cc4bf4d7933dd4206cb878a23d1c) [@bep](https://github.com/bep) [#8176](https://github.com/gohugoio/hugo/issues/8176)
+
+### Other
+
+* Fix OS env override for nested config param only available in theme [7ed56c69](https://github.com/gohugoio/hugo/commit/7ed56c6941edfdfa42eef2b779020b5d46ca194a) [@bep](https://github.com/bep) [#8346](https://github.com/gohugoio/hugo/issues/8346)
+* Fix `new theme` command description [24c716ca](https://github.com/gohugoio/hugo/commit/24c716cac35b0c5476944108e545058749c43e61) [@rootkea](https://github.com/rootkea)
+* Fix handling of utf8 runes in nullString() [f6612d8b](https://github.com/gohugoio/hugo/commit/f6612d8bd8c4c3bb498178d14f45d3acdf86aa7c) [@moorereason](https://github.com/moorereason)
+* Fixes #7698. [01dd7c16](https://github.com/gohugoio/hugo/commit/01dd7c16af6204d18d530f9d3018689215482170) [@gzagatti](https://github.com/gzagatti)
+* Fix autocomplete docs [c8f45d1d](https://github.com/gohugoio/hugo/commit/c8f45d1d861f596821afc068bd12eb1213aba5ce) [@bep](https://github.com/bep)
+
+
+
+
+
diff --git a/docs/content/en/news/0.82.1-relnotes/index.md b/docs/content/en/news/0.82.1-relnotes/index.md
new file mode 100644
index 000000000..54462b8ad
--- /dev/null
+++ b/docs/content/en/news/0.82.1-relnotes/index.md
@@ -0,0 +1,19 @@
+
+---
+date: 2021-04-20
+title: "Hugo 0.82.1: One Bug Fix"
+description: "This version fixes a bug introduced in 0.82.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with one important fix.
+
+* Regression in media type suffix lookup [6e9d2bf0](https://github.com/gohugoio/hugo/commit/6e9d2bf0c936900f8f676d485098755b3f463373) [@bep](https://github.com/bep) [#8406](https://github.com/gohugoio/hugo/issues/8406)
+
+
+
diff --git a/docs/content/en/news/0.83.0-relnotes/featured.png b/docs/content/en/news/0.83.0-relnotes/featured.png
new file mode 100644
index 000000000..473170efd
--- /dev/null
+++ b/docs/content/en/news/0.83.0-relnotes/featured.png
Binary files differ
diff --git a/docs/content/en/news/0.83.0-relnotes/index.md b/docs/content/en/news/0.83.0-relnotes/index.md
new file mode 100644
index 000000000..987110c3f
--- /dev/null
+++ b/docs/content/en/news/0.83.0-relnotes/index.md
@@ -0,0 +1,133 @@
+
+---
+date: 2021-05-01
+title: "Hugo 0.83: WebP Support!"
+description: "WebP image encoding support, some important i18n fixes, and more."
+categories: ["Releases"]
+---
+
+**Note:** If you use i18n, there is an unfortunate regression bug in this release (see [issue](https://github.com/gohugoio/hugo/issues/8492)). A patch release coming Sunday.
+
+
+Hugo `0.83` finally brings [WebP](https://gohugo.io/content-management/image-processing/) image processing support. Note that you need the [extended version](https://gohugo.io/troubleshooting/faq/#i-get-tocss--this-feature-is-not-available-in-your-current-hugo-version) of Hugo to encode to WebP. If you want to target all Hugo versions, you may use a construct such as this:
+
+```go-html-template
+{{ $images := slice }}
+{{ $images = $images | append ($img.Resize "300x") }}
+{{ if hugo.IsExtended }}
+ {{ $images = $images | append ($img.Resize "300x webp") }}
+{{ end }}
+```
+
+Also worth highlighting:
+
+* Some important language/i18n fixes (thanks to [@jmooring](https://github.com/jmooring) for helping out with these):
+ * Fix multiple unknown language codes [7eb80a9e](https://github.com/gohugoio/hugo/commit/7eb80a9e6fcb6d31711effa20310cfefb7b23c1b) [@bep](https://github.com/bep) [#7838](https://github.com/gohugoio/hugo/issues/7838)
+ * Improve plural handling of floats [eebde0c2](https://github.com/gohugoio/hugo/commit/eebde0c2ac4964e91d26d8b0cf0ac43afcfd207f) [@bep](https://github.com/bep) [#8464](https://github.com/gohugoio/hugo/issues/8464)
+ * Revise the plural implementation [537c905e](https://github.com/gohugoio/hugo/commit/537c905ec103dc5adaf8a1b2ccdef5da7cc660fd) [@bep](https://github.com/bep) [#8454](https://github.com/gohugoio/hugo/issues/8454)[#7822](https://github.com/gohugoio/hugo/issues/7822)
+* You can now use slice syntax in the sections permalinks config[2dc222ce](https://github.com/gohugoio/hugo/commit/2dc222cec4460595af8569165d1c498bb45aac84) [@bep](https://github.com/bep) [#8363](https://github.com/gohugoio/hugo/issues/8363).
+
+This release represents **61 contributions by 9 contributors** to the main Hugo code base.[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@dependabot[bot]](https://github.com/apps/dependabot), [@jmooring](https://github.com/jmooring), and [@anthonyfok](https://github.com/anthonyfok) for their ongoing contributions.
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the themes site in pristine condition.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **10 contributions by 5 contributors**. A special thanks to [@lupsa](https://github.com/lupsa), [@jmooring](https://github.com/jmooring), [@bep](https://github.com/bep), and [@arhuman](https://github.com/arhuman) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 51594+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 432+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 370+ [themes](http://themes.gohugo.io/)
+
+## Notes
+
+* We have updated ESBUild to v0.11.16. There are no breaking changes on the API side, but you may want to read the release upstream release notes: https://github.com/evanw/esbuild/releases/tag/v0.10.0 https://github.com/evanw/esbuild/releases/tag/v0.11.0
+
+## Enhancements
+
+### Templates
+
+* Remove the FuzzMarkdownify func for now [5656a908](https://github.com/gohugoio/hugo/commit/5656a908d837f2aa21837d39712b8ab4aa6db842) [@bep](https://github.com/bep)
+
+### Output
+
+* Make the shortcode template lookup for output formats stable [0d86a32d](https://github.com/gohugoio/hugo/commit/0d86a32d8f3031e2124c8005b680b597f3c0e558) [@bep](https://github.com/bep) [#7774](https://github.com/gohugoio/hugo/issues/7774)
+* Only output mediaType once in docshelper JSON [7b4ade56](https://github.com/gohugoio/hugo/commit/7b4ade56dd50d89a91760fc5ef8e2f151874de96) [@bep](https://github.com/bep) [#8379](https://github.com/gohugoio/hugo/issues/8379)
+
+### Other
+
+* Regenerate docs helper [a9b52b41](https://github.com/gohugoio/hugo/commit/a9b52b41758d20ae4c10b71721b22175395c69e9) [@bep](https://github.com/bep)
+* Regenerate CLI docs [b073a1c9](https://github.com/gohugoio/hugo/commit/b073a1c9723980eeb58717884006148dfc0e0c8e) [@bep](https://github.com/bep)
+* Remove all dates from gendoc [4227cc1b](https://github.com/gohugoio/hugo/commit/4227cc1bd308d1ef1ea151c86f72f537b5e77b1d) [@bep](https://github.com/bep)
+* Update getkin/kin-openapi v0.60.0 => v0.61. [3cc4fdd6](https://github.com/gohugoio/hugo/commit/3cc4fdd6f358263ffde33ccbf61546f073979e32) [@bep](https://github.com/bep)
+* Update github.com/evanw/esbuild v0.11.14 => v0.11.16 [78c1a6a7](https://github.com/gohugoio/hugo/commit/78c1a6a7c6e14f006854ee97ec561abdcf6203fc) [@bep](https://github.com/bep)
+* Remove .Site.Authors from embedded templates [f6745ad3](https://github.com/gohugoio/hugo/commit/f6745ad3588a7b3aaae228fec18fe0027affd566) [@jmooring](https://github.com/jmooring) [#4458](https://github.com/gohugoio/hugo/issues/4458)
+* Don't treat a NotFound response for Delete as a fatal error. [f523e9f0](https://github.com/gohugoio/hugo/commit/f523e9f0fd0e0b0ce75879532caa834742297d16) [@vangent](https://github.com/vangent)
+* Switch to deb packages of nodejs and python3-pygments [63cd05ce](https://github.com/gohugoio/hugo/commit/63cd05ce5ae308c496b848f6b11bcb3fdbdf5cb2) [@anthonyfok](https://github.com/anthonyfok)
+* Install bin/node from node/14/stable [902535ef](https://github.com/gohugoio/hugo/commit/902535ef11fce449b377896ab7498c4799beb9ce) [@anthonyfok](https://github.com/anthonyfok)
+* bump github.com/getkin/kin-openapi from 0.55.0 to 0.60.0 [70aebba0](https://github.com/gohugoio/hugo/commit/70aebba04d801fe6a3784394d25c433ffeb6d123) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/evanw/esbuild from 0.11.13 to 0.11.14 [3e3b7d44](https://github.com/gohugoio/hugo/commit/3e3b7d4474ea97a1990f303482a12f0c3031bd07) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Update to Chroma v0.9.1 [048418ba](https://github.com/gohugoio/hugo/commit/048418ba749d02eb3dde9d6895cedef2adaefefd) [@caarlos0](https://github.com/caarlos0)
+* Improve plural handling of floats [eebde0c2](https://github.com/gohugoio/hugo/commit/eebde0c2ac4964e91d26d8b0cf0ac43afcfd207f) [@bep](https://github.com/bep) [#8464](https://github.com/gohugoio/hugo/issues/8464)
+* bump github.com/evanw/esbuild from 0.11.12 to 0.11.13 [65c502cc](https://github.com/gohugoio/hugo/commit/65c502cc8110e49540cbe2b49ecd5a8ede9e67a1) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Revise the plural implementation [537c905e](https://github.com/gohugoio/hugo/commit/537c905ec103dc5adaf8a1b2ccdef5da7cc660fd) [@bep](https://github.com/bep) [#8454](https://github.com/gohugoio/hugo/issues/8454)[#7822](https://github.com/gohugoio/hugo/issues/7822)
+* Update to "base: core20" [243951eb](https://github.com/gohugoio/hugo/commit/243951ebe9715d3da3968e96e6f60dcd53e25d92) [@anthonyfok](https://github.com/anthonyfok)
+* bump github.com/frankban/quicktest from 1.11.3 to 1.12.0 [fe2ee028](https://github.com/gohugoio/hugo/commit/fe2ee028024836695c99e28595393588e3930136) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump google.golang.org/api from 0.44.0 to 0.45.0 [316d65cd](https://github.com/gohugoio/hugo/commit/316d65cd7049d60b0d5ac0080a87236198e74fc9) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/aws/aws-sdk-go from 1.37.11 to 1.38.23 [b95229ab](https://github.com/gohugoio/hugo/commit/b95229ab49ac2126aefe7802392ef34fdd021c3b) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Correct function name in comment [0551df09](https://github.com/gohugoio/hugo/commit/0551df090e6b2a391941bf7383b79c2dbc11d416) [@xhit](https://github.com/xhit)
+* Upgraded github.com/evanw/esbuild v0.11.0 => v0.11.12 [057e5a22](https://github.com/gohugoio/hugo/commit/057e5a22af937459082c3096ba3095b343d1a8bf) [@bep](https://github.com/bep)
+* Regen docs helper [fd96f65a](https://github.com/gohugoio/hugo/commit/fd96f65a3d7755e49b4a70fb276dfffcba4e541a) [@bep](https://github.com/bep)
+* bump github.com/tdewolff/minify/v2 from 2.9.15 to 2.9.16 [d3a64708](https://github.com/gohugoio/hugo/commit/d3a64708f49139552ca79a199a4cbf6544375443) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump golang.org/x/text from 0.3.5 to 0.3.6 [3b56244f](https://github.com/gohugoio/hugo/commit/3b56244f425a72c783bb58c30542aeb4b045acca) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Remove some unreachable code [f5d3d635](https://github.com/gohugoio/hugo/commit/f5d3d635e6b88d7c5d304b80f04e7b4361349fd6) [@bep](https://github.com/bep)
+* bump github.com/getkin/kin-openapi from 0.39.0 to 0.55.0 [0d3c42da](https://github.com/gohugoio/hugo/commit/0d3c42da56151325f16802b3b1a4105a21ce250e) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Some performance tweaks for the HTML elements collector [ef34dd8f](https://github.com/gohugoio/hugo/commit/ef34dd8f0e94e52ba6f1d5d607e4ac3ae98a7abb) [@bep](https://github.com/bep)
+* Exclude comment and doctype elements from writeStats [bc80022e](https://github.com/gohugoio/hugo/commit/bc80022e033a5462d1a9ce541f40a050994011cc) [@dirkolbrich](https://github.com/dirkolbrich) [#8396](https://github.com/gohugoio/hugo/issues/8396)[#8417](https://github.com/gohugoio/hugo/issues/8417)
+* Merge branch 'release-0.82.1' [2bb9496c](https://github.com/gohugoio/hugo/commit/2bb9496ce29dfe90e8b3664ed8cf7f895011b2d4) [@bep](https://github.com/bep)
+* bump github.com/yuin/goldmark from 1.3.2 to 1.3.5 [3ddffd06](https://github.com/gohugoio/hugo/commit/3ddffd064dbacf62aa854b26ea8ddc5d15ba1ef8) [@jmooring](https://github.com/jmooring) [#8377](https://github.com/gohugoio/hugo/issues/8377)
+* Remove duplicate references from release notes [6fc52d18](https://github.com/gohugoio/hugo/commit/6fc52d185a98b86c70b6ba862549cc6aae782691) [@jmooring](https://github.com/jmooring) [#8360](https://github.com/gohugoio/hugo/issues/8360)
+* bump github.com/spf13/afero from 1.5.1 to 1.6.0 [73c3ae81](https://github.com/gohugoio/hugo/commit/73c3ae818a7fc78febff092ac74772a114a2cbd2) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/pelletier/go-toml from 1.8.1 to 1.9.0 [7ca118fd](https://github.com/gohugoio/hugo/commit/7ca118fdfd9f0d1c636ef5e266c9000a20099e03) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Add webp image encoding support [33d5f805](https://github.com/gohugoio/hugo/commit/33d5f805923eb50dfb309d024f6555c59a339846) [@bep](https://github.com/bep) [#5924](https://github.com/gohugoio/hugo/issues/5924)
+* bump google.golang.org/api from 0.40.0 to 0.44.0 [509d39fa](https://github.com/gohugoio/hugo/commit/509d39fa6ddbba106c127b7923a41b0dcaea9381) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/nicksnyder/go-i18n/v2 from 2.1.1 to 2.1.2 [7725c41d](https://github.com/gohugoio/hugo/commit/7725c41d40b7009c2701a5ad3fa6bc9de57b88ee) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/rogpeppe/go-internal from 1.6.2 to 1.8.0 [5d36d801](https://github.com/gohugoio/hugo/commit/5d36d801534c0823697610fdb32e1eeb61f70e33) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Remove extraneous space from figure shortcode [9b34d42b](https://github.com/gohugoio/hugo/commit/9b34d42bb2ff05deaeeef63ff4b5b993f35f0451) [@jmooring](https://github.com/jmooring) [#8401](https://github.com/gohugoio/hugo/issues/8401)
+* bump github.com/magefile/mage from 1.10.0 to 1.11.0 [c2d8f87c](https://github.com/gohugoio/hugo/commit/c2d8f87cfc1c4ae666fbb1fb5b8983d43492333f) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/google/go-cmp from 0.5.4 to 0.5.5 [cbc24661](https://github.com/gohugoio/hugo/commit/cbc246616e88729322dad70971eae18ef59dd5d4) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Disable broken pretty relative links feature [fa432b17](https://github.com/gohugoio/hugo/commit/fa432b17b349ed7e914af3625187e2c1dc2e243b) [@niklasfasching](https://github.com/niklasfasching)
+* Update go-org to v1.5.0 [0cd55c66](https://github.com/gohugoio/hugo/commit/0cd55c66d370559b66eea220626c4842efaf7039) [@niklasfasching](https://github.com/niklasfasching)
+* bump github.com/jdkato/prose from 1.2.0 to 1.2.1 [0d5cf256](https://github.com/gohugoio/hugo/commit/0d5cf256e4f2a5babcbcf7b49a6818869c3c0691) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/spf13/cobra from 1.1.1 to 1.1.3 [36527576](https://github.com/gohugoio/hugo/commit/36527576b30224dff2eae7f6c9f27eff807d5402) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Add complete dependency list in "hugo env -v" [9b83f45b](https://github.com/gohugoio/hugo/commit/9b83f45b6dcafa6e50df80a4786d6a36400a47fe) [@bep](https://github.com/bep) [#8400](https://github.com/gohugoio/hugo/issues/8400)
+* Add hugo.IsExtended [7fdd2b95](https://github.com/gohugoio/hugo/commit/7fdd2b95e20f322b0a47f63ff1010a04f47ce67b) [@bep](https://github.com/bep) [#8399](https://github.com/gohugoio/hugo/issues/8399)
+* Also test minified HTML in the element collector [3d5dbdcb](https://github.com/gohugoio/hugo/commit/3d5dbdcb1a11b059fc2f93ed6fadb9009bf72673) [@bep](https://github.com/bep) [#7567](https://github.com/gohugoio/hugo/issues/7567)
+* Skip script, pre and textarea content when looking for HTML elements [8a308944](https://github.com/gohugoio/hugo/commit/8a308944e46f8c2aa054005d5aed89f2711f9c1d) [@bep](https://github.com/bep) [#7567](https://github.com/gohugoio/hugo/issues/7567)
+* Add slice syntax to sections permalinks config [2dc222ce](https://github.com/gohugoio/hugo/commit/2dc222cec4460595af8569165d1c498bb45aac84) [@bep](https://github.com/bep) [#8363](https://github.com/gohugoio/hugo/issues/8363)
+* Upgrade github.com/evanw/esbuild v0.9.6 => v0.11.0 [4d22ad58](https://github.com/gohugoio/hugo/commit/4d22ad580ec8c8e5e27cf4f5cce69b6828aa8501) [@bep](https://github.com/bep)
+
+## Fixes
+
+### Templates
+
+* Fix where on type mismatches [e4dc9a82](https://github.com/gohugoio/hugo/commit/e4dc9a82b557a417b1552c533b0df605c6ff1cc0) [@bep](https://github.com/bep) [#8353](https://github.com/gohugoio/hugo/issues/8353)
+
+### Output
+
+* Regression in media type suffix lookup [6e9d2bf0](https://github.com/gohugoio/hugo/commit/6e9d2bf0c936900f8f676d485098755b3f463373) [@bep](https://github.com/bep) [#8406](https://github.com/gohugoio/hugo/issues/8406)
+* Regression in media type suffix lookup [e73f7a77](https://github.com/gohugoio/hugo/commit/e73f7a770dfb06f23d842d589bdd3d0fb53c7eed) [@bep](https://github.com/bep) [#8406](https://github.com/gohugoio/hugo/issues/8406)
+
+### Other
+
+* Fix multiple unknown language codes [7eb80a9e](https://github.com/gohugoio/hugo/commit/7eb80a9e6fcb6d31711effa20310cfefb7b23c1b) [@bep](https://github.com/bep) [#7838](https://github.com/gohugoio/hugo/issues/7838)
+* Fix permalinks pattern detection for some of the sections variants [c13d3687](https://github.com/gohugoio/hugo/commit/c13d368746992eb39a33f065ca808e129baec4ef) [@bep](https://github.com/bep) [#8363](https://github.com/gohugoio/hugo/issues/8363)
+* Fix Params case handling in where with slices of structs (e.g. Pages) [bca40cf0](https://github.com/gohugoio/hugo/commit/bca40cf0c9c7b75e6d5b4a9ac8b927eb17590c7e) [@bep](https://github.com/bep) [#7009](https://github.com/gohugoio/hugo/issues/7009)
+* Fix typo in docshelper.go [7c7974b7](https://github.com/gohugoio/hugo/commit/7c7974b711879938eafc08a2ce242d0f00c8e9e6) [@jmooring](https://github.com/jmooring) [#8380](https://github.com/gohugoio/hugo/issues/8380)
+* Try to fix the fuzz build [5e2f1289](https://github.com/gohugoio/hugo/commit/5e2f1289118dc1489fb782bf289298a05104eeaf) [@bep](https://github.com/bep)
+
+
+
+
+
diff --git a/docs/content/en/news/0.83.1-relnotes/index.md b/docs/content/en/news/0.83.1-relnotes/index.md
new file mode 100644
index 000000000..e896b04e1
--- /dev/null
+++ b/docs/content/en/news/0.83.1-relnotes/index.md
@@ -0,0 +1,19 @@
+
+---
+date: 2021-05-02
+title: "Hugo 0.83.1: One Bug Fix"
+description: "This version fixes an issue introduced in 0.83.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with one important fix.
+
+* langs/i18n: Fix warning regression in i18n [ececd1b1](https://github.com/gohugoio/hugo/commit/ececd1b122c741567a80acd8d60ccd6356fa5323) [@bep](https://github.com/bep) [#8492](https://github.com/gohugoio/hugo/issues/8492)
+
+
+
diff --git a/docs/content/en/news/0.84.0-relnotes/featured.png b/docs/content/en/news/0.84.0-relnotes/featured.png
new file mode 100644
index 000000000..e733669e3
--- /dev/null
+++ b/docs/content/en/news/0.84.0-relnotes/featured.png
Binary files differ
diff --git a/docs/content/en/news/0.84.0-relnotes/index.md b/docs/content/en/news/0.84.0-relnotes/index.md
new file mode 100644
index 000000000..8d3dfac24
--- /dev/null
+++ b/docs/content/en/news/0.84.0-relnotes/index.md
@@ -0,0 +1,160 @@
+
+---
+date: 2021-06-18
+title: "Config Revamp"
+description: "Hugo 0.84.0: Deep merge of theme configuration, config dir support now also in themes/modules, HTTP header support in getJSON, and more."
+categories: ["Releases"]
+---
+
+**This release brings several configuration fixes and improvements that will be especially useful for themes.**
+
+## Deep merge of theme Params
+
+One of the most common complaints from Hugo theme owners/users has been about the configuration handling. Hugo has up until now only performed a shallow merge of theme `params` into the configuration.
+
+With that, given this example from a theme configuration:
+
+```toml
+[params]
+[params.colours]
+blue="#337DFF"
+green="#68FF33"
+red="#FF3358"
+```
+
+If you would like to use the above theme, but want a different shade of red, you earlier had to copy the entire block, even the colours you're totally happy with. This was painful with even the simplest setup.
+
+Now you can just override the `params` keys you want to change, e.g.:
+
+```toml
+[params]
+[params.colours]
+red="#fc0f03"
+```
+
+For more information, and especially about the way you can opt out of the above behaviour, see [Merge Configuration from Themes](https://gohugo.io/getting-started/configuration/#merge-configuration-from-themes).
+
+## Themes now support the config directory
+
+Now both the project and themes/modules can store its configuration in both the top level config file (e.g. `config.toml`) or in the `config` directory. See [Configuration Directory](https://gohugo.io/getting-started/configuration/#configuration-directory).
+
+## HTTP headers in getJSON/getCSV
+
+`getJSON` now supports custom HTTP headers. This has been a big limitation in Hugo, especially considering the [Authorization](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Authorization) header.
+
+We have updated the internal Instagram shortcode to pass the access token in a header:
+
+```
+{{ $hideCaption := cond (eq (.Get 1) "hidecaption") "1" "0" }}
+{{ $headers := dict "Authorization" (printf "Bearer %s" $accessToken) }}
+{{ with getJSON "https://graph.facebook.com/v8.0/instagram_oembed/?url=https://instagram.com/p/" $id "/&hidecaption=" $hideCaption $headers }}
+ {{ .html | safeHTML }}
+{{ end }}
+```
+
+ Also see the discussion [this issue](https://github.com/gohugoio/hugo/issues/7879) about the access token above.
+
+## New erroridf template func
+
+Sometimes, especially when creating themes, it is useful to be able to let the user decide if an error situation is critical enough to fail the build. The new `erroridf` produces `ERROR` log statements that can be toggled off:
+
+```html
+{{ erroridf "some-custom-id" "Some error message." }}
+```
+
+Will log:
+
+```
+ERROR: Some error message.
+If you feel that this should not be logged as an ERROR, you can ignore it by adding this to your site config:
+ignoreErrors = ["some-custom-id"]
+```
+## Stats
+
+This release represents **46 contributions by 11 contributors** to the main Hugo code base.[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@jmooring](https://github.com/jmooring), [@satotake](https://github.com/satotake), and [@Seirdy](https://github.com/Seirdy) for their ongoing contributions.
+And a big thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his relentless work on keeping the themes site in pristine condition.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **20 contributions by 10 contributors**. A special thanks to [@salim-b](https://github.com/salim-b), [@bep](https://github.com/bep), [@thomasjsn](https://github.com/thomasjsn), and [@lucasew](https://github.com/lucasew) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 52487+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 432+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 370+ [themes](http://themes.gohugo.io/)
+
+
+## Notes
+
+* We now do deep merging of `params` from theme config(s). That is you most likely what you want, but [Merge Configuration from Themes](https://gohugo.io/getting-started/configuration/#merge-configuration-from-themes) describes how you can get the old behaviour back.
+
+## Enhancements
+
+### Templates
+
+* Rename err-missing-instagram-accesstoken => error-missing-instagram-accesstoken [9096842b](https://github.com/gohugoio/hugo/commit/9096842b0494166e401cc08a70b93ae2ee19a198) [@bep](https://github.com/bep)
+* Add a terse pagination template variant to improve performance [73483d0f](https://github.com/gohugoio/hugo/commit/73483d0f9eb46838d41640f88cc05c1d16811dc5) [@jmooring](https://github.com/jmooring) [#8599](https://github.com/gohugoio/hugo/issues/8599)
+* Add erroridf template func [f55d2f43](https://github.com/gohugoio/hugo/commit/f55d2f43769053b80b419a690554e747dc5dcede) [@bep](https://github.com/bep) [#8613](https://github.com/gohugoio/hugo/issues/8613)
+* Print response body on HTTP errors [282f1aa3](https://github.com/gohugoio/hugo/commit/282f1aa3db9f6420fdd360e46db1ffadd5b083a1) [@bep](https://github.com/bep)
+* Misc header improvements, tests, allow multiple headers of same key [fcd63de3](https://github.com/gohugoio/hugo/commit/fcd63de3a54fadcd30972654d8eb86dc4d889784) [@bep](https://github.com/bep) [#5617](https://github.com/gohugoio/hugo/issues/5617)
+* Allows user-defined HTTP headers with getJSON and getCSV [150d7573](https://github.com/gohugoio/hugo/commit/150d75738b54acddc485d363436757189144da6a) [@chamberlainpj](https://github.com/chamberlainpj) [#5617](https://github.com/gohugoio/hugo/issues/5617)
+* Allow 'Querify' to take lone slice/interface argument [c46fc838](https://github.com/gohugoio/hugo/commit/c46fc838a9320adfc6532b1b543e903c48b3b4cb) [@importhuman](https://github.com/importhuman) [#6735](https://github.com/gohugoio/hugo/issues/6735)
+
+### Output
+
+* Make WebAppManifestFormat NotAlternative=true [643b6719](https://github.com/gohugoio/hugo/commit/643b671931ed5530855e7d4819896790bf3f6c28) [@bep](https://github.com/bep) [#8624](https://github.com/gohugoio/hugo/issues/8624)
+* Adjust test assertion [ab4e1dfa](https://github.com/gohugoio/hugo/commit/ab4e1dfa4eebe0ac18f1d1f60a9647cbb7b41d7f) [@bep](https://github.com/bep) [#8625](https://github.com/gohugoio/hugo/issues/8625)
+* support application/manifest+json [02f31897](https://github.com/gohugoio/hugo/commit/02f31897b4f7252154850a65c900e88e0b237fa3) [@Seirdy](https://github.com/Seirdy) [#8624](https://github.com/gohugoio/hugo/issues/8624)
+
+### Other
+
+* Regenerate docs helper [be6b901c](https://github.com/gohugoio/hugo/commit/be6b901cf7d07238337334e6b6d886a7b039f5e6) [@bep](https://github.com/bep)
+* Regenerate docshelper [402da3f8](https://github.com/gohugoio/hugo/commit/402da3f8f327f97302c4b5d69cd4832a94bd189b) [@bep](https://github.com/bep)
+* Implement configuration in a directory for modules [bb2aa087](https://github.com/gohugoio/hugo/commit/bb2aa08709c812a5be29922a1a7f4d814e200cab) [@bep](https://github.com/bep) [#8654](https://github.com/gohugoio/hugo/issues/8654)
+* Update github.com/alecthomas/chroma v0.9.1 => v0.9.2 [3aa7f0b2](https://github.com/gohugoio/hugo/commit/3aa7f0b27fc736b4c32adbb1fc1fc7fbefd6efd9) [@bep](https://github.com/bep) [#8658](https://github.com/gohugoio/hugo/issues/8658)
+* Run go mod tidy [9b870aa7](https://github.com/gohugoio/hugo/commit/9b870aa788ab1b5159bc836fbac6e60a29bee329) [@bep](https://github.com/bep)
+* Split out the puthe path/filepath functions into common/paths [93aad3c5](https://github.com/gohugoio/hugo/commit/93aad3c543828efca2adeb7f96cf50ae29878593) [@bep](https://github.com/bep) [#8654](https://github.com/gohugoio/hugo/issues/8654)
+* Update to Goldmark v1.3.8 [8eafe084](https://github.com/gohugoio/hugo/commit/8eafe0845d66efd3cf442a8ed89a6da5c1d3117b) [@jmooring](https://github.com/jmooring) [#8648](https://github.com/gohugoio/hugo/issues/8648)
+* Do not read config from os.Environ when running tests [31fb29fb](https://github.com/gohugoio/hugo/commit/31fb29fb3f306678f3697e05bbccefb2078d7f78) [@bep](https://github.com/bep) [#8655](https://github.com/gohugoio/hugo/issues/8655)
+* Set a dummy Instagram token [a886dd53](https://github.com/gohugoio/hugo/commit/a886dd53b80322e1edf924f2ede4d4ea037c5baf) [@bep](https://github.com/bep)
+* Regenerate docs helper [a91cd765](https://github.com/gohugoio/hugo/commit/a91cd7652f7559492b070dbe02fe558348f3d0b6) [@bep](https://github.com/bep)
+* Update to Go 1.16.5, Goreleaser 0.169.0 [552cef5c](https://github.com/gohugoio/hugo/commit/552cef5c576ae4dbf4626f77f3c8b15b42a9e7f3) [@bep](https://github.com/bep) [#8619](https://github.com/gohugoio/hugo/issues/8619)[#8263](https://github.com/gohugoio/hugo/issues/8263)
+* Upgrade Instagram shortcode [9b5debe4](https://github.com/gohugoio/hugo/commit/9b5debe4b820132759cfdf7bff7fe9c1ad0a6bb1) [@bep](https://github.com/bep) [#7879](https://github.com/gohugoio/hugo/issues/7879)
+* Set modTime at creation time [06d29542](https://github.com/gohugoio/hugo/commit/06d295427f798da85de469924fd10f58c0de9a58) [@bep](https://github.com/bep) [#6161](https://github.com/gohugoio/hugo/issues/6161)
+* Add math.Max and math.Min [01758f99](https://github.com/gohugoio/hugo/commit/01758f99b915f34fe7ca4621e4d1ee09efe385b1) [@jmooring](https://github.com/jmooring) [#8583](https://github.com/gohugoio/hugo/issues/8583)
+* Catch incomplete shortcode error [845a7ba4](https://github.com/gohugoio/hugo/commit/845a7ba4fc30c61842148d67d31d0fa3db8f40b9) [@satotake](https://github.com/satotake) [#6866](https://github.com/gohugoio/hugo/issues/6866)
+* Use SPDX license identifier [10f60de8](https://github.com/gohugoio/hugo/commit/10f60de89a5a53528f1e3a47a77224e5c7915e4e) [@jmooring](https://github.com/jmooring) [#8555](https://github.com/gohugoio/hugo/issues/8555)
+* Cache and copy Menu for sorting [785a31b5](https://github.com/gohugoio/hugo/commit/785a31b5b84643f4769f9bd363599cbcce86f098) [@satotake](https://github.com/satotake) [#7594](https://github.com/gohugoio/hugo/issues/7594)
+* Update to LibSASS 3.6.5 [bc1e0528](https://github.com/gohugoio/hugo/commit/bc1e05286a96d08ad02ad200d6a4076bb01c486e) [@bep](https://github.com/bep)
+* Make the HTML element collector more robust [f518b4f7](https://github.com/gohugoio/hugo/commit/f518b4f71e1a61b09d660b5c284121ebf3b3b86b) [@bep](https://github.com/bep) [#8530](https://github.com/gohugoio/hugo/issues/8530)
+* Make the HTML element collector more robust" [dc6b7a75](https://github.com/gohugoio/hugo/commit/dc6b7a75ff5b7fcb8a0b0e3f7ed406422d847624) [@bep](https://github.com/bep)
+* Get the collector in line with the io.Writer interface" [3f515f0e](https://github.com/gohugoio/hugo/commit/3f515f0e3395b24776ae24045b846ff2b33b8906) [@bep](https://github.com/bep)
+* Get the collector in line with the io.Writer interface [a9bcd381](https://github.com/gohugoio/hugo/commit/a9bcd38181ceb79afba82adcd4de1aebf571e74c) [@bep](https://github.com/bep)
+* Make the HTML element collector more robust [ef0f1a72](https://github.com/gohugoio/hugo/commit/ef0f1a726901d6c614040cfc2d7e8f9a2ca97816) [@bep](https://github.com/bep) [#8530](https://github.com/gohugoio/hugo/issues/8530)
+* Add Scratch.DeleteInMap [abbc99d4](https://github.com/gohugoio/hugo/commit/abbc99d4c60b102e2779e4362ceb433095719384) [@meehawk](https://github.com/meehawk) [#8504](https://github.com/gohugoio/hugo/issues/8504)
+* Display version when building site (#8533) [76c95f55](https://github.com/gohugoio/hugo/commit/76c95f55a5d18290baa7f23667161d4af9fb9b53) [@jmooring](https://github.com/jmooring) [#8531](https://github.com/gohugoio/hugo/issues/8531)
+* Update querify function description and examples [2c7f5b62](https://github.com/gohugoio/hugo/commit/2c7f5b62f6c1fa1c7b3cf2c1f3a1663b18e75004) [@jmooring](https://github.com/jmooring)
+* Change SetEscapeHTML to false [504c78da](https://github.com/gohugoio/hugo/commit/504c78da4b5020e1fd13a1195ad38a9e85f8289a) [@peaceiris](https://github.com/peaceiris) [#8512](https://github.com/gohugoio/hugo/issues/8512)
+* Add a benchmark [b660ea8d](https://github.com/gohugoio/hugo/commit/b660ea8d545d6ba5479dd28a670044d57e5d196f) [@bep](https://github.com/bep)
+* Update dependency list [64f88f30](https://github.com/gohugoio/hugo/commit/64f88f3011de5a510d8e6d6bad8ac4a091b11c0c) [@bep](https://github.com/bep)
+
+## Fixes
+
+### Templates
+
+* Fix countwords to handle special chars [7a2c10ae](https://github.com/gohugoio/hugo/commit/7a2c10ae60f096dacee4b44e0c8ae0a1b66ae033) [@ResamVi](https://github.com/ResamVi) [#8479](https://github.com/gohugoio/hugo/issues/8479)
+
+### Other
+
+* Fix fill with smartcrop sometimes returning 0 bytes images [5af045eb](https://github.com/gohugoio/hugo/commit/5af045ebab109d3e5501b8b6d9fd448840c96c9a) [@bep](https://github.com/bep) [#7955](https://github.com/gohugoio/hugo/issues/7955)
+* Misc config loading fixes [d392893c](https://github.com/gohugoio/hugo/commit/d392893cd73dc00c927f342778f6dca9628d328e) [@bep](https://github.com/bep) [#8633](https://github.com/gohugoio/hugo/issues/8633)[#8618](https://github.com/gohugoio/hugo/issues/8618)[#8630](https://github.com/gohugoio/hugo/issues/8630)[#8591](https://github.com/gohugoio/hugo/issues/8591)[#6680](https://github.com/gohugoio/hugo/issues/6680)[#5192](https://github.com/gohugoio/hugo/issues/5192)
+* Fix nested OS env config override when parent does not exist [12530519](https://github.com/gohugoio/hugo/commit/12530519d8fb4513c9c18a6494099b7dff8e4fd4) [@bep](https://github.com/bep) [#8618](https://github.com/gohugoio/hugo/issues/8618)
+* Fix invalid timestamp of the "public" folder [26ae12c0](https://github.com/gohugoio/hugo/commit/26ae12c0c64b847d24bde60d7d710ea2efcb40d4) [@anthonyfok](https://github.com/anthonyfok) [#6161](https://github.com/gohugoio/hugo/issues/6161)
+* Fix env split to allow = character in values [ee733085](https://github.com/gohugoio/hugo/commit/ee733085b7f5d3f2aef1667901ab6ecb8041d699) [@xqbumu](https://github.com/xqbumu) [#8589](https://github.com/gohugoio/hugo/issues/8589)
+* Fix warning regression in i18n [ececd1b1](https://github.com/gohugoio/hugo/commit/ececd1b122c741567a80acd8d60ccd6356fa5323) [@bep](https://github.com/bep) [#8492](https://github.com/gohugoio/hugo/issues/8492)
+
+
+
+
+
diff --git a/docs/content/en/news/0.84.1-relnotes/index.md b/docs/content/en/news/0.84.1-relnotes/index.md
new file mode 100644
index 000000000..3cee1e290
--- /dev/null
+++ b/docs/content/en/news/0.84.1-relnotes/index.md
@@ -0,0 +1,21 @@
+
+---
+date: 2021-06-24
+title: "Hugo 0.84.1: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.84.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* Fix language menu config regression [093dacab](https://github.com/gohugoio/hugo/commit/093dacab29a3c6fc363408453d0bc3b1fc159ad5) [@bep](https://github.com/bep) [#8672](https://github.com/gohugoio/hugo/issues/8672)
+* config: Fix merge of config with map[string]string values. [4a9d408f](https://github.com/gohugoio/hugo/commit/4a9d408fe0bbf4c563546e35d2be7ade4e920c4c) [@bep](https://github.com/bep) [#8679](https://github.com/gohugoio/hugo/issues/8679)
+* markup: Rename Header(s) to Heading(s) in ToC struct [a7e3da24](https://github.com/gohugoio/hugo/commit/a7e3da242f98d4799dad013d7ba2f285717640d6) [@bep](https://github.com/bep)
+
+
+
diff --git a/docs/content/en/news/0.84.2-relnotes/index.md b/docs/content/en/news/0.84.2-relnotes/index.md
new file mode 100644
index 000000000..d2469ff0c
--- /dev/null
+++ b/docs/content/en/news/0.84.2-relnotes/index.md
@@ -0,0 +1,26 @@
+
+---
+date: 2021-06-28
+title: "Hugo 0.84.2: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.84.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is mostly a bug fix release, but it also contains some minor modules related improvements. Most notable you now get some more information in ` hugo config mounts`, and even more so when typing ` hugo config mounts -v`.
+
+* modules: Add module.import.noMounts config [40dfdd09](https://github.com/gohugoio/hugo/commit/40dfdd09521bcb8f56150e6791d60445198f27ab) [@bep](https://github.com/bep) [#8708](https://github.com/gohugoio/hugo/issues/8708)
+* modules: Use value type for module.Time [3a6dc6d3](https://github.com/gohugoio/hugo/commit/3a6dc6d3f423c4acb79ef21b5a76e616fa2c9477) [@bep](https://github.com/bep)
+* commands: Add version time to "hugo config mounts" [6cd2110a](https://github.com/gohugoio/hugo/commit/6cd2110ab295f598907a18da91e34d31407c1d9d) [@bep](https://github.com/bep)
+* commands: Add some more info to "hugo config mounts" [6a365c27](https://github.com/gohugoio/hugo/commit/6a365c2712c7607e067e192d213b266f0c88d0f3) [@bep](https://github.com/bep)
+* Fix config handling with empty config entries after merge [19aa95fc](https://github.com/gohugoio/hugo/commit/19aa95fc7f4cd58dcc8a8ff075762cfc86d41dc3) [@bep](https://github.com/bep) [#8701](https://github.com/gohugoio/hugo/issues/8701)
+* Fix config loading for "hugo mod init" [923dd9d1](https://github.com/gohugoio/hugo/commit/923dd9d1c1f649142f3f377109318b07e0f44d5d) [@bep](https://github.com/bep) [#8697](https://github.com/gohugoio/hugo/issues/8697)
+* deps: Update to Minify v2.9.18 [d9bdd37d](https://github.com/gohugoio/hugo/commit/d9bdd37d35ccd436b4dd470ef99efa372a6a086b) [@bep](https://github.com/bep) [#8693](https://github.com/gohugoio/hugo/issues/8693)
+* Remove credit from release notes [b2eaf4c8](https://github.com/gohugoio/hugo/commit/b2eaf4c8c2e31aa1c1bc4a2c0061f661e01d2de1) [@digitalcraftsman](https://github.com/digitalcraftsman)
+
+
+
diff --git a/docs/content/en/news/0.84.3-relnotes/index.md b/docs/content/en/news/0.84.3-relnotes/index.md
new file mode 100644
index 000000000..c805efb46
--- /dev/null
+++ b/docs/content/en/news/0.84.3-relnotes/index.md
@@ -0,0 +1,20 @@
+
+---
+date: 2021-06-29
+title: "Hugo 0.84.3: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.84.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* config: Fix Netlify default cache dir logic [6c8c0c8b](https://github.com/gohugoio/hugo/commit/6c8c0c8b6a0b39b91de44d72a7bd1cd49534a0f1) [@bep](https://github.com/bep) [#8710](https://github.com/gohugoio/hugo/issues/8710)
+* config: Fix handling of invalid OS env config overrides [49fedbc5](https://github.com/gohugoio/hugo/commit/49fedbc51cafa64e4eb0eae9fb79ccbe2d4c6774) [@bep](https://github.com/bep) [#8709](https://github.com/gohugoio/hugo/issues/8709)
+
+
+
diff --git a/docs/content/en/news/0.84.4-relnotes/index.md b/docs/content/en/news/0.84.4-relnotes/index.md
new file mode 100644
index 000000000..a04e4251d
--- /dev/null
+++ b/docs/content/en/news/0.84.4-relnotes/index.md
@@ -0,0 +1,20 @@
+
+---
+date: 2021-07-01
+title: "Hugo 0.84.4: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.84.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* Fix Cloudflare vs Netlify cache dir issue [4c8552b1](https://github.com/gohugoio/hugo/commit/4c8552b11477141777101e0e0609dd1f32d191e9) [@bep](https://github.com/bep) [#8714](https://github.com/gohugoio/hugo/issues/8714)
+* Fix date format in schema and opengraph templates [34e4742f](https://github.com/gohugoio/hugo/commit/34e4742f0caab0d3eb9efd00fce4157d112617b5) [@jmooring](https://github.com/jmooring) [#8671](https://github.com/gohugoio/hugo/issues/8671)
+
+
+
diff --git a/docs/content/en/news/0.85.0-relnotes/featured.png b/docs/content/en/news/0.85.0-relnotes/featured.png
new file mode 100644
index 000000000..eb68d3171
--- /dev/null
+++ b/docs/content/en/news/0.85.0-relnotes/featured.png
Binary files differ
diff --git a/docs/content/en/news/0.85.0-relnotes/index.md b/docs/content/en/news/0.85.0-relnotes/index.md
new file mode 100644
index 000000000..e0c25e537
--- /dev/null
+++ b/docs/content/en/news/0.85.0-relnotes/index.md
@@ -0,0 +1,70 @@
+
+---
+date: 2021-07-05
+title: "Poll based watching"
+description: "Hugo 0.85.0: Polled based alternative when watching for changes and some other nice improvements."
+categories: ["Releases"]
+---
+
+Hugo `0.85.0` is on the smaller side of releases, but the main new thing it brings should be important to those who need it: Poll based watching the filesystem for changes.
+
+Hugo uses [Fsnotify](https://github.com/fsnotify/fsnotify) to provide native file system notifications. This is still the default, but there may situations where this isn't working. The file may not support it (e.g. NFS), or you get the "too many open files" error and cannot or do not want to increase the `ulimit`. Enable polling by passing the `--poll` flag with an interval:
+
+```bash
+hugo server --poll 700ms
+```
+
+You can even do "long polling" by passing a long interval:
+
+```bash
+hugo server --poll 24h
+```
+
+This release represents **23 contributions by 6 contributors** to the main Hugo code base.[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@raoulb](https://github.com/raoulb), [@jmooring](https://github.com/jmooring), and [@digitalcraftsman](https://github.com/digitalcraftsman) for their ongoing contributions.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **1 contributions by 1 contributors**.
+
+Hugo now has:
+
+* 52755+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 431+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 370+ [themes](http://themes.gohugo.io/)
+
+## Enhancements
+
+### Other
+
+* Move time notification to after any build errors [04dc469f](https://github.com/gohugoio/hugo/commit/04dc469fbd78d9fe784829f2cba61c8cce982bdb) [@jhollowe](https://github.com/jhollowe) [#8403](https://github.com/gohugoio/hugo/issues/8403)
+* Log warning for metadata decode error [07919d1c](https://github.com/gohugoio/hugo/commit/07919d1ccb01733f4c6c5952e59228cecc9b26c8) [@IveGotNorto](https://github.com/IveGotNorto) [#8519](https://github.com/gohugoio/hugo/issues/8519)
+* Make the --poll flag a duration [e31b1d19](https://github.com/gohugoio/hugo/commit/e31b1d194655ac3a38fe903ff3995806b129b88a) [@bep](https://github.com/bep) [#8720](https://github.com/gohugoio/hugo/issues/8720)
+* Regen CLI docs [43a23239](https://github.com/gohugoio/hugo/commit/43a23239b2e3ad602c06d9af0b648e0304fc8744) [@bep](https://github.com/bep)
+* Add polling as a fallback to native filesystem events in server watch [24ce98b6](https://github.com/gohugoio/hugo/commit/24ce98b6d10b2088af61c15112f5c5ed915a0c35) [@bep](https://github.com/bep) [#8720](https://github.com/gohugoio/hugo/issues/8720)[#6849](https://github.com/gohugoio/hugo/issues/6849)[#7930](https://github.com/gohugoio/hugo/issues/7930)
+* Bump github.com/yuin/goldmark v1.3.9 [0019d60f](https://github.com/gohugoio/hugo/commit/0019d60f67b6c4dde085753641a917fcd0aa4c76) [@bep](https://github.com/bep) [#8727](https://github.com/gohugoio/hugo/issues/8727)
+* Add module.import.noMounts config [40dfdd09](https://github.com/gohugoio/hugo/commit/40dfdd09521bcb8f56150e6791d60445198f27ab) [@bep](https://github.com/bep) [#8708](https://github.com/gohugoio/hugo/issues/8708)
+* Use value type for module.Time [3a6dc6d3](https://github.com/gohugoio/hugo/commit/3a6dc6d3f423c4acb79ef21b5a76e616fa2c9477) [@bep](https://github.com/bep)
+* Add version time to "hugo config mounts" [6cd2110a](https://github.com/gohugoio/hugo/commit/6cd2110ab295f598907a18da91e34d31407c1d9d) [@bep](https://github.com/bep)
+* Add some more info to "hugo config mounts" [6a365c27](https://github.com/gohugoio/hugo/commit/6a365c2712c7607e067e192d213b266f0c88d0f3) [@bep](https://github.com/bep)
+* Update to Minify v2.9.18 [d9bdd37d](https://github.com/gohugoio/hugo/commit/d9bdd37d35ccd436b4dd470ef99efa372a6a086b) [@bep](https://github.com/bep) [#8693](https://github.com/gohugoio/hugo/issues/8693)
+* Remove credit from release notes [b2eaf4c8](https://github.com/gohugoio/hugo/commit/b2eaf4c8c2e31aa1c1bc4a2c0061f661e01d2de1) [@digitalcraftsman](https://github.com/digitalcraftsman)
+* Rename Header(s) to Heading(s) in ToC struct [a7e3da24](https://github.com/gohugoio/hugo/commit/a7e3da242f98d4799dad013d7ba2f285717640d6) [@bep](https://github.com/bep)
+
+## Fixes
+
+### Other
+
+* Fix tab selection of disabled items in internal pagination template [f75f9007](https://github.com/gohugoio/hugo/commit/f75f90079a6f2a239c8186faba5db5dbe6e36cb6) [@raoulb](https://github.com/raoulb)
+* Fix panic when theme has permalinks config [e451b984](https://github.com/gohugoio/hugo/commit/e451b984cfb45b54a3972cefa59a02d50b0b0fd2) [@bep](https://github.com/bep) [#8724](https://github.com/gohugoio/hugo/issues/8724)
+* Fix Cloudflare vs Netlify cache dir issue [4c8552b1](https://github.com/gohugoio/hugo/commit/4c8552b11477141777101e0e0609dd1f32d191e9) [@bep](https://github.com/bep) [#8714](https://github.com/gohugoio/hugo/issues/8714)
+* Fix date format in schema and opengraph templates [34e4742f](https://github.com/gohugoio/hugo/commit/34e4742f0caab0d3eb9efd00fce4157d112617b5) [@jmooring](https://github.com/jmooring) [#8671](https://github.com/gohugoio/hugo/issues/8671)
+* Fix Netlify default cache dir logic [6c8c0c8b](https://github.com/gohugoio/hugo/commit/6c8c0c8b6a0b39b91de44d72a7bd1cd49534a0f1) [@bep](https://github.com/bep) [#8710](https://github.com/gohugoio/hugo/issues/8710)
+* Fix handling of invalid OS env config overrides [49fedbc5](https://github.com/gohugoio/hugo/commit/49fedbc51cafa64e4eb0eae9fb79ccbe2d4c6774) [@bep](https://github.com/bep) [#8709](https://github.com/gohugoio/hugo/issues/8709)
+* Fix config handling with empty config entries after merge [19aa95fc](https://github.com/gohugoio/hugo/commit/19aa95fc7f4cd58dcc8a8ff075762cfc86d41dc3) [@bep](https://github.com/bep) [#8701](https://github.com/gohugoio/hugo/issues/8701)
+* Fix config loading for "hugo mod init" [923dd9d1](https://github.com/gohugoio/hugo/commit/923dd9d1c1f649142f3f377109318b07e0f44d5d) [@bep](https://github.com/bep) [#8697](https://github.com/gohugoio/hugo/issues/8697)
+* Fix language menu config regression [093dacab](https://github.com/gohugoio/hugo/commit/093dacab29a3c6fc363408453d0bc3b1fc159ad5) [@bep](https://github.com/bep) [#8672](https://github.com/gohugoio/hugo/issues/8672)
+* Fix merge of config with map[string]string values. [4a9d408f](https://github.com/gohugoio/hugo/commit/4a9d408fe0bbf4c563546e35d2be7ade4e920c4c) [@bep](https://github.com/bep) [#8679](https://github.com/gohugoio/hugo/issues/8679)
+
+
+
+
+
diff --git a/docs/content/en/news/0.86.0-relnotes/featured.png b/docs/content/en/news/0.86.0-relnotes/featured.png
new file mode 100644
index 000000000..e9967e864
--- /dev/null
+++ b/docs/content/en/news/0.86.0-relnotes/featured.png
Binary files differ
diff --git a/docs/content/en/news/0.86.0-relnotes/index.md b/docs/content/en/news/0.86.0-relnotes/index.md
new file mode 100644
index 000000000..4b717ed7c
--- /dev/null
+++ b/docs/content/en/news/0.86.0-relnotes/index.md
@@ -0,0 +1,56 @@
+
+---
+date: 2021-07-21
+title: "Hugo 0.86.0: Cascade in Config"
+description: "Hugo 0.86.0 adds cascade keyword to site config, much improved \"active menu item\" logic for section pages, and more."
+categories: ["Releases"]
+---
+
+This release is a set of smaller fixes and improvements. Some of the more notable:
+
+You can now have a top level [cascade](https://gohugo.io/content-management/front-matter#front-matter-cascade) (or one per language, if needed) section in your site configuration (e.g. `config.toml`). This way you can control default front matter values from outside of the content files.
+
+Hugo's [Menu system](https://gohugo.io/content-management/menus/) works well, but hasn't been particularly easy to set the active menu state for section pages without a menu definition. We have had the option [Section Menu for Lazy Bloggers](https://gohugo.io/templates/menu-templates/#section-menu-for-lazy-bloggers). That helped for the common case, but we have now made it behave more sensible out of the box: `$page.HasMenuCurrent $sectionMenuEntry` will now always return true for any descendant of that section. To support this for menu definitions in the site config, we have added a new `pageRef` option on [MenuEntry](https://gohugo.io/variables/menus/#menu-entry-variables):
+
+```toml
+[[menus.main]]
+pageRef = "blog"
+# When pageRef is set, setting `url` is optional; it will be used as a fallback if the page is not found.
+url = "/blog"
+```
+
+Set `pageRef` to a value that [site.GetPage](https://gohugo.io/functions/getpage/) understands, and the menu entry will be correctly connected to the page.
+
+This release represents **14 contributions by 2 contributors** to the main Hugo code base.
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **1 contributions by 1 contributors**.
+
+Hugo now has:
+
+* 53005+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 431+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 370+ [themes](http://themes.gohugo.io/)
+
+## Enhancements
+
+### Other
+
+* Simplify "active menu" logic for section menus [d831d2fc](https://github.com/gohugoio/hugo/commit/d831d2fce8198fb814ea4d3d8c311db5c388d04c) [@bep](https://github.com/bep) [#8776](https://github.com/gohugoio/hugo/issues/8776)
+* Make keepWhitespace = true default for HTML [c19f65f9](https://github.com/gohugoio/hugo/commit/c19f65f956739ab76c38222d48a3e461525e31af) [@bep](https://github.com/bep) [#8771](https://github.com/gohugoio/hugo/issues/8771)
+* Make FileMeta a struct [022c4795](https://github.com/gohugoio/hugo/commit/022c4795510306e08a4aba31504ca382d41c7fac) [@bep](https://github.com/bep) [#8749](https://github.com/gohugoio/hugo/issues/8749)
+* Add tabindex="0" to default <pre> wrapper [f27e5424](https://github.com/gohugoio/hugo/commit/f27e542442d19436f1428cc22bb03aca398d37a7) [@rhymes](https://github.com/rhymes) [#7194](https://github.com/gohugoio/hugo/issues/7194)
+* Rename/reorder the hook methods [80566481](https://github.com/gohugoio/hugo/commit/805664818d0e1f95a3474271c2db3e5f49db26ba) [@bep](https://github.com/bep) [#8755](https://github.com/gohugoio/hugo/issues/8755)
+* Support auto links in render hook [ee3d2bb1](https://github.com/gohugoio/hugo/commit/ee3d2bb1d3974584f47cde7c973fbd1ae1f512b6) [@bep](https://github.com/bep) [#8755](https://github.com/gohugoio/hugo/issues/8755)
+* Adjust a test helper [eb2a5003](https://github.com/gohugoio/hugo/commit/eb2a500367780b07d67c301ce7c866e6b67aa687) [@bep](https://github.com/bep)
+* Add config.cascade [5cb52c23](https://github.com/gohugoio/hugo/commit/5cb52c23150032b3fdb211a095745c512369b463) [@bep](https://github.com/bep) [#8741](https://github.com/gohugoio/hugo/issues/8741)
+* Regenerate image golden testdata [30eea391](https://github.com/gohugoio/hugo/commit/30eea3915b67f72611a3b2f4547146d4c6a96864) [@bep](https://github.com/bep) [#8729](https://github.com/gohugoio/hugo/issues/8729)
+
+## Fixes
+
+### Other
+
+* Fix panic on invalid config in "hugo mod get" and similar [351ed0f5](https://github.com/gohugoio/hugo/commit/351ed0f569f96aff29b03925bf5154d80a164e00) [@bep](https://github.com/bep) [#8773](https://github.com/gohugoio/hugo/issues/8773)
+* Fix Params case handling for menu items defined in site config [634481ba](https://github.com/gohugoio/hugo/commit/634481ba8cfcd865ba0d8811d8834f6af45663d7) [@bep](https://github.com/bep) [#8775](https://github.com/gohugoio/hugo/issues/8775)
+* Fix default values when loading from config dir [ae6cf93c](https://github.com/gohugoio/hugo/commit/ae6cf93c84c3584b111f4b9fa3fb4e3f63d37915) [@bep](https://github.com/bep) [#8763](https://github.com/gohugoio/hugo/issues/8763)
+* Fix the deprecation error/warn log levels [a70da2b7](https://github.com/gohugoio/hugo/commit/a70da2b74a6af0834cce9668cdb6acdb1c86a4c0) [@bep](https://github.com/bep)
+* Fix transparency problem when converting 32-bit images to WebP [8f40f34c](https://github.com/gohugoio/hugo/commit/8f40f34cd10a98598bb822ec633fd5d0ea64b612) [@bep](https://github.com/bep) [#8729](https://github.com/gohugoio/hugo/issues/8729)
diff --git a/docs/content/en/news/0.86.1-relnotes/index.md b/docs/content/en/news/0.86.1-relnotes/index.md
new file mode 100644
index 000000000..68a893bfb
--- /dev/null
+++ b/docs/content/en/news/0.86.1-relnotes/index.md
@@ -0,0 +1,19 @@
+
+---
+date: 2021-07-30
+title: "Hugo 0.86.1: One Bug Fix"
+description: "This version fixes a bug introduced in 0.86.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with one important fix.
+
+* config: Fix a potential deadlock in config reading [94b616bd](https://github.com/gohugoio/hugo/commit/94b616bdfad177daa99f5e87535943f509198f6f) [@bep](https://github.com/bep) [#8791](https://github.com/gohugoio/hugo/issues/8791)
+
+
+
diff --git a/docs/content/en/news/0.87.0-relnotes/featured.png b/docs/content/en/news/0.87.0-relnotes/featured.png
new file mode 100644
index 000000000..21d209857
--- /dev/null
+++ b/docs/content/en/news/0.87.0-relnotes/featured.png
Binary files differ
diff --git a/docs/content/en/news/0.87.0-relnotes/index.md b/docs/content/en/news/0.87.0-relnotes/index.md
new file mode 100644
index 000000000..e033aaa82
--- /dev/null
+++ b/docs/content/en/news/0.87.0-relnotes/index.md
@@ -0,0 +1,90 @@
+
+---
+date: 2021-08-03
+title: "Localized Time and Dates and Numbers"
+description: "Hugo 0.87.0 brings time zone support, localized time and dates and numbers backed by CLDR, and more."
+categories: ["Releases"]
+---
+
+Hugo `0.87` brings two long sought-after features: Default time zone support (per language if needed) for dates without zone offset or location info, and localized time and dates and numbers (backed by [CLDR](https://en.wikipedia.org/wiki/Common_Locale_Data_Repository)).
+
+For more information, see:
+
+* The [time zone config](https://gohugo.io/getting-started/configuration/#timezone) documentation.
+* The [time.Format](https://gohugo.io/functions/dateformat/) documentation. This function will now give you localized dates (with weekdays and months in the current language). It supports all of Go's layout syntax, but also some predefined constants, e.g. `{{ .Date | time.Format ":date_long" }}`.
+* A set of new [localized number formatting ](https://gohugo.io/functions/lang/) functions.
+
+Also in this release, we have switched to using [go-toml](https://github.com/pelletier/go-toml) for all things TOML in Hugo. A big thanks to [@pelletier](https://github.com/pelletier) for his work on the `v2` version. It's both faster than what we had and [TOML v1.0.0](https://toml.io/en/v1.0.0) compliant.
+
+This release represents **40 contributions by 4 contributors** to the main Hugo code base.[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@dependabot[bot]](https://github.com/apps/dependabot), [@digitalcraftsman](https://github.com/digitalcraftsman), and [@jmooring](https://github.com/jmooring) for their ongoing contributions.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **1 contributions by 1 contributors**.
+
+Hugo now has:
+
+* 53261+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 430+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 395+ [themes](http://themes.gohugo.io/)
+
+
+## Notes
+
+* Deprecate Blackfriday and fix a potential deadlock in config [c7252224](https://github.com/gohugoio/hugo/commit/c7252224c4fecfe8321f31b901e2510d98b657c4) [@bep](https://github.com/bep) [#8792](https://github.com/gohugoio/hugo/issues/8792)[#8791](https://github.com/gohugoio/hugo/issues/8791)
+
+## Enhancements
+
+### Templates
+
+* Adjust tests to handle matching local time zones [9ff17c33](https://github.com/gohugoio/hugo/commit/9ff17c332405da5830cef9b3711706b1fc9a7444) [@bep](https://github.com/bep) [#8843](https://github.com/gohugoio/hugo/issues/8843)
+* Add new localized versions of lang.FormatNumber etc. [7907d24b](https://github.com/gohugoio/hugo/commit/7907d24ba16fc5a80930c1aabf5144e684ff7f29) [@bep](https://github.com/bep) [#8820](https://github.com/gohugoio/hugo/issues/8820)
+
+### Other
+
+* Make sure module config loading errors have file positioning info [d70c4857](https://github.com/gohugoio/hugo/commit/d70c485707edfd445bcfc0e84181bc15eb146e76) [@bep](https://github.com/bep) [#8845](https://github.com/gohugoio/hugo/issues/8845)
+* Remove superflous replace statement [7aaaf7e3](https://github.com/gohugoio/hugo/commit/7aaaf7e33afd05d2c74d74fbbfbd34d55e8129eb) [@bep](https://github.com/bep)
+* Reduce binary size vs locale, update to CLDR v36.1 [3a966555](https://github.com/gohugoio/hugo/commit/3a96655592d0b0db4126f20ca717d553dda9c4ed) [@bep](https://github.com/bep) [#8839](https://github.com/gohugoio/hugo/issues/8839)[#8841](https://github.com/gohugoio/hugo/issues/8841)
+* Update github.com/tdewolff/minify/v2 v2.9.20 => v2.9.21 [9a7383ca](https://github.com/gohugoio/hugo/commit/9a7383caf3945b9b11db2b108003f87e2e8b6a3a) [@jmooring](https://github.com/jmooring) [#8831](https://github.com/gohugoio/hugo/issues/8831)
+* Fail on invalid time zone [4d221ce4](https://github.com/gohugoio/hugo/commit/4d221ce468a1209ee9dd6cbece9d1273dad6a29b) [@bep](https://github.com/bep) [#8832](https://github.com/gohugoio/hugo/issues/8832)
+* Improve handling of <nil> Params [e3dc5240](https://github.com/gohugoio/hugo/commit/e3dc5240f01fd5ec67643e40f27c026d707da110) [@bep](https://github.com/bep) [#8825](https://github.com/gohugoio/hugo/issues/8825)
+* Merge branch 'release-0.86.1' [268065cb](https://github.com/gohugoio/hugo/commit/268065cb2d8339392766a23703beaf7cc49d6b5c) [@bep](https://github.com/bep)
+* bump github.com/evanw/esbuild from 0.12.16 to 0.12.17 [e90b3591](https://github.com/gohugoio/hugo/commit/e90b3591a155d1266a86c9490886720740b9d62e) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/getkin/kin-openapi from 0.67.0 to 0.68.0 [4b7da6a9](https://github.com/gohugoio/hugo/commit/4b7da6a9d720ed5ab4b45d6aa3b0b7af4683d02f) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Go back to WARNING for Page deprecations [726fe9c3](https://github.com/gohugoio/hugo/commit/726fe9c3c97a9c979dc7862e7f226fc5ec1341de) [@bep](https://github.com/bep)
+* Handle toml.LocalDate and toml.LocalDateTime in front matter [b5de37ee](https://github.com/gohugoio/hugo/commit/b5de37ee793c01f2acccdea7119be05c4182723f) [@bep](https://github.com/bep) [#8801](https://github.com/gohugoio/hugo/issues/8801)
+* Upgrade github.com/pelletier/go-toml/v2 v2.0.0-beta.3 => v2.0.0-beta.3.0.20210727221244-fa0796069526 [bf301daf](https://github.com/gohugoio/hugo/commit/bf301daf158e5e9673ad5f457ea3a264315942b5) [@bep](https://github.com/bep)
+* Switch to go-toml v2 [a3701e09](https://github.com/gohugoio/hugo/commit/a3701e09313695d4a0f6fb0eb7844c1a4befc07a) [@bep](https://github.com/bep) [#8801](https://github.com/gohugoio/hugo/issues/8801)
+* bump github.com/tdewolff/minify/v2 from 2.9.19 to 2.9.20 [40b6016c](https://github.com/gohugoio/hugo/commit/40b6016cf3f7aac541b042d32e3a162411fd9cd0) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Add a TOML front matter benchmark [7e130571](https://github.com/gohugoio/hugo/commit/7e1305710f08d26d9214abb5410ccd675e59a6e9) [@bep](https://github.com/bep)
+* Add timezone support for front matter dates without one [efa5760d](https://github.com/gohugoio/hugo/commit/efa5760db5ef39ae084bfccb5b8f756c7b117a2a) [@bep](https://github.com/bep) [#8810](https://github.com/gohugoio/hugo/issues/8810)
+* Localize time.Format [a57dda85](https://github.com/gohugoio/hugo/commit/a57dda854b5efd3429af5f0b1564fc9d9d5439b9) [@bep](https://github.com/bep) [#8797](https://github.com/gohugoio/hugo/issues/8797)
+* bump github.com/getkin/kin-openapi from 0.61.0 to 0.67.0 [f9afba93](https://github.com/gohugoio/hugo/commit/f9afba933579de07d2d2e36a457895ec5f1b7f01) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/spf13/cast from 1.3.1 to 1.4.0 [a5d2ba42](https://github.com/gohugoio/hugo/commit/a5d2ba429d34004efd3c6b82c1bcb130c85aca9c) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump google.golang.org/api from 0.45.0 to 0.51.0 [31972f36](https://github.com/gohugoio/hugo/commit/31972f3647b284eea1a66a2e27ed42d04a391a7a) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/sanity-io/litter from 1.5.0 to 1.5.1 [2e58782f](https://github.com/gohugoio/hugo/commit/2e58782f96972487dc5e5ba91d0256ec6e86dad7) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/mattn/go-isatty from 0.0.12 to 0.0.13 [7b68f652](https://github.com/gohugoio/hugo/commit/7b68f6524d24d450330cbe4a2380301e66abee4a) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/spf13/cobra from 1.1.3 to 1.2.1 [81265af2](https://github.com/gohugoio/hugo/commit/81265af2cccd3247df87f05eebf8907a14e978a4) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/mitchellh/mapstructure from 1.3.3 to 1.4.1 [c102c971](https://github.com/gohugoio/hugo/commit/c102c9719b3a29406ef59dc18eca6bd280e4dc43) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/google/go-cmp from 0.5.5 to 0.5.6 [7c0f904f](https://github.com/gohugoio/hugo/commit/7c0f904f29c41e8782b44a37fd4e98e441cd2b2c) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/mitchellh/hashstructure from 1.0.0 to 1.1.0 [b2fbd4d1](https://github.com/gohugoio/hugo/commit/b2fbd4d13a47ce3f6a56f08d0bda77e16793de72) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/gobuffalo/flect from 0.2.2 to 0.2.3 [90041d1b](https://github.com/gohugoio/hugo/commit/90041d1b6d4eeb91ea085f5a97b02887159a655b) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/pelletier/go-toml from 1.9.0 to 1.9.3 [05047096](https://github.com/gohugoio/hugo/commit/05047096f52e43ff09acbc50616441bb42a1c6f7) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/aws/aws-sdk-go from 1.38.23 to 1.40.8 [a469156e](https://github.com/gohugoio/hugo/commit/a469156ea4ad023aa4fda0d3fb657ce003412abb) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/tdewolff/minify/v2 from 2.9.18 to 2.9.19 [18fdd85b](https://github.com/gohugoio/hugo/commit/18fdd85bcc4ac2d9a33546dca8a0a24f63987361) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Update github.com/evanw/esbuild v0.11.16 => v0.12.16 [aeb1935d](https://github.com/gohugoio/hugo/commit/aeb1935d44eb258a794c8f055eedaf3a7655a3ad) [@bep](https://github.com/bep)
+* Update github.com/yuin/goldmark v1.3.9 => v1.4.0 [e09d7882](https://github.com/gohugoio/hugo/commit/e09d7882c88812bedb2c2e66b68c7eed21213dbc) [@bep](https://github.com/bep)
+* bump github.com/frankban/quicktest from 1.12.0 to 1.13.0 [15c0eed0](https://github.com/gohugoio/hugo/commit/15c0eed0487598ac1e5a6fff167b19031b6595bc) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Bump all long-living deprecations to ERRORs [91cbb963](https://github.com/gohugoio/hugo/commit/91cbb963020ac2aead68ff2bbd7e9077d5558abd) [@bep](https://github.com/bep)
+
+## Fixes
+
+### Other
+
+* Fix error handling for the time func alias [6c70e1f2](https://github.com/gohugoio/hugo/commit/6c70e1f22f365322d5f754302e110c9ed716b215) [@bep](https://github.com/bep) [#8835](https://github.com/gohugoio/hugo/issues/8835)
+* Fix a potential deadlock in config reading [94b616bd](https://github.com/gohugoio/hugo/commit/94b616bdfad177daa99f5e87535943f509198f6f) [@bep](https://github.com/bep) [#8791](https://github.com/gohugoio/hugo/issues/8791)
+* Fix theme count in release notes [a352d19d](https://github.com/gohugoio/hugo/commit/a352d19d881474f53d01791be4febd305453a9d6) [@digitalcraftsman](https://github.com/digitalcraftsman)
+
+
+
+
+
diff --git a/docs/content/en/news/0.88.0-relnotes/featured.png b/docs/content/en/news/0.88.0-relnotes/featured.png
new file mode 100644
index 000000000..94af243dc
--- /dev/null
+++ b/docs/content/en/news/0.88.0-relnotes/featured.png
Binary files differ
diff --git a/docs/content/en/news/0.88.0-relnotes/index.md b/docs/content/en/news/0.88.0-relnotes/index.md
new file mode 100644
index 000000000..9dfe9e681
--- /dev/null
+++ b/docs/content/en/news/0.88.0-relnotes/index.md
@@ -0,0 +1,62 @@
+
+---
+date: 2021-09-02
+title: "Go 1.17 Update"
+description: "Hugo 0.88.0 brings Go 1.17 support, a dependency refresh, and more."
+categories: ["Releases"]
+---
+
+The most important piece in this release is the Go 1.17 update. This release is built with that new Go version, but also and more importantly, the Hugo Modules logic has been updated to support Go's new way of (lazy) loading transitive dependencies. If you already have Go 1.17 installed, building existing Hugo Modules backed projects have not been an issue, but `hugo mod init` for a new project could give you _too new_ versions of transitive dependencies. Hugo 0.88 fixes this.
+
+This release represents **26 contributions by 6 contributors** to the main Hugo code base.[@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@dependabot[bot]](https://github.com/apps/dependabot), [@helfper](https://github.com/helfper), and [@wzshiming](https://github.com/wzshiming) for their ongoing contributions.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **9 contributions by 6 contributors**. A special thanks to [@bep](https://github.com/bep), [@jmooring](https://github.com/jmooring), [@StevenMaude](https://github.com/StevenMaude), and [@coliff](https://github.com/coliff) for their work on the documentation site.
+
+Hugo now has:
+
+* 53915+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 430+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 404+ [themes](http://themes.gohugo.io/)
+
+## Notes
+* We have fixed a bug with the import order in `js.Build` for the case `./foo` when both `./foo.js` and `./foo/index.js` exists. This is in line with how both Node and ESBuild's native import resolver does it. We discovered this trying to build AlpineJS v3 from source mounted in `/assets`. See [cf73cc2e](https://github.com/gohugoio/hugo/commit/cf73cc2ececd4e794df09ea382a38ab18960d84e) [@bep](https://github.com/bep) [#8945](https://github.com/gohugoio/hugo/issues/8945).
+
+## Enhancements
+
+### Templates
+
+* Handle nil values in time.AsTime [abd969a6](https://github.com/gohugoio/hugo/commit/abd969a670852f9ed57c1a26434445aa985706fe) [@bep](https://github.com/bep)
+* Handle nil values in time.AsTime [3e110728](https://github.com/gohugoio/hugo/commit/3e11072892ca31bb76980ee38890a4bd92d83dfd) [@bep](https://github.com/bep) [#8865](https://github.com/gohugoio/hugo/issues/8865)
+
+### Other
+
+* Run go mod tidy [6631c9c7](https://github.com/gohugoio/hugo/commit/6631c9c7e00fb9dc237b4ec2fbb261d05df268d1) [@bep](https://github.com/bep)
+* Don't fail on template errors on go mod graph etc. [7d1f806e](https://github.com/gohugoio/hugo/commit/7d1f806ecb3621ae7b545a686d04de4568814055) [@bep](https://github.com/bep) [#8942](https://github.com/gohugoio/hugo/issues/8942)
+* bump github.com/getkin/kin-openapi from 0.74.0 to 0.75.0 [04b59599](https://github.com/gohugoio/hugo/commit/04b59599613a62d378bf3710ac0eb06c9543b96d) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/frankban/quicktest from 1.13.0 to 1.13.1 [c278b6e4](https://github.com/gohugoio/hugo/commit/c278b6e45d56b101db9691347f9e5a99a9319572) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/evanw/esbuild from 0.12.22 to 0.12.24 [107c86fe](https://github.com/gohugoio/hugo/commit/107c86febbb7057c4ae90c6a35b3e8eda24297c7) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Avoid failing with "module not found" for hugo mod init and similar [a0489c2d](https://github.com/gohugoio/hugo/commit/a0489c2dfd3ceb4d0702de0da7a4af3eabce05e5) [@bep](https://github.com/bep) [#8940](https://github.com/gohugoio/hugo/issues/8940)
+* Update to Go 1.17 [0fc2ce9e](https://github.com/gohugoio/hugo/commit/0fc2ce9e4bf0524994a861b7300e4332f6f8d390) [@bep](https://github.com/bep) [#8930](https://github.com/gohugoio/hugo/issues/8930)
+* Remove Pygments from snapcraft.yml [32569285](https://github.com/gohugoio/hugo/commit/32569285c181c8798ef594c12d3cfd7f9a252a04) [@anthonyfok](https://github.com/anthonyfok)
+* bump github.com/fsnotify/fsnotify from 1.4.9 to 1.5.0 [5a46eefb](https://github.com/gohugoio/hugo/commit/5a46eefbc6da3463b796ada8d15902be197455a3) [@bep](https://github.com/bep) [#8920](https://github.com/gohugoio/hugo/issues/8920)
+* Add tabindex when code is not highlighted [7a15edaf](https://github.com/gohugoio/hugo/commit/7a15edafe240471c072d3548b72ccda0271ffd8f) [@helfper](https://github.com/helfper)
+* bump github.com/evanw/esbuild from 0.12.17 to 0.12.22 [2f0945ba](https://github.com/gohugoio/hugo/commit/2f0945bafe501103abe97b2f2b5566b28ec48e52) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump golang.org/x/text from 0.3.6 to 0.3.7 [7ba3f3d2](https://github.com/gohugoio/hugo/commit/7ba3f3d201e386cb9c7c15df5a6cc1c4b46473bd) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/fsnotify/fsnotify from 1.4.9 to 1.5.0 [f7016524](https://github.com/gohugoio/hugo/commit/f70165242b98e3ee182fbac08bf2893a7f09e961) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Prevent minifier from removing quotes around post-processed attributes [bc0743ed](https://github.com/gohugoio/hugo/commit/bc0743ed8eafc3c2d9b21a1e8f1b05d64b85e8ba) [@bep](https://github.com/bep) [#8884](https://github.com/gohugoio/hugo/issues/8884)
+* Avoid too many watch file handles causing the server to fail to start [ffa2fe61](https://github.com/gohugoio/hugo/commit/ffa2fe61172aa0d892234b23d1497c77a6a7f5c4) [@bep](https://github.com/bep)
+* Remove some pygments references [d966f5d0](https://github.com/gohugoio/hugo/commit/d966f5d08d7f75f1ae9acd94e292bf61de2adf0d) [@helfper](https://github.com/helfper)
+* Avoid too many watch file handles causing the server to fail to start [3f38c785](https://github.com/gohugoio/hugo/commit/3f38c785b7208440e2a9dd9a80cb39d4ae23e676) [@wzshiming](https://github.com/wzshiming) [#8904](https://github.com/gohugoio/hugo/issues/8904)
+* bump github.com/getkin/kin-openapi from 0.68.0 to 0.74.0 [24589c08](https://github.com/gohugoio/hugo/commit/24589c0814bc5d21565470bec6215ee792f1655e) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Update github.com/spf13/cast v1.4.0 => v1.4.1 [efebd756](https://github.com/gohugoio/hugo/commit/efebd756eb1f35c515ac82ccc85ec520bac91240) [@bep](https://github.com/bep) [#8891](https://github.com/gohugoio/hugo/issues/8891)
+* Import time/tzdata on Windows [58b6742c](https://github.com/gohugoio/hugo/commit/58b6742cfeb6d4cd04450cbe9592209510c2b977) [@bep](https://github.com/bep) [#8892](https://github.com/gohugoio/hugo/issues/8892)
+* Indent TOML tables [9bba9a3a](https://github.com/gohugoio/hugo/commit/9bba9a3a98fa268391597d8d7a52112fb401d952) [@bep](https://github.com/bep) [#8850](https://github.com/gohugoio/hugo/issues/8850)
+
+## Fixes
+
+### Other
+
+* Fix import order for ./foo when both ./foo.js and ./foo/index.js exists [cf73cc2e](https://github.com/gohugoio/hugo/commit/cf73cc2ececd4e794df09ea382a38ab18960d84e) [@bep](https://github.com/bep) [#8945](https://github.com/gohugoio/hugo/issues/8945)
+* Fix it so disableKinds etc. does not get merged in from theme [f4ffeea7](https://github.com/gohugoio/hugo/commit/f4ffeea71dd3d044a2628bbb5d6634680667398f) [@bep](https://github.com/bep) [#8866](https://github.com/gohugoio/hugo/issues/8866)
+* Fix `lang.FormatPercent` description [d6c8cd77](https://github.com/gohugoio/hugo/commit/d6c8cd771834ae2913658c652e30a9feadc2a7b7) [@salim-b](https://github.com/salim-b)
diff --git a/docs/content/en/news/0.88.1-relnotes/index.md b/docs/content/en/news/0.88.1-relnotes/index.md
new file mode 100644
index 000000000..d94e72fe9
--- /dev/null
+++ b/docs/content/en/news/0.88.1-relnotes/index.md
@@ -0,0 +1,19 @@
+
+---
+date: 2021-09-04
+title: "Hugo 0.88.1: One Fix"
+description: "This version fixes a release issue introduced in 0.88.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with one important fix.
+
+* Bump down again to Go 1.16.7 for the release builds [e1ead4db](https://github.com/gohugoio/hugo/commit/e1ead4dbca4cfb00ec0893c8c8563c91624ecca7) [@bep](https://github.com/bep) [#8952](https://github.com/gohugoio/hugo/issues/8952)[#8955](https://github.com/gohugoio/hugo/issues/8955)
+
+
+
diff --git a/docs/content/en/news/0.89.0-relnotes/featured.png b/docs/content/en/news/0.89.0-relnotes/featured.png
new file mode 100644
index 000000000..474e1f792
--- /dev/null
+++ b/docs/content/en/news/0.89.0-relnotes/featured.png
Binary files differ
diff --git a/docs/content/en/news/0.89.0-relnotes/index.md b/docs/content/en/news/0.89.0-relnotes/index.md
new file mode 100644
index 000000000..6e32087e6
--- /dev/null
+++ b/docs/content/en/news/0.89.0-relnotes/index.md
@@ -0,0 +1,106 @@
+
+---
+date: 2021-11-02
+title: "Fine Grained File Filters"
+description: "Hugo 0.89.0 brings fine grained file filters, archetype rewrite, dependency refresh, and more ..."
+categories: ["Releases"]
+---
+
+This release is a dependency refresh (the new Goldmark version comes with a lot of bug fixes, as one example), many bug fixes, but also some nice new features:
+
+We have added the [configuration settings](https://gohugo.io/hugo-modules/configuration/#module-config-mounts) **includeFiles** and **excludeFiles** to the mount configuration. This allows fine grained control over what files to include, and it works for all of Hugo's file systems (including `/static`).
+
+We have also [reimplemented archetypes](https://github.com/gohugoio/hugo/pull/9045). The old implementation had some issues, mostly related to the context (e.g. name, file paths) passed to the template. This new implementation is using the exact same code path for evaluating the pages as in a regular build. This also makes it more robust and easier to reason about in a multilingual setup. Now, if you are explicit about the target path, Hugo will now always pick the correct mount and language:
+
+```
+hugo new content/en/posts/my-first-post.md
+```
+
+This release represents **50 contributions by 13 contributors** to the main Hugo code base. [@bep](https://github.com/bep) leads the Hugo development with a significant amount of contributions, but also a big shoutout to [@dependabot[bot]](https://github.com/apps/dependabot), [@jmooring](https://github.com/jmooring), and [@anthonyfok](https://github.com/anthonyfok) for their ongoing contributions.
+And thanks to [@digitalcraftsman](https://github.com/digitalcraftsman) for his ongoing work on keeping the themes site in pristine condition.
+
+Many have also been busy writing and fixing the documentation in [hugoDocs](https://github.com/gohugoio/hugoDocs),
+which has received **23 contributions by 9 contributors**. A special thanks to [@jmooring](https://github.com/jmooring), [@bep](https://github.com/bep), [@coliff](https://github.com/coliff), and [@vipkr](https://github.com/vipkr) for their work on the documentation site.
+
+
+Hugo now has:
+
+* 54999+ [stars](https://github.com/gohugoio/hugo/stargazers)
+* 430+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors)
+* 413+ [themes](http://themes.gohugo.io/)
+
+
+## Notes
+
+* Hugo now writes an empty file named `.hugo_build.lock` to the root of the project when building (also when doing `hugo new mypost.md` and other commands that requires a build). We recommend you just leave this file alone. Put it in `.gitignore` or similar if you don't want the file in your source repository.
+* We have updated to ESBuild `v0.13.12`. The release notes for [v0.13.0](https://github.com/evanw/esbuild/releases/tag/v0.13.0) mentions a potential breaking change.
+* We now only build AMD64 release binaries (see [this issue](https://github.com/gohugoio/hugo/issues/9102)) for the Unix OSes (e.g. NetBSD). If you need, say, a binary for ARM64, you need to build it yourself.
+* We now build only one release binary/archive for MacOS (see [this issue](https://github.com/gohugoio/hugo/issues/9035)) that works on both Intel and the new Arm M1 systems.
+* `.File.ContentBaseName` now returns the owning directory name for all bundles (branch an leaf). This is a bug fix, but worth mentioning. See [this issue](https://github.com/gohugoio/hugo/issues/9112).
+* We have updated the Twitter shortcode to use Twitter's new API. See [this issue](https://github.com/gohugoio/hugo/pull/9106) for details.
+
+## Enhancements
+
+### Templates
+
+* Use configured location when date passed to Format is string [e82cbd74](https://github.com/gohugoio/hugo/commit/e82cbd746fd4b07e40fedacc4247b9cd50ef70e7) [@bep](https://github.com/bep) [#9084](https://github.com/gohugoio/hugo/issues/9084)
+* Add path.Clean [e55466ce](https://github.com/gohugoio/hugo/commit/e55466ce70363418309d465a0f2aa6c7ada1e51d) [@bradcypert](https://github.com/bradcypert) [#8885](https://github.com/gohugoio/hugo/issues/8885)
+
+### Other
+
+* Regen CLI docs [f503b639](https://github.com/gohugoio/hugo/commit/f503b6395707f8e576af734efab83092d62fae37) [@bep](https://github.com/bep)
+* Make ContentBaseName() return the directory for branch bundles [30aba7fb](https://github.com/gohugoio/hugo/commit/30aba7fb099678363b0a4828936ed28e740e00e2) [@bep](https://github.com/bep) [#9112](https://github.com/gohugoio/hugo/issues/9112)
+* Update Twitter shortcode oEmbed endpoint [0cc39af6](https://github.com/gohugoio/hugo/commit/0cc39af68232f1a4981aae2e72cf65da762b5768) [@jmooring](https://github.com/jmooring) [#8130](https://github.com/gohugoio/hugo/issues/8130)
+* bump github.com/evanw/esbuild from 0.13.10 to 0.13.12 [7fa66425](https://github.com/gohugoio/hugo/commit/7fa66425aa0a918b4bf5eb9a21f6e567e0a7e876) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/yuin/goldmark from 1.4.1 to 1.4.2 [69210cfd](https://github.com/gohugoio/hugo/commit/69210cfdf341d1faef23f4e9290d51448dd5e0c6) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/aws/aws-sdk-go from 1.40.8 to 1.41.14 [3339c2bb](https://github.com/gohugoio/hugo/commit/3339c2bb618c29bb3ad442c71fe1542ad7195971) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/getkin/kin-openapi from 0.79.0 to 0.80.0 [03bbdba8](https://github.com/gohugoio/hugo/commit/03bbdba8be19929cb6a14243b690372fbfbc6aa6) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/evanw/esbuild from 0.13.8 to 0.13.10 [a772b8fc](https://github.com/gohugoio/hugo/commit/a772b8fc3833e010553c412dd5daa0175e6ccead) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Rename excepted filenames for image golden testdata [dce49d13](https://github.com/gohugoio/hugo/commit/dce49d13336f3dbadaa1359322a277ad4cb55679) [@anthonyfok](https://github.com/anthonyfok) [#6387](https://github.com/gohugoio/hugo/issues/6387)
+* bump github.com/frankban/quicktest from 1.13.1 to 1.14.0 [61c5b7a2](https://github.com/gohugoio/hugo/commit/61c5b7a2e623255be99da7adf200f0591c9a1195) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Validate the target path in hugo new [75c9b893](https://github.com/gohugoio/hugo/commit/75c9b893d98961a504cff9ed3c89055d16e315d6) [@bep](https://github.com/bep) [#9072](https://github.com/gohugoio/hugo/issues/9072)
+* Set zone of datetime from from `go-toml` [b959ecbc](https://github.com/gohugoio/hugo/commit/b959ecbc8175e2bf260f10b08965531bce9bcb7e) [@satotake](https://github.com/satotake) [#8895](https://github.com/gohugoio/hugo/issues/8895)
+* Added nodesource apt repository to snap package [70e45481](https://github.com/gohugoio/hugo/commit/70e454812ef684d02ffa881becf0f8ce6a1b5f8c) [@sergiogarciadev](https://github.com/sergiogarciadev)
+* Set HUGO_ENABLEGITINFO=false override in Set_in_string [355ff83e](https://github.com/gohugoio/hugo/commit/355ff83e74f6e27c79033b8dfb899e3a3b529049) [@anthonyfok](https://github.com/anthonyfok)
+* Add includeFiles and excludeFiles to mount configuration [471ed91c](https://github.com/gohugoio/hugo/commit/471ed91c60cd36645794925cb4892cc820eae626) [@bep](https://github.com/bep) [#9042](https://github.com/gohugoio/hugo/issues/9042)
+* bump github.com/mitchellh/mapstructure from 1.4.1 to 1.4.2 [94a5bac5](https://github.com/gohugoio/hugo/commit/94a5bac5b29bbba1ca4809752fe3fd04a58547b6) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Always preserve the original transform error [9830ca9e](https://github.com/gohugoio/hugo/commit/9830ca9e319f6ce313f4e542a202bd0d0469a9ed) [@bep](https://github.com/bep)
+* Add hyperlink to the banner [b64fd057](https://github.com/gohugoio/hugo/commit/b64fd0577b0fb222bea22ae347acb5dd17b2aa04) [@itsAftabAlam](https://github.com/itsAftabAlam)
+* bump github.com/getkin/kin-openapi from 0.78.0 to 0.79.0 [2706437a](https://github.com/gohugoio/hugo/commit/2706437a7d593b66b0fbad0235dbaf917593971b) [@dependabot[bot]](https://github.com/apps/dependabot)
+* github.com/evanw/esbuild v0.13.5 => v0.13.8 [ec7c993c](https://github.com/gohugoio/hugo/commit/ec7c993cfe216b8a3c6fbac85669cefef59778dd) [@bep](https://github.com/bep)
+* Return error on no content dirs [32c6f656](https://github.com/gohugoio/hugo/commit/32c6f656d93ecf4308f7c30848b13b4c6f157436) [@bep](https://github.com/bep) [#9056](https://github.com/gohugoio/hugo/issues/9056)
+* Add a cross process build lock and use it in the archetype content builder [ba35e698](https://github.com/gohugoio/hugo/commit/ba35e69856900b6fc92681aa841cdcaefbb4b121) [@bep](https://github.com/bep) [#9048](https://github.com/gohugoio/hugo/issues/9048)
+* github.com/alecthomas/chroma v0.9.2 => v0.9.4 [bb053770](https://github.com/gohugoio/hugo/commit/bb053770337e214f41bc1c524d458ba7fbe1fc08) [@bep](https://github.com/bep) [#8532](https://github.com/gohugoio/hugo/issues/8532)
+* Reimplement archetypes [9185e11e](https://github.com/gohugoio/hugo/commit/9185e11effa682ea1ef7dc98f2943743671023a6) [@bep](https://github.com/bep) [#9032](https://github.com/gohugoio/hugo/issues/9032)[#7589](https://github.com/gohugoio/hugo/issues/7589)[#9043](https://github.com/gohugoio/hugo/issues/9043)[#9046](https://github.com/gohugoio/hugo/issues/9046)[#9047](https://github.com/gohugoio/hugo/issues/9047)
+* bump github.com/tdewolff/minify/v2 from 2.9.21 to 2.9.22 [168a3aab](https://github.com/gohugoio/hugo/commit/168a3aab4622786ccd0943137fce3912707f2a46) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Update github.com/evanw/esbuild v0.13.5 [8bcfa3bd](https://github.com/gohugoio/hugo/commit/8bcfa3bdf65492329da8093d841dd04c7a5a10c8) [@bep](https://github.com/bep)
+* bump github.com/mattn/go-isatty from 0.0.13 to 0.0.14 [cd4e67af](https://github.com/gohugoio/hugo/commit/cd4e67af182a1b3aa19db7609c7581c424e9310f) [@dependabot[bot]](https://github.com/apps/dependabot)
+* bump github.com/getkin/kin-openapi from 0.75.0 to 0.78.0 [e6ad1f0e](https://github.com/gohugoio/hugo/commit/e6ad1f0e763ee891bf4d71df0168b6949369c793) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Allow multiple plugins in the PostCSS options map [64abc83f](https://github.com/gohugoio/hugo/commit/64abc83fc4b70c70458c582ae2cf67fc9c67bb3f) [@jmooring](https://github.com/jmooring) [#9015](https://github.com/gohugoio/hugo/issues/9015)
+* Create path.Clean documentation [f8d132d7](https://github.com/gohugoio/hugo/commit/f8d132d731cf8e27c8c17931597fd975e8a7c3cc) [@jmooring](https://github.com/jmooring)
+* Skip a test assertion on CI [26f1919a](https://github.com/gohugoio/hugo/commit/26f1919ae0cf57d754bb029270c20e76cc32cf4d) [@bep](https://github.com/bep)
+* Remove tracking image [ecf025f0](https://github.com/gohugoio/hugo/commit/ecf025f006f22061728e78f2cf50257dde2225ee) [@kambojshalabh35](https://github.com/kambojshalabh35)
+* Revert "Remove credit from release notes" [fab1e43d](https://github.com/gohugoio/hugo/commit/fab1e43de59f3a7596ab23347387d846139bc3a3) [@digitalcraftsman](https://github.com/digitalcraftsman)
+* Pass minification errors to the user [e03f82ee](https://github.com/gohugoio/hugo/commit/e03f82eef2679ec8963894d0b911363eef40941a) [@ptgott](https://github.com/ptgott) [#8954](https://github.com/gohugoio/hugo/issues/8954)
+* Clarify "precision" in currency format functions [a864ffe9](https://github.com/gohugoio/hugo/commit/a864ffe9acf295034bb38e789a0efa62906b2ae4) [@ptgott](https://github.com/ptgott)
+* bump github.com/evanw/esbuild from 0.12.24 to 0.12.29 [b49da332](https://github.com/gohugoio/hugo/commit/b49da33280cb01795ce833e70c2b7b78cca1867e) [@dependabot[bot]](https://github.com/apps/dependabot)
+* Use default math/rand.Source for concurrency safety [7c21eca7](https://github.com/gohugoio/hugo/commit/7c21eca74f95b61d6813d0c0b155bf07c9aa8575) [@odeke-em](https://github.com/odeke-em) [#8981](https://github.com/gohugoio/hugo/issues/8981)
+* Make the error handling for the mod commands more lenient [13ad8408](https://github.com/gohugoio/hugo/commit/13ad8408fc6b645b12898fb8053388fc4848dfbd) [@bep](https://github.com/bep)
+* Add some help text to the 'unknown revision' error [1cabf61d](https://github.com/gohugoio/hugo/commit/1cabf61ddf96b89c95c3ba77a985168184920feb) [@bep](https://github.com/bep) [#6825](https://github.com/gohugoio/hugo/issues/6825)
+* Update github.com/yuin/goldmark v1.4.0 => v1.4.1 [268e3069](https://github.com/gohugoio/hugo/commit/268e3069f37df01a5a58b615844652fb75b8503a) [@jmooring](https://github.com/jmooring) [#8855](https://github.com/gohugoio/hugo/issues/8855)
+
+## Fixes
+
+### Templates
+
+* Fix time.Format with Go layouts [ed6fd26c](https://github.com/gohugoio/hugo/commit/ed6fd26ce884c49b02497728a99e90b92dd65f1f) [@bep](https://github.com/bep) [#9107](https://github.com/gohugoio/hugo/issues/9107)
+
+### Other
+
+* Fix description of lang.FormatNumberCustom [04a3b45d](https://github.com/gohugoio/hugo/commit/04a3b45db4cd28b4821b5c98cd67dfbf1d098957) [@jmooring](https://github.com/jmooring)
+* Fix typo in error message [1d60bd1e](https://github.com/gohugoio/hugo/commit/1d60bd1efa943349636edad3dd8c5427312ab0f1) [@jmooring](https://github.com/jmooring)
+* Fix panic when specifying multiple excludeFiles directives [64e1613f](https://github.com/gohugoio/hugo/commit/64e1613fb390bd893900dc0596e5c3f3c8e1cd8c) [@bep](https://github.com/bep) [#9076](https://github.com/gohugoio/hugo/issues/9076)
+* Fix file permissions in new archetype implementation [e02e0727](https://github.com/gohugoio/hugo/commit/e02e0727e57f123f9a8de506e9c098bb374f7a23) [@bep](https://github.com/bep) [#9057](https://github.com/gohugoio/hugo/issues/9057)
+* Fix the "page picker" logic in --navigateToChanged [096f5e19](https://github.com/gohugoio/hugo/commit/096f5e19217e985bccbf6c539e1b220541ffa6f6) [@bep](https://github.com/bep) [#9051](https://github.com/gohugoio/hugo/issues/9051)
+* Fix a typo on OpenBSD [c7957c90](https://github.com/gohugoio/hugo/commit/c7957c90e83ff2b2cc958bd61486a244f0fd8891) [@nabbisen](https://github.com/nabbisen)
+* Fix value of useResourceCacheWhen in TestResourceChainPostCSS [e6e44b7c](https://github.com/gohugoio/hugo/commit/e6e44b7c41a9b517ffc3775ea0a6aec2b1d4591b) [@jmooring](https://github.com/jmooring)
diff --git a/docs/content/en/news/0.89.1-relnotes/index.md b/docs/content/en/news/0.89.1-relnotes/index.md
new file mode 100644
index 000000000..383cd2ee8
--- /dev/null
+++ b/docs/content/en/news/0.89.1-relnotes/index.md
@@ -0,0 +1,20 @@
+
+---
+date: 2021-11-05
+title: "Hugo 0.89.1: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.89.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* create: Make sure the build lock is released before we open editor [166862a0](https://github.com/gohugoio/hugo/commit/166862a096e1d920f46b18c600e8dadcb478b839) [@bep](https://github.com/bep) [#9121](https://github.com/gohugoio/hugo/issues/9121)
+* readme: Update dependency list [82c33c71](https://github.com/gohugoio/hugo/commit/82c33c7105a4d0c0e097f0d074c02995cb2b4d20) [@deining](https://github.com/deining)
+
+
+
diff --git a/docs/content/en/news/0.89.2-relnotes/index.md b/docs/content/en/news/0.89.2-relnotes/index.md
new file mode 100644
index 000000000..0b886effa
--- /dev/null
+++ b/docs/content/en/news/0.89.2-relnotes/index.md
@@ -0,0 +1,20 @@
+
+---
+date: 2021-11-08
+title: "Hugo 0.89.2: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.89.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* Fix path resolution in hugo new [2b01c85d](https://github.com/gohugoio/hugo/commit/2b01c85d14102353015cf6860d30be3d92964495) [@bep](https://github.com/bep) [#9129](https://github.com/gohugoio/hugo/issues/9129)
+* deps: Upgrade github.com/yuin/goldmark v1.4.2 => v1.4.3 [c09f5c5f](https://github.com/gohugoio/hugo/commit/c09f5c5fd35c03de0444928ada3ce1c5a214b321) [@bep](https://github.com/bep) [#9137](https://github.com/gohugoio/hugo/issues/9137)
+
+
+
diff --git a/docs/content/en/news/0.89.3-relnotes/index.md b/docs/content/en/news/0.89.3-relnotes/index.md
new file mode 100644
index 000000000..ef6887d51
--- /dev/null
+++ b/docs/content/en/news/0.89.3-relnotes/index.md
@@ -0,0 +1,26 @@
+
+---
+date: 2021-11-15
+title: "Hugo 0.89.3: A couple of Bug Fixes"
+description: "This version fixes a couple of bugs introduced in 0.89.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with a couple of important fixes.
+
+* Improve error when we cannot determine content directory in "hugo new" [b8155452](https://github.com/gohugoio/hugo/commit/b8155452ac699473b6b2a34f53988dee01b4da34) [@bep](https://github.com/bep) [#9166](https://github.com/gohugoio/hugo/issues/9166)
+* deps: Upgrade github.com/yuin/goldmark v1.4.3 => v1.4.4 [08552a7a](https://github.com/gohugoio/hugo/commit/08552a7a4cd1fe64efdd2f1b95142fa4295cb298) [@jmooring](https://github.com/jmooring) [#9159](https://github.com/gohugoio/hugo/issues/9159)
+* commands: Make sure pollInterval is always set [fdad91fd](https://github.com/gohugoio/hugo/commit/fdad91fd96bc4636bf3a957cdddce18b66473124) [@bep](https://github.com/bep) [#9165](https://github.com/gohugoio/hugo/issues/9165)
+* create: Improve archetype directory discovery and tests [5f3f6089](https://github.com/gohugoio/hugo/commit/5f3f60898cfe1c087841ec1fbd5ddc2916d0a2c6) [@bep](https://github.com/bep) [#9146](https://github.com/gohugoio/hugo/issues/9146)
+* create: Add a log statement when archetype is a directory [057d02de](https://github.com/gohugoio/hugo/commit/057d02de256a3866b7044abaa4d03c69d9fedef0) [@bep](https://github.com/bep) [#9157](https://github.com/gohugoio/hugo/issues/9157)
+* create: Always print "Content ... created" [43ac59da](https://github.com/gohugoio/hugo/commit/43ac59da850901cc848b35129ca7223f9f9a9b19) [@bep](https://github.com/bep) [#9157](https://github.com/gohugoio/hugo/issues/9157)
+* commands: Fix missing file locking in server partial render [ab5c6990](https://github.com/gohugoio/hugo/commit/ab5c6990a55cbb11d97f857b4619b83fddda3d18) [@bep](https://github.com/bep) [#9162](https://github.com/gohugoio/hugo/issues/9162)
+* modules: Improve error message [9369d13e](https://github.com/gohugoio/hugo/commit/9369d13e59ffac262944477fad3dcd2742d66288) [@davidsneighbour](https://github.com/davidsneighbour)
+
+
+
diff --git a/docs/content/en/news/0.89.4-relnotes/index.md b/docs/content/en/news/0.89.4-relnotes/index.md
new file mode 100644
index 000000000..1f5385f33
--- /dev/null
+++ b/docs/content/en/news/0.89.4-relnotes/index.md
@@ -0,0 +1,19 @@
+
+---
+date: 2021-11-17
+title: "Hugo 0.89.4: One Bug Fix"
+description: "This version fixes one bug introduced in 0.89.0."
+categories: ["Releases"]
+images:
+- images/blog/hugo-bug-poster.png
+
+---
+
+
+
+This is a bug-fix release with one important fix for people using `hugo new` to create new content:
+
+* Fix content dir resolution when main project is a Hugo Module [2e70f61f](https://github.com/gohugoio/hugo/commit/2e70f61fb04cea08ef6598728a57637ae2cc199c) [@bep](https://github.com/bep) [#9177](https://github.com/gohugoio/hugo/issues/9177)
+
+
+
diff --git a/docs/content/en/news/0.9-relnotes/index.md b/docs/content/en/news/0.9-relnotes/index.md
new file mode 100644
index 000000000..5b9bf2c0d
--- /dev/null
+++ b/docs/content/en/news/0.9-relnotes/index.md
@@ -0,0 +1,43 @@
+---
+date: 2013-11-16T04:52:32Z
+description: "Hugo 0.9 is the most significant update to Hugo ever! It contains contributions from dozens of contributors and represents hundreds of features, fixes and improvements."
+title: "Hugo 0.9"
+categories: ["Releases"]
+---
+
+This is the most significant update to Hugo ever!
+It contains contributions from dozens of contributors and represents hundreds of features, fixes and improvements.
+
+# Major New Features
+- New command based interface similar to git (`hugo server -s ./`)
+- Amber template support
+- Full Windows support
+- Better index support including ordering by content weight
+- Add params to site config, available in `.Site.Params` from templates
+- Support for html & xml content (with front matter support)
+- Support for top level pages (in addition to homepage)
+
+# Notable Fixes and Additions
+- Friendlier json support
+- Aliases (redirects)
+- Support for summary content divider (`<!--more-->`)
+- HTML & shortcodes supported in summary (when using divider)
+- Complete overhaul of the documentation site
+- Added "Minutes to Read" functionality
+- Support for a custom 404 page
+- Cleanup of how content organization is handled
+- Loads of unit and performance tests
+- Integration with Travis CI
+- Static directory now watched and copied on any addition or modification
+- Support for relative permalinks
+- Fixed watching being triggered multiple times for the same event
+- Watch now ignores temp files (as created by Vim)
+- Configurable number of posts on homepage
+- Front matter supports multiple types (int, string, date, float)
+- Indexes can now use a default template
+- Addition of truncated bool to content to determine if should show 'more' link
+- Support for `linkTitles`
+- Better handling of most errors with directions on how to resolve
+- Support for more date / time formats
+- Support for Go 1.2
+- Loads more... see commit log for full list.
diff --git a/docs/content/en/news/_index.md b/docs/content/en/news/_index.md
new file mode 100644
index 000000000..353accc3d
--- /dev/null
+++ b/docs/content/en/news/_index.md
@@ -0,0 +1,4 @@
+---
+title: "Hugo News"
+aliases: [/release-notes/]
+---
diff --git a/docs/content/en/news/hugo-macos-intel-vs-arm/featured.png b/docs/content/en/news/hugo-macos-intel-vs-arm/featured.png
new file mode 100644
index 000000000..30e73ad4e
--- /dev/null
+++ b/docs/content/en/news/hugo-macos-intel-vs-arm/featured.png
Binary files differ
diff --git a/docs/content/en/news/hugo-macos-intel-vs-arm/index.html b/docs/content/en/news/hugo-macos-intel-vs-arm/index.html
new file mode 100644
index 000000000..9bc83df5d
--- /dev/null
+++ b/docs/content/en/news/hugo-macos-intel-vs-arm/index.html
@@ -0,0 +1,9139 @@
+---
+title: "Hugo on Apple M1"
+date: 2020-12-10
+description: "The new Mac Mini M1 base model is blazing fast! We have run the Hugo benchmarks comparing it to a MacBook four times more expensive."
+---
+
+<p><i>By <a href="https://github.com/bep/">bep</a></i></p>
+
+<p>
+ The table below shows all of Hugo's benchmarks run on both a MacBook with Intel CPU and a Mac Mini M1 with an ARM CPU.
+</p>
+<p>Some notes:
+
+ <ul>
+ <li>The Intel Mac is a 2019 16 inch MacBook with 2,3 GHz 8-Core Intel Core i9 with 32 GB ram.</li>
+ <li>The ARM Mac is a new Mac Mini M1 base model with 8 GB of ram</li>
+ <li>The benchmarks are run with <code>go test -test.run=NONE -bench="Benchmark" -test.benchmem=true -cpu=8 -count=4 ./...</code>. Since the M1 does not have a concept of Turbo Boost, I kept that on when running the Intel benchmarks.</li>
+ <li>The right column is the Mac Mini, negative (black) numbers are good, positive numbers (red) are not so good.</li>
+ <li>Go is compiled from the latest source: <code>go version devel +5627a4dc30 Wed Dec 9 16:57:37 2020 +0000 darwin/arm64</code></li>
+ </ul>
+</p>
+
+<p>
+ This test isn't exactly comparing apples with apples (pun intended); this is a 4K USD computer compared to a 1K computer, but that makes the performance of the Mac Mini even more impressive.
+</p>
+
+<p>
+ There are some areas where the Intel still outshines the ARM, and that is most likely areas with highly optimized assembly code, and this will certainly improve. More benchmarks can be found <a href="https://roland.zone/m1-go-benchmarks/">here</a>.
+</p>
+
+<p>
+ You probably want to watch <a href="https://github.com/golang/go/issues/42756">issue</a> to track when we can get a Go release with MacOS M1 support. A couple of months?
+</p>
+
+<p>
+ Also, this <a href="https://docs.google.com/document/d/1iWUstb66v66tTVxQWNMZ1BehgNzEmykzqDCUp5l8ip8/edit">work document</a> is a great resource for getting a native Go development environment up and running on the M1.
+</p>
+
+<h2>Benchstat Output</h2>
+
+<style>
+ td {
+ padding: 10px;
+ }
+
+ th,
+ td {
+ border: none;
+ }
+</style>
+<table class="benchstat oldnew" style="border-collapse: collapse; width: 100%">
+ <tr class="configs">
+ <th style="text-align: left;"></th>
+ <th>
+ hugo-intel.txt
+ </th>
+ <th>
+ hugo-m1.txt
+ </th>
+ </tr>
+ <tbody>
+ <tr>
+ <th style="text-align: left;"></th>
+ <th colspan="2" class="metric" style="">
+ time/op
+ </th>
+ <th style="">
+ delta
+ </th>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/common/hreflect
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ IsTruthFul-8
+ </td>
+ <td>
+ 15.0ns ± 3%
+ </td>
+ <td>
+ 12.6ns ± 3%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −16.31%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/common/maps
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ScratchGet-8
+ </td>
+ <td>
+ 15.1ns ± 1%
+ </td>
+ <td>
+ 13.8ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −8.74%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/helpers
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ StripHTML-8
+ </td>
+ <td>
+ 2.02µs ± 0%
+ </td>
+ <td>
+ 1.61µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −20.15%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ TestTruncateWordsToWholeSentence-8
+ </td>
+ <td>
+ 50.1ns ± 2%
+ </td>
+ <td>
+ 45.1ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −9.98%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ TestTruncateWordsToWholeSentenceOld-8
+ </td>
+ <td>
+ 4.23µs ± 2%
+ </td>
+ <td>
+ 3.15µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −25.53%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ TotalWords-8
+ </td>
+ <td>
+ 6.38µs ± 2%
+ </td>
+ <td>
+ 5.90µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −7.63%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ EmojiKyokomiFprint-8
+ </td>
+ <td>
+ 30.9µs ± 5%
+ </td>
+ <td>
+ 25.1µs ± 3%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −18.83%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ EmojiKyokomiSprint-8
+ </td>
+ <td>
+ 29.9µs ± 1%
+ </td>
+ <td>
+ 24.3µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −18.49%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ HugoEmoji-8
+ </td>
+ <td>
+ 1.56µs ±10%
+ </td>
+ <td>
+ 4.27µs ± 3%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;174.22%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ ReaderContains-8
+ </td>
+ <td>
+ 4.01µs ± 1%
+ </td>
+ <td>
+ 4.23µs ± 2%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;5.48%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ MD5FromFileFast/full=false-8
+ </td>
+ <td>
+ 2.36µs ± 1%
+ </td>
+ <td>
+ 1.75µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −25.92%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ MD5FromFileFast/full=true-8
+ </td>
+ <td>
+ 32.7µs ± 2%
+ </td>
+ <td>
+ 36.3µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;10.85%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ UniqueStrings/Safe-8
+ </td>
+ <td>
+ 418ns ± 3%
+ </td>
+ <td>
+ 312ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −25.42%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ UniqueStrings/Reuse_slice-8
+ </td>
+ <td>
+ 352ns ± 2%
+ </td>
+ <td>
+ 271ns ± 2%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −23.25%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ UniqueStrings/Reuse_slice_sorted-8
+ </td>
+ <td>
+ 203ns ± 1%
+ </td>
+ <td>
+ 157ns ± 2%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −22.82%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/hugofs
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ Walk-8
+ </td>
+ <td>
+ 271µs ± 1%
+ </td>
+ <td>
+ 210µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −22.70%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/hugofs/glob
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ GetGlob-8
+ </td>
+ <td>
+ 15.0ns ± 2%
+ </td>
+ <td>
+ 13.8ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −8.12%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/hugolib
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ Cascade/langs-1-8
+ </td>
+ <td>
+ 7.24ms ± 1%
+ </td>
+ <td>
+ 5.06ms ± 2%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −30.06%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ Cascade/langs-3-8
+ </td>
+ <td>
+ 9.20ms ± 0%
+ </td>
+ <td>
+ 6.56ms ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −28.75%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ Cascade/langs-5-8
+ </td>
+ <td>
+ 11.2ms ± 1%
+ </td>
+ <td>
+ 8.0ms ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −28.64%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ Cascade/langs-7-8
+ </td>
+ <td>
+ 13.4ms ± 1%
+ </td>
+ <td>
+ 9.6ms ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −28.18%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ Cascade/langs-9-8
+ </td>
+ <td>
+ 15.8ms ± 1%
+ </td>
+ <td>
+ 11.2ms ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −29.20%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ContentMap/CreateMissingNodes-8
+ </td>
+ <td>
+ 54.3µs ± 3%
+ </td>
+ <td>
+ 49.9µs ± 5%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −8.03%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ GetPage-8
+ </td>
+ <td>
+ 210ns ± 2%
+ </td>
+ <td>
+ 207ns ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −1.46%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ GetPageRegular/From_root-8
+ </td>
+ <td>
+ 1.64µs ± 1%
+ </td>
+ <td>
+ 0.88µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −46.14%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ GetPageRegular/Page_relative-8
+ </td>
+ <td>
+ 1.96µs ± 0%
+ </td>
+ <td>
+ 1.15µs ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −41.52%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ MergeByLanguage-8
+ </td>
+ <td>
+ 644ns ±15%
+ </td>
+ <td>
+ 599ns ±12%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=0.486 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/.Next-pages-300-8
+ </td>
+ <td>
+ 34.0ns ± 1%
+ </td>
+ <td>
+ 31.3ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −7.81%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/.Next-pages-5000-8
+ </td>
+ <td>
+ 65.5ns ± 2%
+ </td>
+ <td>
+ 38.3ns ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −41.42%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/.Prev-pages-300-8
+ </td>
+ <td>
+ 34.0ns ± 1%
+ </td>
+ <td>
+ 31.6ns ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −7.00%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/.Prev-pages-5000-8
+ </td>
+ <td>
+ 65.8ns ± 2%
+ </td>
+ <td>
+ 37.9ns ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −42.37%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.Next-pages-300-8
+ </td>
+ <td>
+ 911ns ±17%
+ </td>
+ <td>
+ 621ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −31.82%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.Next-pages-5000-8
+ </td>
+ <td>
+ 1.94µs ± 9%
+ </td>
+ <td>
+ 1.67µs ±11%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=0.057 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.Prev-pages-300-8
+ </td>
+ <td>
+ 854ns ±32%
+ </td>
+ <td>
+ 631ns ± 3%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −26.16%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.Prev-pages-5000-8
+ </td>
+ <td>
+ 1.98µs ± 4%
+ </td>
+ <td>
+ 1.66µs ± 5%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −16.34%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.Shuffled.Next-pages-300-8
+ </td>
+ <td>
+ 914ns ±19%
+ </td>
+ <td>
+ 623ns ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −31.83%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.Shuffled.Next-pages-5000-8
+ </td>
+ <td>
+ 13.6µs ± 1%
+ </td>
+ <td>
+ 11.3µs ± 4%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −17.04%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.Shuffled.Prev-pages-300-8
+ </td>
+ <td>
+ 952ns ±21%
+ </td>
+ <td>
+ 627ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −34.12%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.Shuffled.Prev-pages-5000-8
+ </td>
+ <td>
+ 13.1µs ± 1%
+ </td>
+ <td>
+ 11.2µs ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −14.35%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.ByTitle.Next-pages-300-8
+ </td>
+ <td>
+ 752ns ± 2%
+ </td>
+ <td>
+ 630ns ± 4%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −16.24%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.ByTitle.Next-pages-5000-8
+ </td>
+ <td>
+ 13.5µs ± 3%
+ </td>
+ <td>
+ 11.1µs ± 4%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −17.84%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ResourceChainPostProcess-8
+ </td>
+ <td>
+ 40.1ms ± 1%
+ </td>
+ <td>
+ 35.6ms ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −11.23%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ ReplaceShortcodeTokens-8
+ </td>
+ <td>
+ 2.30µs ±34%
+ </td>
+ <td>
+ 7.02µs ± 3%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;205.66%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Edit_Bundle_with_image-8
+ </td>
+ <td>
+ 754µs ± 0%
+ </td>
+ <td>
+ 446µs ± 7%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −40.85%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Edit_Bundle_with_JSON_file-8
+ </td>
+ <td>
+ 728µs ± 0%
+ </td>
+ <td>
+ 437µs ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −39.95%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Edit_Tags_and_categories-8
+ </td>
+ <td>
+ 15.5ms ± 2%
+ </td>
+ <td>
+ 12.9ms ± 6%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −16.46%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Edit_Canonify_URLs-8
+ </td>
+ <td>
+ 27.1ms ± 2%
+ </td>
+ <td>
+ 25.9ms ± 2%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −4.69%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Edit_Deep_content_tree-8
+ </td>
+ <td>
+ 32.2ms ± 5%
+ </td>
+ <td>
+ 25.7ms ± 3%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −20.16%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Edit_Many_HTML_templates-8
+ </td>
+ <td>
+ 11.3ms ± 2%
+ </td>
+ <td>
+ 8.5ms ± 2%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −24.98%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Edit_Page_collections-8
+ </td>
+ <td>
+ 19.7ms ± 2%
+ </td>
+ <td>
+ 14.5ms ± 3%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −26.11%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Edit_List_terms-8
+ </td>
+ <td>
+ 3.77ms ± 2%
+ </td>
+ <td>
+ 2.55ms ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −32.41%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Regular_Bundle_with_image-8
+ </td>
+ <td>
+ 5.54ms ± 0%
+ </td>
+ <td>
+ 3.98ms ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −28.09%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Regular_Bundle_with_JSON_file-8
+ </td>
+ <td>
+ 5.71ms ± 1%
+ </td>
+ <td>
+ 4.03ms ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −29.43%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Regular_Tags_and_categories-8
+ </td>
+ <td>
+ 24.6ms ± 2%
+ </td>
+ <td>
+ 19.0ms ± 2%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −22.47%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Regular_Canonify_URLs-8
+ </td>
+ <td>
+ 32.6ms ± 1%
+ </td>
+ <td>
+ 29.9ms ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −8.17%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Regular_Deep_content_tree-8
+ </td>
+ <td>
+ 41.3ms ± 1%
+ </td>
+ <td>
+ 31.6ms ± 2%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −23.60%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Regular_Many_HTML_templates-8
+ </td>
+ <td>
+ 19.9ms ± 1%
+ </td>
+ <td>
+ 14.4ms ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −27.53%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Regular_Page_collections-8
+ </td>
+ <td>
+ 28.8ms ± 0%
+ </td>
+ <td>
+ 21.2ms ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −26.29%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Regular_List_terms-8
+ </td>
+ <td>
+ 9.02ms ± 1%
+ </td>
+ <td>
+ 6.55ms ± 2%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −27.39%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/identity
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ IdentityManager/Add-8
+ </td>
+ <td>
+ 702ns ±10%
+ </td>
+ <td>
+ 404ns ± 3%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −42.42%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ IdentityManager/Search-8
+ </td>
+ <td>
+ 2.14µs ± 2%
+ </td>
+ <td>
+ 1.15µs ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −46.07%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/langs/i18n
+ </th>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/all-present-8
+ </td>
+ <td>
+ 254ns ± 1%
+ </td>
+ <td>
+ 315ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;23.86%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/present-in-default-8
+ </td>
+ <td>
+ 650ns ± 2%
+ </td>
+ <td>
+ 604ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −6.97%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/present-in-current-8
+ </td>
+ <td>
+ 252ns ± 1%
+ </td>
+ <td>
+ 309ns ± 2%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;22.83%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/missing-8
+ </td>
+ <td>
+ 614ns ± 0%
+ </td>
+ <td>
+ 574ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −6.48%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/file-missing-8
+ </td>
+ <td>
+ 1.43µs ± 3%
+ </td>
+ <td>
+ 1.19µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −16.26%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/context-provided-8
+ </td>
+ <td>
+ 732ns ± 1%
+ </td>
+ <td>
+ 648ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −11.46%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/readingTime-one-8
+ </td>
+ <td>
+ 480ns ± 1%
+ </td>
+ <td>
+ 462ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −3.61%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/readingTime-many-8
+ </td>
+ <td>
+ 972ns ± 0%
+ </td>
+ <td>
+ 823ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −15.28%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/same-id-and-translation-8
+ </td>
+ <td>
+ 248ns ± 1%
+ </td>
+ <td>
+ 312ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;26.12%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/same-id-and-translation-default-8
+ </td>
+ <td>
+ 648ns ± 2%
+ </td>
+ <td>
+ 602ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −6.96%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/unknown-language-code-8
+ </td>
+ <td>
+ 1.48µs ± 1%
+ </td>
+ <td>
+ 1.22µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −17.61%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/known-language-missing-plural-8
+ </td>
+ <td>
+ 985ns ± 3%
+ </td>
+ <td>
+ 858ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −12.99%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/dotted-bare-key-8
+ </td>
+ <td>
+ 238ns ± 2%
+ </td>
+ <td>
+ 314ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;32.13%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/lang-with-hyphen-8
+ </td>
+ <td>
+ 574ns ± 2%
+ </td>
+ <td>
+ 569ns ± 1%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=0.229 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/markup/goldmark
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ SanitizeAnchorName-8
+ </td>
+ <td>
+ 395ns ± 1%
+ </td>
+ <td>
+ 334ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −15.39%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ SanitizeAnchorNameAsciiOnly-8
+ </td>
+ <td>
+ 866ns ± 5%
+ </td>
+ <td>
+ 660ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −23.82%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ SanitizeAnchorNameBlackfriday-8
+ </td>
+ <td>
+ 528ns ± 1%
+ </td>
+ <td>
+ 439ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −17.00%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ SanitizeAnchorNameString-8
+ </td>
+ <td>
+ 438ns ± 2%
+ </td>
+ <td>
+ 362ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −17.39%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/metrics
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ HowSimilar-8
+ </td>
+ <td>
+ 1.92µs ± 0%
+ </td>
+ <td>
+ 1.50µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −21.55%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/output
+ </th>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ Layout-8
+ </td>
+ <td>
+ 78.7ns ± 1%
+ </td>
+ <td>
+ 96.0ns ± 8%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;22.06%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ LayoutUncached-8
+ </td>
+ <td>
+ 6.93µs ± 0%
+ </td>
+ <td>
+ 5.69µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −17.83%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/parser/metadecoders
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ StringifyMapKeysStringsOnlyInterfaceMaps-8
+ </td>
+ <td>
+ 790ns ±10%
+ </td>
+ <td>
+ 598ns ± 8%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −24.31%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ StringifyMapKeysStringsOnlyStringMaps-8
+ </td>
+ <td>
+ 158ns ± 1%
+ </td>
+ <td>
+ 149ns ± 2%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −5.80%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ StringifyMapKeysIntegers-8
+ </td>
+ <td>
+ 1.10µs ± 1%
+ </td>
+ <td>
+ 0.83µs ± 3%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −23.95%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/parser/pageparser
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ShortcodeLexer-8
+ </td>
+ <td>
+ 86.5µs ± 2%
+ </td>
+ <td>
+ 58.0µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −32.92%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ Parse-8
+ </td>
+ <td>
+ 10.6µs ± 1%
+ </td>
+ <td>
+ 7.9µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −25.50%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ParseWithEmoji-8
+ </td>
+ <td>
+ 12.9µs ± 2%
+ </td>
+ <td>
+ 10.1µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −21.55%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/publisher
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ClassCollectorWriter-8
+ </td>
+ <td>
+ 18.2µs ± 0%
+ </td>
+ <td>
+ 13.6µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −25.52%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/related
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ RelatedNewIndex/singles-8
+ </td>
+ <td>
+ 48.2µs ± 1%
+ </td>
+ <td>
+ 40.8µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −15.24%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ RelatedNewIndex/all-8
+ </td>
+ <td>
+ 47.8µs ± 1%
+ </td>
+ <td>
+ 39.5µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −17.21%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ RelatedMatchesIn-8
+ </td>
+ <td>
+ 83.3µs ±12%
+ </td>
+ <td>
+ 78.0µs ±11%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=0.343 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/resources
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ImageExif/Cold_cache-8
+ </td>
+ <td>
+ 192µs ± 6%
+ </td>
+ <td>
+ 166µs ± 3%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −13.75%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ImageExif/Cold_cache,_10-8
+ </td>
+ <td>
+ 209µs ± 2%
+ </td>
+ <td>
+ 173µs ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −17.10%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ ImageExif/Warm_cache-8
+ </td>
+ <td>
+ 37.5µs ± 1%
+ </td>
+ <td>
+ 441.3µs ±16%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;1077.34%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ ResizeParallel-8
+ </td>
+ <td>
+ 1.27µs ± 1%
+ </td>
+ <td>
+ 1.64µs ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;29.40%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ ResourcesMatch-8
+ </td>
+ <td>
+ 524ns ± 6%
+ </td>
+ <td>
+ 638ns ± 7%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;21.73%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ResourcesMatchA100-8
+ </td>
+ <td>
+ 136ns ±12%
+ </td>
+ <td>
+ 120ns ± 3%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −11.25%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ AssignMetadata-8
+ </td>
+ <td>
+ 15.4µs ± 1%
+ </td>
+ <td>
+ 11.6µs ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −24.64%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/resources/images/exif
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ DecodeExif-8
+ </td>
+ <td>
+ 99.5µs ± 1%
+ </td>
+ <td>
+ 71.2µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −28.43%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/resources/page
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ PageCache-8
+ </td>
+ <td>
+ 137ns ± 1%
+ </td>
+ <td>
+ 131ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −4.23%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/Shuffled-100-8
+ </td>
+ <td>
+ 142ns ± 1%
+ </td>
+ <td>
+ 144ns ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=0.314 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/Shuffled-500-8
+ </td>
+ <td>
+ 613ns ± 5%
+ </td>
+ <td>
+ 595ns ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=1.000 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/Shuffled-1000-8
+ </td>
+ <td>
+ 1.60µs ± 4%
+ </td>
+ <td>
+ 1.42µs ± 5%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −11.24%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/Shuffled-5000-8
+ </td>
+ <td>
+ 6.28µs ± 2%
+ </td>
+ <td>
+ 5.97µs ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −4.89%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByWeight-100-8
+ </td>
+ <td>
+ 146ns ± 1%
+ </td>
+ <td>
+ 143ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −1.63%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByWeight-500-8
+ </td>
+ <td>
+ 615ns ± 4%
+ </td>
+ <td>
+ 595ns ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=0.314 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByWeight-1000-8
+ </td>
+ <td>
+ 801ns ± 1%
+ </td>
+ <td>
+ 657ns ± 3%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −17.94%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByWeight-5000-8
+ </td>
+ <td>
+ 899ns ± 1%
+ </td>
+ <td>
+ 753ns ± 6%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −16.27%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByWeight.Reverse-100-8
+ </td>
+ <td>
+ 144ns ± 1%
+ </td>
+ <td>
+ 144ns ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=0.514 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByWeight.Reverse-500-8
+ </td>
+ <td>
+ 603ns ± 2%
+ </td>
+ <td>
+ 595ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −1.32%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByWeight.Reverse-1000-8
+ </td>
+ <td>
+ 901ns ± 4%
+ </td>
+ <td>
+ 758ns ± 7%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −15.85%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByWeight.Reverse-5000-8
+ </td>
+ <td>
+ 994ns ± 5%
+ </td>
+ <td>
+ 855ns ± 5%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −13.97%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByDate-100-8
+ </td>
+ <td>
+ 141ns ± 1%
+ </td>
+ <td>
+ 144ns ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;2.06%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByDate-500-8
+ </td>
+ <td>
+ 594ns ± 2%
+ </td>
+ <td>
+ 595ns ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=0.257 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByDate-1000-8
+ </td>
+ <td>
+ 454ns ±13%
+ </td>
+ <td>
+ 393ns ± 7%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=0.057 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByDate-5000-8
+ </td>
+ <td>
+ 530ns ±10%
+ </td>
+ <td>
+ 461ns ± 6%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=0.057 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByPublishDate-100-8
+ </td>
+ <td>
+ 140ns ± 1%
+ </td>
+ <td>
+ 144ns ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;2.51%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByPublishDate-500-8
+ </td>
+ <td>
+ 583ns ± 0%
+ </td>
+ <td>
+ 596ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;2.14%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByPublishDate-1000-8
+ </td>
+ <td>
+ 441ns ± 6%
+ </td>
+ <td>
+ 443ns ± 8%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=0.686 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByPublishDate-5000-8
+ </td>
+ <td>
+ 535ns ± 4%
+ </td>
+ <td>
+ 532ns ± 7%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=0.686 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByTitle-100-8
+ </td>
+ <td>
+ 141ns ± 2%
+ </td>
+ <td>
+ 143ns ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=0.229 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByTitle-500-8
+ </td>
+ <td>
+ 586ns ± 0%
+ </td>
+ <td>
+ 595ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;1.70%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByTitle-1000-8
+ </td>
+ <td>
+ 1.00µs ± 9%
+ </td>
+ <td>
+ 0.84µs ± 3%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −16.22%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByTitle-5000-8
+ </td>
+ <td>
+ 1.22µs ±11%
+ </td>
+ <td>
+ 0.99µs ± 7%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −18.47%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByTitle_Linear-100-8
+ </td>
+ <td>
+ 142ns ± 2%
+ </td>
+ <td>
+ 144ns ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=0.286 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByTitle_Linear-500-8
+ </td>
+ <td>
+ 587ns ± 1%
+ </td>
+ <td>
+ 596ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;1.49%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByTitle_Linear-1000-8
+ </td>
+ <td>
+ 1.15µs ± 2%
+ </td>
+ <td>
+ 1.16µs ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=0.286 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByTitle_Linear-5000-8
+ </td>
+ <td>
+ 5.63µs ± 1%
+ </td>
+ <td>
+ 5.67µs ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=0.343 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ SortByWeightAndReverse-8
+ </td>
+ <td>
+ 3.99µs ± 4%
+ </td>
+ <td>
+ 3.61µs ± 4%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −9.63%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ PermalinkExpand-8
+ </td>
+ <td>
+ 970ns ± 9%
+ </td>
+ <td>
+ 709ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −26.86%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/resources/resource_transformers/postcss
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ImportResolver-8
+ </td>
+ <td>
+ 46.1µs ± 2%
+ </td>
+ <td>
+ 28.1µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −38.96%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/tpl/internal/go_templates/htmltemplate
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ CSSEscaper-8
+ </td>
+ <td>
+ 666ns ± 2%
+ </td>
+ <td>
+ 552ns ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −17.11%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ CSSEscaperNoSpecials-8
+ </td>
+ <td>
+ 166ns ± 1%
+ </td>
+ <td>
+ 138ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −16.47%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ DecodeCSS-8
+ </td>
+ <td>
+ 355ns ± 1%
+ </td>
+ <td>
+ 351ns ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=0.057 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ DecodeCSSNoSpecials-8
+ </td>
+ <td>
+ 4.83ns ± 2%
+ </td>
+ <td>
+ 4.06ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −15.84%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ CSSValueFilter-8
+ </td>
+ <td>
+ 116ns ± 1%
+ </td>
+ <td>
+ 105ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −9.37%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ CSSValueFilterOk-8
+ </td>
+ <td>
+ 128ns ± 3%
+ </td>
+ <td>
+ 115ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −10.08%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ EscapedExecute-8
+ </td>
+ <td>
+ 1.80µs ± 1%
+ </td>
+ <td>
+ 1.35µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −25.07%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ HTMLNospaceEscaper-8
+ </td>
+ <td>
+ 768ns ± 2%
+ </td>
+ <td>
+ 628ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −18.25%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ HTMLNospaceEscaperNoSpecials-8
+ </td>
+ <td>
+ 221ns ± 1%
+ </td>
+ <td>
+ 159ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −28.16%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ StripTags-8
+ </td>
+ <td>
+ 611ns ± 2%
+ </td>
+ <td>
+ 500ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −18.07%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ StripTagsNoSpecials-8
+ </td>
+ <td>
+ 71.3ns ± 0%
+ </td>
+ <td>
+ 55.0ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −22.90%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSValEscaperWithNum-8
+ </td>
+ <td>
+ 355ns ± 2%
+ </td>
+ <td>
+ 274ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −22.83%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSValEscaperWithStr-8
+ </td>
+ <td>
+ 1.29µs ± 1%
+ </td>
+ <td>
+ 0.99µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −23.43%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSValEscaperWithStrNoSpecials-8
+ </td>
+ <td>
+ 412ns ± 1%
+ </td>
+ <td>
+ 317ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −23.08%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSValEscaperWithObj-8
+ </td>
+ <td>
+ 1.49µs ± 1%
+ </td>
+ <td>
+ 1.14µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −23.15%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSValEscaperWithObjNoSpecials-8
+ </td>
+ <td>
+ 566ns ± 1%
+ </td>
+ <td>
+ 441ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −22.15%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSStrEscaperNoSpecials-8
+ </td>
+ <td>
+ 182ns ± 2%
+ </td>
+ <td>
+ 143ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −21.16%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSStrEscaper-8
+ </td>
+ <td>
+ 681ns ± 1%
+ </td>
+ <td>
+ 557ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −18.18%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSRegexpEscaperNoSpecials-8
+ </td>
+ <td>
+ 176ns ± 1%
+ </td>
+ <td>
+ 152ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −13.74%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSRegexpEscaper-8
+ </td>
+ <td>
+ 694ns ± 2%
+ </td>
+ <td>
+ 561ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −19.20%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ TemplateSpecialTags-8
+ </td>
+ <td>
+ 120µs ± 1%
+ </td>
+ <td>
+ 92µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −23.07%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ URLEscaper-8
+ </td>
+ <td>
+ 1.50µs ± 1%
+ </td>
+ <td>
+ 1.06µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −29.35%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ URLEscaperNoSpecials-8
+ </td>
+ <td>
+ 140ns ± 1%
+ </td>
+ <td>
+ 121ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −13.45%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ URLNormalizer-8
+ </td>
+ <td>
+ 1.10µs ± 1%
+ </td>
+ <td>
+ 0.78µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −28.45%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ URLNormalizerNoSpecials-8
+ </td>
+ <td>
+ 160ns ± 1%
+ </td>
+ <td>
+ 136ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −15.00%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ SrcsetFilter-8
+ </td>
+ <td>
+ 497ns ± 2%
+ </td>
+ <td>
+ 343ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −30.87%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ SrcsetFilterNoSpecials-8
+ </td>
+ <td>
+ 273ns ± 1%
+ </td>
+ <td>
+ 217ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −20.71%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/tpl/internal/go_templates/texttemplate/parse
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ParseLarge-8
+ </td>
+ <td>
+ 18.6ms ± 0%
+ </td>
+ <td>
+ 14.6ms ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −21.41%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ VariableString-8
+ </td>
+ <td>
+ 98.2ns ± 1%
+ </td>
+ <td>
+ 79.9ns ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −18.72%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ListString-8
+ </td>
+ <td>
+ 2.77µs ± 1%
+ </td>
+ <td>
+ 2.26µs ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −18.34%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/tpl/tplimpl
+ </th>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ Partial-8
+ </td>
+ <td>
+ 1.01µs ± 2%
+ </td>
+ <td>
+ 1.73µs ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;70.50%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ PartialCached-8
+ </td>
+ <td>
+ 61.0ns ± 3%
+ </td>
+ <td>
+ 100.3ns ± 2%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;64.49%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/tpl/transform
+ </th>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ UnmarshalString-8
+ </td>
+ <td>
+ 1.14µs ± 1%
+ </td>
+ <td>
+ 1.29µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;13.17%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ UnmarshalResource-8
+ </td>
+ <td>
+ 138ns ± 0%
+ </td>
+ <td>
+ 108ns ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −22.17%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/transform/urlreplacers
+ </th>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ AbsURL-8
+ </td>
+ <td>
+ 4.50µs ± 1%
+ </td>
+ <td>
+ 4.81µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;6.85%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ AbsURLSrcset-8
+ </td>
+ <td>
+ 3.49µs ± 2%
+ </td>
+ <td>
+ 3.21µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −7.97%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ XMLAbsURLSrcset-8
+ </td>
+ <td>
+ 3.41µs ± 1%
+ </td>
+ <td>
+ 3.23µs ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −5.27%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ XMLAbsURL-8
+ </td>
+ <td>
+ 1.85µs ± 0%
+ </td>
+ <td>
+ 1.85µs ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=0.343 n=4&#43;4)
+ </td>
+ </tr>
+ <tr>
+ <td style="text-align: right;padding: 0em 1em;">
+ &nbsp;
+ </td>
+ </tr>
+ </tbody>
+ <tbody>
+ <tr>
+ <th style="text-align: left;"></th>
+ <th colspan="2" class="metric" style="">
+ alloc/op
+ </th>
+ <th style="">
+ delta
+ </th>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/common/hreflect
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ IsTruthFul-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/common/maps
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ ScratchGet-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/helpers
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ StripHTML-8
+ </td>
+ <td>
+ 736B ± 0%
+ </td>
+ <td>
+ 728B ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −1.09%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ TestTruncateWordsToWholeSentence-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ TestTruncateWordsToWholeSentenceOld-8
+ </td>
+ <td>
+ 2.50kB ± 0%
+ </td>
+ <td>
+ 2.50kB ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ TotalWords-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ EmojiKyokomiFprint-8
+ </td>
+ <td>
+ 31.4kB ± 0%
+ </td>
+ <td>
+ 31.4kB ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ EmojiKyokomiSprint-8
+ </td>
+ <td>
+ 31.3kB ± 0%
+ </td>
+ <td>
+ 31.3kB ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=1.000 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ HugoEmoji-8
+ </td>
+ <td>
+ 624B ± 0%
+ </td>
+ <td>
+ 616B ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −1.28%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ ReaderContains-8
+ </td>
+ <td>
+ 1.26kB ± 0%
+ </td>
+ <td>
+ 1.26kB ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ MD5FromFileFast/full=false-8
+ </td>
+ <td>
+ 240B ± 0%
+ </td>
+ <td>
+ 144B ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −40.00%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ MD5FromFileFast/full=true-8
+ </td>
+ <td>
+ 32.9kB ± 0%
+ </td>
+ <td>
+ 32.9kB ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=0.429 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ UniqueStrings/Safe-8
+ </td>
+ <td>
+ 224B ± 0%
+ </td>
+ <td>
+ 224B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ UniqueStrings/Reuse_slice-8
+ </td>
+ <td>
+ 96.0B ± 0%
+ </td>
+ <td>
+ 96.0B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ UniqueStrings/Reuse_slice_sorted-8
+ </td>
+ <td>
+ 32.0B ± 0%
+ </td>
+ <td>
+ 24.0B ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −25.00%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/hugofs
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ Walk-8
+ </td>
+ <td>
+ 103kB ± 0%
+ </td>
+ <td>
+ 99kB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −3.89%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/hugofs/glob
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ GetGlob-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/hugolib
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ Cascade/langs-1-8
+ </td>
+ <td>
+ 2.33MB ± 0%
+ </td>
+ <td>
+ 2.25MB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −3.37%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ Cascade/langs-3-8
+ </td>
+ <td>
+ 3.31MB ± 0%
+ </td>
+ <td>
+ 3.21MB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −2.93%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ Cascade/langs-5-8
+ </td>
+ <td>
+ 4.32MB ± 0%
+ </td>
+ <td>
+ 4.20MB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −2.62%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ Cascade/langs-7-8
+ </td>
+ <td>
+ 5.37MB ± 0%
+ </td>
+ <td>
+ 5.23MB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −2.64%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ Cascade/langs-9-8
+ </td>
+ <td>
+ 6.44MB ± 0%
+ </td>
+ <td>
+ 6.27MB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −2.57%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ContentMap/CreateMissingNodes-8
+ </td>
+ <td>
+ 14.9kB ± 0%
+ </td>
+ <td>
+ 14.4kB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −3.11%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ GetPage-8
+ </td>
+ <td>
+ 16.0B ± 0%
+ </td>
+ <td>
+ 16.0B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ GetPageRegular/From_root-8
+ </td>
+ <td>
+ 686B ± 0%
+ </td>
+ <td>
+ 239B ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −65.16%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ GetPageRegular/Page_relative-8
+ </td>
+ <td>
+ 763B ± 0%
+ </td>
+ <td>
+ 324B ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −57.54%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ MergeByLanguage-8
+ </td>
+ <td>
+ 51.5B ± 1%
+ </td>
+ <td>
+ 50.8B ± 1%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=0.286 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/.Next-pages-300-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/.Next-pages-5000-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/.Prev-pages-300-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/.Prev-pages-5000-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.Next-pages-300-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.Next-pages-5000-8
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.Prev-pages-300-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.Prev-pages-5000-8
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.Shuffled.Next-pages-300-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.Shuffled.Next-pages-5000-8
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.Shuffled.Prev-pages-300-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.Shuffled.Prev-pages-5000-8
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.ByTitle.Next-pages-300-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.ByTitle.Next-pages-5000-8
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ResourceChainPostProcess-8
+ </td>
+ <td>
+ 36.4MB ± 1%
+ </td>
+ <td>
+ 33.0MB ± 1%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −9.26%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ ReplaceShortcodeTokens-8
+ </td>
+ <td>
+ 3.07kB ± 0%
+ </td>
+ <td>
+ 3.07kB ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Edit_Bundle_with_image-8
+ </td>
+ <td>
+ 437kB ± 0%
+ </td>
+ <td>
+ 426kB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −2.43%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Edit_Bundle_with_JSON_file-8
+ </td>
+ <td>
+ 216kB ± 0%
+ </td>
+ <td>
+ 205kB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −4.93%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Edit_Tags_and_categories-8
+ </td>
+ <td>
+ 10.3MB ± 0%
+ </td>
+ <td>
+ 9.7MB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −6.68%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Edit_Canonify_URLs-8
+ </td>
+ <td>
+ 84.2MB ± 0%
+ </td>
+ <td>
+ 85.6MB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;1.67%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Edit_Deep_content_tree-8
+ </td>
+ <td>
+ 26.5MB ± 0%
+ </td>
+ <td>
+ 25.5MB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −3.65%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Edit_Many_HTML_templates-8
+ </td>
+ <td>
+ 6.00MB ± 0%
+ </td>
+ <td>
+ 5.71MB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −4.82%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Edit_Page_collections-8
+ </td>
+ <td>
+ 14.7MB ± 0%
+ </td>
+ <td>
+ 14.1MB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −4.21%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Edit_List_terms-8
+ </td>
+ <td>
+ 1.83MB ± 0%
+ </td>
+ <td>
+ 1.72MB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −6.04%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Regular_Bundle_with_image-8
+ </td>
+ <td>
+ 1.93MB ± 0%
+ </td>
+ <td>
+ 1.90MB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −1.39%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Regular_Bundle_with_JSON_file-8
+ </td>
+ <td>
+ 1.71MB ± 0%
+ </td>
+ <td>
+ 1.68MB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −1.54%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Regular_Tags_and_categories-8
+ </td>
+ <td>
+ 14.2MB ± 0%
+ </td>
+ <td>
+ 13.4MB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −5.48%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Regular_Canonify_URLs-8
+ </td>
+ <td>
+ 89.2MB ± 0%
+ </td>
+ <td>
+ 90.5MB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;1.42%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Regular_Deep_content_tree-8
+ </td>
+ <td>
+ 30.2MB ± 0%
+ </td>
+ <td>
+ 28.9MB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −4.26%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Regular_Many_HTML_templates-8
+ </td>
+ <td>
+ 9.17MB ± 0%
+ </td>
+ <td>
+ 8.83MB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −3.80%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Regular_Page_collections-8
+ </td>
+ <td>
+ 18.4MB ± 0%
+ </td>
+ <td>
+ 17.6MB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −4.44%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Regular_List_terms-8
+ </td>
+ <td>
+ 3.96MB ± 0%
+ </td>
+ <td>
+ 3.82MB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −3.64%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/identity
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ IdentityManager/Add-8
+ </td>
+ <td>
+ 204B ± 7%
+ </td>
+ <td>
+ 131B ± 2%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −35.50%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ IdentityManager/Search-8
+ </td>
+ <td>
+ 751B ± 0%
+ </td>
+ <td>
+ 311B ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −58.59%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/langs/i18n
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/all-present-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/present-in-default-8
+ </td>
+ <td>
+ 112B ± 0%
+ </td>
+ <td>
+ 112B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/present-in-current-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/missing-8
+ </td>
+ <td>
+ 112B ± 0%
+ </td>
+ <td>
+ 112B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/file-missing-8
+ </td>
+ <td>
+ 304B ± 0%
+ </td>
+ <td>
+ 288B ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −5.26%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/context-provided-8
+ </td>
+ <td>
+ 200B ± 0%
+ </td>
+ <td>
+ 192B ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −4.00%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/readingTime-one-8
+ </td>
+ <td>
+ 384B ± 0%
+ </td>
+ <td>
+ 384B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/readingTime-many-8
+ </td>
+ <td>
+ 608B ± 0%
+ </td>
+ <td>
+ 600B ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −1.32%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/same-id-and-translation-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/same-id-and-translation-default-8
+ </td>
+ <td>
+ 112B ± 0%
+ </td>
+ <td>
+ 112B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/unknown-language-code-8
+ </td>
+ <td>
+ 720B ± 0%
+ </td>
+ <td>
+ 696B ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −3.33%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/known-language-missing-plural-8
+ </td>
+ <td>
+ 488B ± 0%
+ </td>
+ <td>
+ 472B ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −3.28%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/dotted-bare-key-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/lang-with-hyphen-8
+ </td>
+ <td>
+ 384B ± 0%
+ </td>
+ <td>
+ 384B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/markup/goldmark
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ SanitizeAnchorName-8
+ </td>
+ <td>
+ 32.0B ± 0%
+ </td>
+ <td>
+ 24.0B ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −25.00%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SanitizeAnchorNameAsciiOnly-8
+ </td>
+ <td>
+ 48.0B ± 0%
+ </td>
+ <td>
+ 48.0B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ SanitizeAnchorNameBlackfriday-8
+ </td>
+ <td>
+ 184B ± 0%
+ </td>
+ <td>
+ 176B ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −4.35%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ SanitizeAnchorNameString-8
+ </td>
+ <td>
+ 64.0B ± 0%
+ </td>
+ <td>
+ 56.0B ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −12.50%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/metrics
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ HowSimilar-8
+ </td>
+ <td>
+ 624B ± 0%
+ </td>
+ <td>
+ 624B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/output
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ Layout-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ LayoutUncached-8
+ </td>
+ <td>
+ 6.34kB ± 0%
+ </td>
+ <td>
+ 6.34kB ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=1.000 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/parser/metadecoders
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ StringifyMapKeysStringsOnlyInterfaceMaps-8
+ </td>
+ <td>
+ 1.01kB ± 0%
+ </td>
+ <td>
+ 1.01kB ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ StringifyMapKeysStringsOnlyStringMaps-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ StringifyMapKeysIntegers-8
+ </td>
+ <td>
+ 1.01kB ± 0%
+ </td>
+ <td>
+ 1.01kB ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/parser/pageparser
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ShortcodeLexer-8
+ </td>
+ <td>
+ 119kB ± 0%
+ </td>
+ <td>
+ 118kB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −0.10%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ Parse-8
+ </td>
+ <td>
+ 17.0kB ± 0%
+ </td>
+ <td>
+ 17.0kB ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ParseWithEmoji-8
+ </td>
+ <td>
+ 33.0kB ± 0%
+ </td>
+ <td>
+ 33.0kB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −0.02%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/publisher
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ClassCollectorWriter-8
+ </td>
+ <td>
+ 34.8kB ± 0%
+ </td>
+ <td>
+ 34.6kB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −0.53%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/related
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ RelatedNewIndex/singles-8
+ </td>
+ <td>
+ 21.9kB ± 0%
+ </td>
+ <td>
+ 21.9kB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −0.06%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ RelatedNewIndex/all-8
+ </td>
+ <td>
+ 23.7kB ± 0%
+ </td>
+ <td>
+ 23.7kB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −0.07%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ RelatedMatchesIn-8
+ </td>
+ <td>
+ 26.4kB ±26%
+ </td>
+ <td>
+ 26.4kB ±26%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=0.686 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/resources
+ </th>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ ImageExif/Cold_cache-8
+ </td>
+ <td>
+ 160kB ± 0%
+ </td>
+ <td>
+ 183kB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;14.12%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ ImageExif/Cold_cache,_10-8
+ </td>
+ <td>
+ 172kB ± 0%
+ </td>
+ <td>
+ 187kB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;8.44%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ImageExif/Warm_cache-8
+ </td>
+ <td>
+ 12.9kB ± 0%
+ </td>
+ <td>
+ 10.9kB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −15.76%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ ResizeParallel-8
+ </td>
+ <td>
+ 2.02kB ± 0%
+ </td>
+ <td>
+ 2.61kB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;28.92%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ ResourcesMatch-8
+ </td>
+ <td>
+ 503B ± 0%
+ </td>
+ <td>
+ 504B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=1.000 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ ResourcesMatchA100-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ AssignMetadata-8
+ </td>
+ <td>
+ 1.34kB ± 0%
+ </td>
+ <td>
+ 0.85kB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −36.90%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/resources/images/exif
+ </th>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ DecodeExif-8
+ </td>
+ <td>
+ 161kB ± 0%
+ </td>
+ <td>
+ 184kB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;14.31%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/resources/page
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ PageCache-8
+ </td>
+ <td>
+ 32.0B ± 0%
+ </td>
+ <td>
+ 24.0B ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −25.00%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/Shuffled-100-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/Shuffled-500-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/Shuffled-1000-8
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/Shuffled-5000-8
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByWeight-100-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByWeight-500-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByWeight-1000-8
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByWeight-5000-8
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByWeight.Reverse-100-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByWeight.Reverse-500-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByWeight.Reverse-1000-8
+ </td>
+ <td>
+ 24.0B ± 0%
+ </td>
+ <td>
+ 24.0B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByWeight.Reverse-5000-8
+ </td>
+ <td>
+ 24.0B ± 0%
+ </td>
+ <td>
+ 24.0B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByDate-100-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByDate-500-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByDate-1000-8
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByDate-5000-8
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByPublishDate-100-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByPublishDate-500-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByPublishDate-1000-8
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByPublishDate-5000-8
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByTitle-100-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByTitle-500-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByTitle-1000-8
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByTitle-5000-8
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td>
+ 8.00B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByTitle_Linear-100-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByTitle_Linear-500-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByTitle_Linear-1000-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByTitle_Linear-5000-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ SortByWeightAndReverse-8
+ </td>
+ <td>
+ 64.0B ± 0%
+ </td>
+ <td>
+ 48.0B ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −25.00%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ PermalinkExpand-8
+ </td>
+ <td>
+ 400B ± 0%
+ </td>
+ <td>
+ 304B ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −24.00%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/resources/resource_transformers/postcss
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ImportResolver-8
+ </td>
+ <td>
+ 39.6kB ± 0%
+ </td>
+ <td>
+ 36.6kB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −7.46%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/tpl/internal/go_templates/htmltemplate
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ CSSEscaper-8
+ </td>
+ <td>
+ 336B ± 0%
+ </td>
+ <td>
+ 336B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ CSSEscaperNoSpecials-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ DecodeCSS-8
+ </td>
+ <td>
+ 160B ± 0%
+ </td>
+ <td>
+ 160B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ DecodeCSSNoSpecials-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ CSSValueFilter-8
+ </td>
+ <td>
+ 96.0B ± 0%
+ </td>
+ <td>
+ 96.0B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ CSSValueFilterOk-8
+ </td>
+ <td>
+ 48.0B ± 0%
+ </td>
+ <td>
+ 48.0B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ EscapedExecute-8
+ </td>
+ <td>
+ 624B ± 0%
+ </td>
+ <td>
+ 544B ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −12.82%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ HTMLNospaceEscaper-8
+ </td>
+ <td>
+ 368B ± 0%
+ </td>
+ <td>
+ 368B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ HTMLNospaceEscaperNoSpecials-8
+ </td>
+ <td>
+ 32.0B ± 0%
+ </td>
+ <td>
+ 32.0B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ StripTags-8
+ </td>
+ <td>
+ 224B ± 0%
+ </td>
+ <td>
+ 224B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ StripTagsNoSpecials-8
+ </td>
+ <td>
+ 112B ± 0%
+ </td>
+ <td>
+ 112B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSValEscaperWithNum-8
+ </td>
+ <td>
+ 40.0B ± 0%
+ </td>
+ <td>
+ 40.0B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSValEscaperWithStr-8
+ </td>
+ <td>
+ 384B ± 0%
+ </td>
+ <td>
+ 384B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSValEscaperWithStrNoSpecials-8
+ </td>
+ <td>
+ 96.0B ± 0%
+ </td>
+ <td>
+ 96.0B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSValEscaperWithObj-8
+ </td>
+ <td>
+ 448B ± 0%
+ </td>
+ <td>
+ 440B ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −1.79%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSValEscaperWithObjNoSpecials-8
+ </td>
+ <td>
+ 160B ± 0%
+ </td>
+ <td>
+ 152B ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −5.00%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSStrEscaperNoSpecials-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSStrEscaper-8
+ </td>
+ <td>
+ 336B ± 0%
+ </td>
+ <td>
+ 336B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSRegexpEscaperNoSpecials-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSRegexpEscaper-8
+ </td>
+ <td>
+ 336B ± 0%
+ </td>
+ <td>
+ 336B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ TemplateSpecialTags-8
+ </td>
+ <td>
+ 50.1kB ± 0%
+ </td>
+ <td>
+ 49.9kB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −0.31%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ URLEscaper-8
+ </td>
+ <td>
+ 336B ± 0%
+ </td>
+ <td>
+ 336B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ URLEscaperNoSpecials-8
+ </td>
+ <td>
+ 112B ± 0%
+ </td>
+ <td>
+ 112B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ URLNormalizer-8
+ </td>
+ <td>
+ 176B ± 0%
+ </td>
+ <td>
+ 176B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ URLNormalizerNoSpecials-8
+ </td>
+ <td>
+ 112B ± 0%
+ </td>
+ <td>
+ 112B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SrcsetFilter-8
+ </td>
+ <td>
+ 160B ± 0%
+ </td>
+ <td>
+ 160B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SrcsetFilterNoSpecials-8
+ </td>
+ <td>
+ 160B ± 0%
+ </td>
+ <td>
+ 160B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/tpl/internal/go_templates/texttemplate/parse
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ParseLarge-8
+ </td>
+ <td>
+ 5.46MB ± 0%
+ </td>
+ <td>
+ 5.46MB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −0.01%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ VariableString-8
+ </td>
+ <td>
+ 72.0B ± 0%
+ </td>
+ <td>
+ 72.0B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ListString-8
+ </td>
+ <td>
+ 1.61kB ± 0%
+ </td>
+ <td>
+ 1.47kB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −8.46%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/tpl/tplimpl
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ Partial-8
+ </td>
+ <td>
+ 1.15kB ± 0%
+ </td>
+ <td>
+ 1.06kB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −7.64%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PartialCached-8
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td>
+ 0.00B
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/tpl/transform
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ UnmarshalString-8
+ </td>
+ <td>
+ 832B ± 0%
+ </td>
+ <td>
+ 736B ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −11.54%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ UnmarshalResource-8
+ </td>
+ <td>
+ 144B ± 0%
+ </td>
+ <td>
+ 144B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/transform/urlreplacers
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ AbsURL-8
+ </td>
+ <td>
+ 1.57kB ± 0%
+ </td>
+ <td>
+ 1.57kB ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ AbsURLSrcset-8
+ </td>
+ <td>
+ 1.29kB ± 0%
+ </td>
+ <td>
+ 1.28kB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −0.62%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ XMLAbsURLSrcset-8
+ </td>
+ <td>
+ 1.37kB ± 0%
+ </td>
+ <td>
+ 1.36kB ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −0.59%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ XMLAbsURL-8
+ </td>
+ <td>
+ 928B ± 0%
+ </td>
+ <td>
+ 928B ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr>
+ <td style="text-align: right;padding: 0em 1em;">
+ &nbsp;
+ </td>
+ </tr>
+ </tbody>
+ <tbody>
+ <tr>
+ <th style="text-align: left;"></th>
+ <th colspan="2" class="metric" style="">
+ allocs/op
+ </th>
+ <th style="">
+ delta
+ </th>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/common/hreflect
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ IsTruthFul-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/common/maps
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ ScratchGet-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/helpers
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ StripHTML-8
+ </td>
+ <td>
+ 4.00 ± 0%
+ </td>
+ <td>
+ 4.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ TestTruncateWordsToWholeSentence-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ TestTruncateWordsToWholeSentenceOld-8
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ TotalWords-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ EmojiKyokomiFprint-8
+ </td>
+ <td>
+ 71.0 ± 0%
+ </td>
+ <td>
+ 71.0 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ EmojiKyokomiSprint-8
+ </td>
+ <td>
+ 66.0 ± 0%
+ </td>
+ <td>
+ 66.0 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ HugoEmoji-8
+ </td>
+ <td>
+ 13.0 ± 0%
+ </td>
+ <td>
+ 13.0 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ ReaderContains-8
+ </td>
+ <td>
+ 20.0 ± 0%
+ </td>
+ <td>
+ 20.0 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ MD5FromFileFast/full=false-8
+ </td>
+ <td>
+ 5.00 ± 0%
+ </td>
+ <td>
+ 4.00 ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −20.00%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ MD5FromFileFast/full=true-8
+ </td>
+ <td>
+ 5.00 ± 0%
+ </td>
+ <td>
+ 5.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ UniqueStrings/Safe-8
+ </td>
+ <td>
+ 7.00 ± 0%
+ </td>
+ <td>
+ 7.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ UniqueStrings/Reuse_slice-8
+ </td>
+ <td>
+ 6.00 ± 0%
+ </td>
+ <td>
+ 6.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ UniqueStrings/Reuse_slice_sorted-8
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/hugofs
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ Walk-8
+ </td>
+ <td>
+ 2.22k ± 0%
+ </td>
+ <td>
+ 2.22k ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/hugofs/glob
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ GetGlob-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/hugolib
+ </th>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ Cascade/langs-1-8
+ </td>
+ <td>
+ 33.1k ± 0%
+ </td>
+ <td>
+ 33.2k ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;0.20%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ Cascade/langs-3-8
+ </td>
+ <td>
+ 47.4k ± 0%
+ </td>
+ <td>
+ 47.6k ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;0.58%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ Cascade/langs-5-8
+ </td>
+ <td>
+ 62.2k ± 0%
+ </td>
+ <td>
+ 62.6k ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;0.69%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ Cascade/langs-7-8
+ </td>
+ <td>
+ 78.0k ± 0%
+ </td>
+ <td>
+ 78.6k ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;0.75%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ Cascade/langs-9-8
+ </td>
+ <td>
+ 95.0k ± 0%
+ </td>
+ <td>
+ 95.7k ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;0.78%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ContentMap/CreateMissingNodes-8
+ </td>
+ <td>
+ 258 ± 0%
+ </td>
+ <td>
+ 254 ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −1.55%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ GetPage-8
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ GetPageRegular/From_root-8
+ </td>
+ <td>
+ 10.0 ± 0%
+ </td>
+ <td>
+ 6.0 ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −40.00%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ GetPageRegular/Page_relative-8
+ </td>
+ <td>
+ 13.0 ± 0%
+ </td>
+ <td>
+ 10.0 ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −23.08%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ MergeByLanguage-8
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/.Next-pages-300-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/.Next-pages-5000-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/.Prev-pages-300-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/.Prev-pages-5000-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.Next-pages-300-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.Next-pages-5000-8
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.Prev-pages-300-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.Prev-pages-5000-8
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.Shuffled.Next-pages-300-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.Shuffled.Next-pages-5000-8
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.Shuffled.Prev-pages-300-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.Shuffled.Prev-pages-5000-8
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.ByTitle.Next-pages-300-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PagesPrevNext/Pages.ByTitle.Next-pages-5000-8
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ ResourceChainPostProcess-8
+ </td>
+ <td>
+ 803k ± 1%
+ </td>
+ <td>
+ 817k ± 1%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=0.114 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ ReplaceShortcodeTokens-8
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Edit_Bundle_with_image-8
+ </td>
+ <td>
+ 3.99k ± 0%
+ </td>
+ <td>
+ 4.03k ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;0.93%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Edit_Bundle_with_JSON_file-8
+ </td>
+ <td>
+ 3.99k ± 0%
+ </td>
+ <td>
+ 4.03k ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;0.93%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Edit_Tags_and_categories-8
+ </td>
+ <td>
+ 241k ± 0%
+ </td>
+ <td>
+ 244k ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;0.97%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Edit_Canonify_URLs-8
+ </td>
+ <td>
+ 364k ± 0%
+ </td>
+ <td>
+ 366k ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;0.39%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Edit_Deep_content_tree-8
+ </td>
+ <td>
+ 264k ± 0%
+ </td>
+ <td>
+ 268k ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;1.60%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Edit_Many_HTML_templates-8
+ </td>
+ <td>
+ 90.3k ± 0%
+ </td>
+ <td>
+ 91.1k ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;0.90%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Edit_Page_collections-8
+ </td>
+ <td>
+ 153k ± 0%
+ </td>
+ <td>
+ 156k ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;1.37%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Edit_List_terms-8
+ </td>
+ <td>
+ 30.4k ± 0%
+ </td>
+ <td>
+ 30.5k ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;0.53%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Regular_Bundle_with_image-8
+ </td>
+ <td>
+ 23.2k ± 0%
+ </td>
+ <td>
+ 23.2k ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=1.000 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Regular_Bundle_with_JSON_file-8
+ </td>
+ <td>
+ 23.3k ± 0%
+ </td>
+ <td>
+ 23.3k ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −0.01%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Regular_Tags_and_categories-8
+ </td>
+ <td>
+ 284k ± 0%
+ </td>
+ <td>
+ 287k ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;1.05%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Regular_Canonify_URLs-8
+ </td>
+ <td>
+ 387k ± 0%
+ </td>
+ <td>
+ 388k ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;0.20%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Regular_Deep_content_tree-8
+ </td>
+ <td>
+ 307k ± 0%
+ </td>
+ <td>
+ 309k ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;0.63%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Regular_Many_HTML_templates-8
+ </td>
+ <td>
+ 129k ± 0%
+ </td>
+ <td>
+ 130k ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;0.54%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Regular_Page_collections-8
+ </td>
+ <td>
+ 199k ± 0%
+ </td>
+ <td>
+ 200k ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;0.55%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ BuildSite/Regular_List_terms-8
+ </td>
+ <td>
+ 53.5k ± 0%
+ </td>
+ <td>
+ 53.6k ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;0.11%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/identity
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ IdentityManager/Add-8
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −50.00%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ IdentityManager/Search-8
+ </td>
+ <td>
+ 15.0 ± 0%
+ </td>
+ <td>
+ 11.0 ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −26.67%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/langs/i18n
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/all-present-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/present-in-default-8
+ </td>
+ <td>
+ 5.00 ± 0%
+ </td>
+ <td>
+ 5.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/present-in-current-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/missing-8
+ </td>
+ <td>
+ 5.00 ± 0%
+ </td>
+ <td>
+ 5.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/file-missing-8
+ </td>
+ <td>
+ 12.0 ± 0%
+ </td>
+ <td>
+ 12.0 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/context-provided-8
+ </td>
+ <td>
+ 5.00 ± 0%
+ </td>
+ <td>
+ 5.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/readingTime-one-8
+ </td>
+ <td>
+ 3.00 ± 0%
+ </td>
+ <td>
+ 3.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/readingTime-many-8
+ </td>
+ <td>
+ 9.00 ± 0%
+ </td>
+ <td>
+ 9.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/same-id-and-translation-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/same-id-and-translation-default-8
+ </td>
+ <td>
+ 5.00 ± 0%
+ </td>
+ <td>
+ 5.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/unknown-language-code-8
+ </td>
+ <td>
+ 14.0 ± 0%
+ </td>
+ <td>
+ 14.0 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/known-language-missing-plural-8
+ </td>
+ <td>
+ 8.00 ± 0%
+ </td>
+ <td>
+ 8.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/dotted-bare-key-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ I18nTranslate/lang-with-hyphen-8
+ </td>
+ <td>
+ 3.00 ± 0%
+ </td>
+ <td>
+ 3.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/markup/goldmark
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SanitizeAnchorName-8
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SanitizeAnchorNameAsciiOnly-8
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SanitizeAnchorNameBlackfriday-8
+ </td>
+ <td>
+ 6.00 ± 0%
+ </td>
+ <td>
+ 6.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SanitizeAnchorNameString-8
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/metrics
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ HowSimilar-8
+ </td>
+ <td>
+ 19.0 ± 0%
+ </td>
+ <td>
+ 19.0 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/output
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ Layout-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ LayoutUncached-8
+ </td>
+ <td>
+ 112 ± 0%
+ </td>
+ <td>
+ 112 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/parser/metadecoders
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ StringifyMapKeysStringsOnlyInterfaceMaps-8
+ </td>
+ <td>
+ 6.00 ± 0%
+ </td>
+ <td>
+ 6.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ StringifyMapKeysStringsOnlyStringMaps-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ StringifyMapKeysIntegers-8
+ </td>
+ <td>
+ 6.00 ± 0%
+ </td>
+ <td>
+ 6.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/parser/pageparser
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ ShortcodeLexer-8
+ </td>
+ <td>
+ 916 ± 0%
+ </td>
+ <td>
+ 916 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ Parse-8
+ </td>
+ <td>
+ 34.0 ± 0%
+ </td>
+ <td>
+ 34.0 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ ParseWithEmoji-8
+ </td>
+ <td>
+ 16.0 ± 0%
+ </td>
+ <td>
+ 16.0 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/publisher
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ClassCollectorWriter-8
+ </td>
+ <td>
+ 149 ± 0%
+ </td>
+ <td>
+ 143 ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −4.03%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/related
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ RelatedNewIndex/singles-8
+ </td>
+ <td>
+ 199 ± 0%
+ </td>
+ <td>
+ 199 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ RelatedNewIndex/all-8
+ </td>
+ <td>
+ 200 ± 0%
+ </td>
+ <td>
+ 200 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ RelatedMatchesIn-8
+ </td>
+ <td>
+ 196 ± 5%
+ </td>
+ <td>
+ 196 ± 5%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=1.000 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/resources
+ </th>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ ImageExif/Cold_cache-8
+ </td>
+ <td>
+ 1.27k ± 0%
+ </td>
+ <td>
+ 1.27k ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;0.16%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ImageExif/Cold_cache,_10-8
+ </td>
+ <td>
+ 1.43k ± 0%
+ </td>
+ <td>
+ 1.36k ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −4.88%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ImageExif/Warm_cache-8
+ </td>
+ <td>
+ 351 ± 0%
+ </td>
+ <td>
+ 327 ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −6.84%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ ResizeParallel-8
+ </td>
+ <td>
+ 48.0 ± 0%
+ </td>
+ <td>
+ 55.0 ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;14.58%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ ResourcesMatch-8
+ </td>
+ <td>
+ 2.75 ±27%
+ </td>
+ <td>
+ 2.75 ±27%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=1.000 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ ResourcesMatchA100-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ AssignMetadata-8
+ </td>
+ <td>
+ 120 ± 0%
+ </td>
+ <td>
+ 80 ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −33.33%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/resources/images/exif
+ </th>
+ </tr>
+ <tr class="worse">
+ <td style="text-align: right;padding: 0em 1em;">
+ DecodeExif-8
+ </td>
+ <td>
+ 1.20k ± 0%
+ </td>
+ <td>
+ 1.20k ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;color: #c00;">
+ &#43;0.50%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/resources/page
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PageCache-8
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/Shuffled-100-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/Shuffled-500-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/Shuffled-1000-8
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/Shuffled-5000-8
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByWeight-100-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByWeight-500-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByWeight-1000-8
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByWeight-5000-8
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByWeight.Reverse-100-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByWeight.Reverse-500-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByWeight.Reverse-1000-8
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByWeight.Reverse-5000-8
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByDate-100-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByDate-500-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByDate-1000-8
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByDate-5000-8
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByPublishDate-100-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByPublishDate-500-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByPublishDate-1000-8
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByPublishDate-5000-8
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByTitle-100-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByTitle-500-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByTitle-1000-8
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByTitle-5000-8
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByTitle_Linear-100-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByTitle_Linear-500-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByTitle_Linear-1000-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SearchPage/ByTitle_Linear-5000-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SortByWeightAndReverse-8
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ PermalinkExpand-8
+ </td>
+ <td>
+ 13.0 ± 0%
+ </td>
+ <td>
+ 10.0 ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −23.08%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/resources/resource_transformers/postcss
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ ImportResolver-8
+ </td>
+ <td>
+ 195 ± 0%
+ </td>
+ <td>
+ 186 ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −4.62%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/tpl/internal/go_templates/htmltemplate
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ CSSEscaper-8
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ CSSEscaperNoSpecials-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ DecodeCSS-8
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ DecodeCSSNoSpecials-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ CSSValueFilter-8
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ CSSValueFilterOk-8
+ </td>
+ <td>
+ 3.00 ± 0%
+ </td>
+ <td>
+ 3.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ EscapedExecute-8
+ </td>
+ <td>
+ 18.0 ± 0%
+ </td>
+ <td>
+ 18.0 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ HTMLNospaceEscaper-8
+ </td>
+ <td>
+ 3.00 ± 0%
+ </td>
+ <td>
+ 3.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ HTMLNospaceEscaperNoSpecials-8
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ StripTags-8
+ </td>
+ <td>
+ 3.00 ± 0%
+ </td>
+ <td>
+ 3.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ StripTagsNoSpecials-8
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSValEscaperWithNum-8
+ </td>
+ <td>
+ 3.00 ± 0%
+ </td>
+ <td>
+ 3.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSValEscaperWithStr-8
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSValEscaperWithStrNoSpecials-8
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSValEscaperWithObj-8
+ </td>
+ <td>
+ 3.00 ± 0%
+ </td>
+ <td>
+ 3.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSValEscaperWithObjNoSpecials-8
+ </td>
+ <td>
+ 3.00 ± 0%
+ </td>
+ <td>
+ 3.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSStrEscaperNoSpecials-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSStrEscaper-8
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSRegexpEscaperNoSpecials-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ JSRegexpEscaper-8
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ TemplateSpecialTags-8
+ </td>
+ <td>
+ 191 ± 0%
+ </td>
+ <td>
+ 191 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ URLEscaper-8
+ </td>
+ <td>
+ 4.00 ± 0%
+ </td>
+ <td>
+ 4.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ URLEscaperNoSpecials-8
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ URLNormalizer-8
+ </td>
+ <td>
+ 3.00 ± 0%
+ </td>
+ <td>
+ 3.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ URLNormalizerNoSpecials-8
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td>
+ 2.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SrcsetFilter-8
+ </td>
+ <td>
+ 3.00 ± 0%
+ </td>
+ <td>
+ 3.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ SrcsetFilterNoSpecials-8
+ </td>
+ <td>
+ 3.00 ± 0%
+ </td>
+ <td>
+ 3.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/tpl/internal/go_templates/texttemplate/parse
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ ParseLarge-8
+ </td>
+ <td>
+ 80.0k ± 0%
+ </td>
+ <td>
+ 80.0k ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (p=1.000 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ VariableString-8
+ </td>
+ <td>
+ 3.00 ± 0%
+ </td>
+ <td>
+ 3.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ ListString-8
+ </td>
+ <td>
+ 31.0 ± 0%
+ </td>
+ <td>
+ 31.0 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/tpl/tplimpl
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ Partial-8
+ </td>
+ <td>
+ 37.0 ± 0%
+ </td>
+ <td>
+ 37.0 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ PartialCached-8
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td>
+ 0.00
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/tpl/transform
+ </th>
+ </tr>
+ <tr class="better">
+ <td style="text-align: right;padding: 0em 1em;">
+ UnmarshalString-8
+ </td>
+ <td>
+ 6.00 ± 0%
+ </td>
+ <td>
+ 5.00 ± 0%
+ </td>
+ <td class="delta" style="font-weight: bold;">
+ −16.67%
+ </td>
+ <td class="note">
+ (p=0.029 n=4&#43;4)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ UnmarshalResource-8
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td>
+ 1.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="group">
+ <th colspan="4" style="text-align: left;">
+ github.com/gohugoio/hugo/transform/urlreplacers
+ </th>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ AbsURL-8
+ </td>
+ <td>
+ 16.0 ± 0%
+ </td>
+ <td>
+ 16.0 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ AbsURLSrcset-8
+ </td>
+ <td>
+ 23.0 ± 0%
+ </td>
+ <td>
+ 23.0 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ XMLAbsURLSrcset-8
+ </td>
+ <td>
+ 21.0 ± 0%
+ </td>
+ <td>
+ 21.0 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr class="unchanged">
+ <td style="text-align: right;padding: 0em 1em;">
+ XMLAbsURL-8
+ </td>
+ <td>
+ 8.00 ± 0%
+ </td>
+ <td>
+ 8.00 ± 0%
+ </td>
+ <td class="nodelta" style="text-align: center !important;">
+ ~
+ </td>
+ <td class="note">
+ (all equal)
+ </td>
+ </tr>
+ <tr>
+ <td style="text-align: right;padding: 0em 1em;">
+ &nbsp;
+ </td>
+ </tr>
+ </tbody>
+</table>
diff --git a/docs/content/en/news/lets-celebrate-hugos-5th-birthday/featured.png b/docs/content/en/news/lets-celebrate-hugos-5th-birthday/featured.png
new file mode 100644
index 000000000..4c31412fd
--- /dev/null
+++ b/docs/content/en/news/lets-celebrate-hugos-5th-birthday/featured.png
Binary files differ
diff --git a/docs/content/en/news/lets-celebrate-hugos-5th-birthday/graph-stars.png b/docs/content/en/news/lets-celebrate-hugos-5th-birthday/graph-stars.png
new file mode 100644
index 000000000..00848fcf0
--- /dev/null
+++ b/docs/content/en/news/lets-celebrate-hugos-5th-birthday/graph-stars.png
Binary files differ
diff --git a/docs/content/en/news/lets-celebrate-hugos-5th-birthday/graph-themes.png b/docs/content/en/news/lets-celebrate-hugos-5th-birthday/graph-themes.png
new file mode 100644
index 000000000..0d4dfd599
--- /dev/null
+++ b/docs/content/en/news/lets-celebrate-hugos-5th-birthday/graph-themes.png
Binary files differ
diff --git a/docs/content/en/news/lets-celebrate-hugos-5th-birthday/index.md b/docs/content/en/news/lets-celebrate-hugos-5th-birthday/index.md
new file mode 100644
index 000000000..9912027b5
--- /dev/null
+++ b/docs/content/en/news/lets-celebrate-hugos-5th-birthday/index.md
@@ -0,0 +1,108 @@
+---
+date: 2018-07-04
+title: "Let’s celebrate Hugo’s 5th birthday"
+description: "How a side project became one of the most popular frameworks for building websites."
+categories: [blog]
+author: bep
+---
+
+_By Bjørn Erik Pedersen ([@bepsays](https://twitter.com/bepsays) / [@bep](https://github.com/bep)), Hugo Lead_
+
+**Five years ago today, [Steve Francia](https://github.com/spf13/) made his [first commit](https://github.com/gohugoio/hugo/commit/50a1d6f3f155ab837310e00ffb309a9199773c73
+) on the Hugo project: "Hugo: A Fast and Flexible Static Site Generator built with love by spf13 in GoLang".**
+
+Steve was writing that on a train commute to New York. I'm writing this article running Hugo `v0.43-DEV`, the preview version of the next Hugo release. The release is scheduled for Monday and adds a powerful [assets pipeline](https://github.com/gohugoio/hugo/issues/4854#issue-333062459), with SCSS/SASS support, assets minification, fingerprinting/subresource integrity, ad-hoc image processing and much more.
+
+**I cannot remember the last time I was this excited about a Hugo release. "Game changer" may be too strong, but it makes for a really nice integrated website design-workflow that, with Hugo's build speed, is hard to beat.**
+
+{{< imgproc sunset Fill "600x300" >}}
+Fetch and scale an image in the upcoming Hugo 0.43.
+{{< /imgproc >}}
+
+But that is a release for Monday. Now is a time to look at the current status of Hugo after the first five years.
+
+## Hugo in Numbers
+
+According to [BuiltWith](https://trends.builtwith.com/cms/Hugo), more than 29 000 live websites are built with Hugo. Of those, 390 are in the top 1 million. Wappalyzer [reports](https://www.wappalyzer.com/categories/static-site-generator) that Hugo serves almost 50% of the static sites.
+
+Hugo is big in the [public sector](https://discourse.gohugo.io/t/hugo-in-public-administration/8792), with the US Government as a prominent user. Some examples are [vote.gov](https://vote.gov/) and [digital.gov](https://digital.gov/).
+
+[Smashing Magazine](https://www.smashingmagazine.com/) is a big and very popular Hugo site. It is [reported](https://discourse.gohugo.io/t/smashing-magazine-s-redesign-powered-by-hugo-jamstack/5826/7) that they build their complex site with 7500 content pages in 13 seconds.
+
+Some other example sites are [kubernetes.io](https://kubernetes.io/), [letsencrypt.org](https://gohugo.io/showcase/letsencrypt/), [support.1password.com](http://gohugo.io/showcase/1password-support/), [netlify.com](https://www.netlify.com), [litecoin.org](https://litecoin.org/), and [forestry.io](https://forestry.io/).
+
+
+{{< imgproc graph-stars Fit "600x400" >}}
+Number of GitHub stars in relation to the Hugo release dates.
+{{< /imgproc >}}
+
+More numbers:
+
+* 26800+ [stars](https://github.com/gohugoio/hugo/stargazers) on GitHub.
+* 444+ [contributors](https://github.com/gohugoio/hugo/graphs/contributors) to the Hugo source repository, 654+ to [Hugo Docs](https://github.com/gohugoio/hugoDocs/graphs/contributors). [@bep](https://github.com/bep) is the most active with around 70% of the current code base (line count).
+* 235+ [themes](https://themes.gohugo.io/)
+* 50% increase in the number of user sessions on the [gohugo.io](https://gohugo.io/) web sites the last 12 months.[^2]
+* Hugo build release binaries for [a myriad](https://github.com/gohugoio/hugo/releases/tag/v0.42.2) of platforms. And since it can also be installed from Chocolatey on Windows, Brew on MacOs, Snap on Linux and `apt-get` on Debian/Ubuntu, it is impossible to give accurate download numbers. But the number is not small.
+
+## Hugo Next
+
+We're not finished with Hugo, but Hugo `0.43` very nicely wraps up the first five years. It started out as a small and fast static site generator. It is now [even faster](https://forestry.io/blog/hugo-vs-jekyll-benchmark/), and now so loaded with features that it has grown out of being just a "static site generator". It is a _framework for building websites_.
+
+My interest in Hugo started on the Sunday when I moved my blog, [bepsays.com](https://bepsays.com/en/), twice. The second static generator choice of that day, Hugo, was a good match. I remember Steve being very enthusiastic about getting patches with fixes and enhancements, and I was eventually taken over by the simplicity and power of Go, the programming language, and started to implement lots of new features.
+
+My goal with all of this, if there is one, is to get a single binary with native and really fast implementations of the complete stack I need for web development and content editing. The single binary takes most of the pain out of installation and upgrades (if you stick with the same binary, it will continue to just work for decades).
+
+**With 0.43, we are almost there.** With that release, it should be possible to set up a Hugo-only project without any additional tools (Gulp, WebPack) for all aspects of website building. There will still be situations where those tools will still be needed, of course, but we will continue to fill the gaps in the feature set.
+
+Hugo has stuck with the sub-zero versions to signal active development, with a new main release every 5-6 weeks. But we take stability very seriously (breaking things add lots of support work, we don't like that) and most site upgrades are [smooth](https://twitter.com/tmmx/status/1006288444459503616). But we are closing in on the first major stable version.
+
+
+### The Road to 1.0
+
+We have some more technical tasks that needs to be done (there is ongoing work to get the page queries into a more consistent state, also a simpler `.GetPage` method), but also some cool new functionality. The following roadmap is taken from memory, and may not be complete, but should be a good indication of what's ahead.
+
+Pages from "other data sources"
+: Currently, in addition to Hugo's list pages, every URL must be backed by a content file (Markdown, HTML etc.). This covers most use cases, but we need a flexible way to generate pages from other data sources. Think product catalogues and similar.
+
+Upgrade Blackfriday to v2
+: [Blackfriday](https://github.com/russross/blackfriday) is the main content renderer in Hugo. It has been rewritten to a more flexible architecture, which should allow us to fix some of the current shortcomings.
+
+We should be able to create a better and easier-to-use data structure from the rendered content: Summary, the content after the summary, being able to range over the footnotes and the ToC. Having ToC as a proper data structure also opens up a few other potential uses; using it as an index in [Related Content](https://gohugo.io/content-management/related/) would be one example.
+
+This should also enable us to _do more_ with [Custom Output Formats](/templates/output-formats). It is already very powerful. GettyPubs are using it in [Quire](https://github.com/gettypubs/quire) to build [beautiful multi-platform publications](http://www.getty.edu/publications/digital/digitalpubs.html). But it can be improved. For rendering of content files, you are currently restricted to HTML. It would be great if we could configure alternative renderers per output format, such as LaTeX and EPUB.
+
+Related to this is also to add a configurable "Markdown URL rewriter", which should make more portable URLs in Markdown, e.g. image links that work both when viewed on GitHub and your published site.
+
+### The Road to the Future
+
+These are the items that first come to mind if you ask me to think even further ahead:
+
+Dependency manager for Theme Components
+: In Hugo `0.42` we added [Theme Components](/themes/theme-components/) and Theme Inheritance. With SCSS support in Hugo `0.43`, which also follows the same project/themes precedence order (add `_variables.scss` to your project, configure SASS colour variables in `config.toml`), we have a solid foundation for creating easy to use and extensible themes. But we are missing some infrastructure around this. We have a site with 235+ [themes](https://themes.gohugo.io/)[^themes] listed, but you currently need to do some added work to get the theme up and running for your site. In the Go world, we don't have NPM to use, which is a curse and a blessing, but I have some ideas about building a simple dependency manager into Hugo, modelled after how Go is doing it (`hugo install`). You should be able to configure what theme and theme components you want to use, and Hugo should handle the installation of the correct versions. This should make it easier for the user, but it would also enable community driven and even commercial "theme stores".
+
+
+{{< imgproc graph-themes Fit "600x400" >}}
+Number of Hugo themes on themes.gohugo.io in relation to the Hugo release dates.
+{{< /imgproc >}}
+
+
+The "New York Times on Hugo" Use Case
+: There are recurring questions on the support forum from [really big sites](https://discourse.gohugo.io/t/transition-2m-posts-from-wordpress-to-hugo/12704) that want to move to Hugo. There are many [good reasons](https://www.netlify.com/blog/2016/05/18/9-reasons-your-site-should-be-static/) why they want this (security, cost-saving, EU regulations etc.). And while there have been reports about companies building 600 000 pages with Hugo on very powerful hardware, we will have to rethink the build model to make this usable. Keywords are: streaming builds, segmented builds, partial rebuilds. There are other site generators also talking about this. It should be possible, and my instinct tells me that it should be easier to do when your starting point is "really fast". But this is not a small weekend project for me, and I have already talked to several companies about sponsoring this.
+
+Plugins
+: A Theme Component could also be called a plugin. But there are several potential plugin hooks into Hugo's build pipeline: resource transformations, content rendering, etc. We will eventually get there, but we should do it without giving up too much of the Hugo speed and simplicity.
+
+
+## Thanks
+
+So, thanks to everyone who has contributed to getting Hugo where it is today. It is hard to single out individuals, but a big shout-out to all the Hugo experts and moderators helping out making [discourse.gohugo.io](https://discourse.gohugo.io/) a very active and possibly one of the best support forums out there.
+
+And the last shout-out goes to two maintainers who have been there more or less from the start. [@digitalcraftsman](https://github.com/digitalcraftsman/) has been doing a fantastic job keeping the fast growing theme site and [repository](https://github.com/gohugoio/hugoThemes) in pristine condition. I have it on my watch list, but that is just out of curiosity. There is lots of activity, but it runs as clock work. [Anthony Fok](https://github.com/anthonyfok) has contributed with a variety of things but is most notable as the Linux expert on the team. He manages the Debian build and is the one to thank for up-to-date binaries on Debian and Ubuntu.
+
+One final note: If you have not done so already, please visit [github.com/gohugoio/hugo](https://github.com/gohugoio/hugo) and push the "star button".
+
+Gopher artwork by [Ashley McNamara](https://github.com/ashleymcnamara/gophers/) (licensed under [CC BY-NC-SA 4.0](https://creativecommons.org/licenses/by-nc-sa/4.0/)). Inspired by [Renee French](https://reneefrench.blogspot.com/).
+
+[^2]: Numbers from Google Analytics. The Hugo websites are https://discourse.gohugo.io, https://gohugo.io and https://themes.gohugo.io. It is rumoured that when [Matt Biilman](https://twitter.com/biilmann?lang=en), CEO and Co-founder of Netlify, opened the first power bill after sponsoring Hugo's hosting, said: "Du må lave fis med mig, those Hugo sites have lots of web traffic!"
+[^sgen]: That was at the time of writing this article. _Next_, a React based static site generator, has momentum and is closing in on Hugo's 2nd place.
+[^themes]: We pull all the themes from GitHub and build the theme site and 235 demo sites on Netlify in 4 minutes. That is impressive.
diff --git a/docs/content/en/news/lets-celebrate-hugos-5th-birthday/sunset-get.png b/docs/content/en/news/lets-celebrate-hugos-5th-birthday/sunset-get.png
new file mode 100644
index 000000000..5b368b97a
--- /dev/null
+++ b/docs/content/en/news/lets-celebrate-hugos-5th-birthday/sunset-get.png
Binary files differ
diff --git a/docs/content/en/readfiles/README.md b/docs/content/en/readfiles/README.md
new file mode 100644
index 000000000..4b10f0e47
--- /dev/null
+++ b/docs/content/en/readfiles/README.md
@@ -0,0 +1,16 @@
+# readdirs Directory for Reusable Content
+
+Files in this directory are:
+
+1. Used in *more than one place* within the Hugo docs
+2. Used in Examples of readdir (i.e. in local file templates)
+
+These files are called using the [`readfile` shortcode (source)](../layouts/readfile.html).
+
+You can call this shortcode in the docs as follows:
+
+
+<code>{</code><code>{</code>% readfile file="/path/to/file.txt" markdown="true" %<code>}</code><code>}</code>
+
+
+`markdown="true"` is optional (default = `"false"`) and parses the string through the Blackfriday renderer.
diff --git a/docs/content/en/readfiles/dateformatting.md b/docs/content/en/readfiles/dateformatting.md
new file mode 100644
index 000000000..42138dd8a
--- /dev/null
+++ b/docs/content/en/readfiles/dateformatting.md
@@ -0,0 +1,87 @@
+Go templates [format your dates][time] according to a single reference time:
+
+```
+Mon Jan 2 15:04:05 MST 2006
+```
+
+You can think of `MST` as `07`, thus making the reference format string a sequence of numbers. The following is [taken directly from the Go docs][gdex]:
+
+```
+Jan 2 15:04:05 2006 MST
+ 1 2 3 4 5 6 -7
+```
+
+### Hugo Date Templating Reference
+
+Each of the following examples show the reference formatting string followed by the string Hugo will output in your HTML.
+
+Note that the examples were rendered and tested in [CST][] and pull from a single example date you might have in your content's front matter:
+
+```
+date: 2017-03-03T14:15:59-06:00
+```
+
+`.Date` (i.e. called via [page variable][pagevars])
+: **Returns**: `2017-03-03 14:15:59 -0600 CST`
+
+`"Monday, January 2, 2006"`
+: **Returns**: `Friday, March 3, 2017`
+
+`"Mon Jan 2 2006"`
+: **Returns**: `Fri Mar 3 2017`
+
+`"January 2nd"`
+: **Returns**: `March 3rd`
+
+`"January 2006"`
+: **Returns**: `March 2017`
+
+`"2006-01-02"`
+: **Returns**: `2017-03-03`
+
+`"Monday"`
+: **Returns**: `Friday`
+
+`"02 Jan 06 15:04 MST"` (RFC822)
+: **Returns**: `03 Mar 17 14:15 CST`
+
+`"02 Jan 06 15:04 -0700"` (RFC822Z)
+: **Returns**: `03 Mar 17 14:15 -0600`
+
+`"Mon, 02 Jan 2006 15:04:05 MST"` (RFC1123)
+: **Returns**: `Fri, 03 Mar 2017 14:15:59 CST`
+
+`"Mon, 02 Jan 2006 15:04:05 -0700"` (RFC339)
+: **Returns**: `Fri, 03 Mar 2017 14:15:59 -0600`
+
+### Cardinal Numbers and Ordinal Abbreviations
+
+Spelled-out cardinal numbers (e.g. "one", "two", and "three") and ordinal abbreviations (e.g. "1st", "2nd", and "3rd") are not currently supported.
+
+To continue with the example above:
+
+```
+{{.Date.Format "Jan 2nd 2006"}}
+```
+
+Hugo assumes you want to append `nd` as a string to the day of the month and outputs the following:
+
+```
+Mar 3nd 2017
+```
+
+### Use `.Local` and `.UTC`
+
+In conjunction with the [`dateFormat` function][dateFormat], you can also convert your dates to `UTC` or to local timezones:
+
+`{{ dateFormat "02 Jan 06 15:04 MST" .Date.UTC }}`
+: **Returns**: `03 Mar 17 20:15 UTC`
+
+`{{ dateFormat "02 Jan 06 15:04 MST" .Date.Local }}`
+: **Returns**: `03 Mar 17 14:15 CST`
+
+[CST]: https://en.wikipedia.org/wiki/Central_Time_Zone
+[dateFormat]: /functions/dateformat/
+[gdex]: https://golang.org/pkg/time/#example_Time_Format
+[pagevars]: /variables/page/
+[time]: https://golang.org/pkg/time/ \ No newline at end of file
diff --git a/docs/content/en/readfiles/index.md b/docs/content/en/readfiles/index.md
new file mode 100644
index 000000000..3d65eaa0f
--- /dev/null
+++ b/docs/content/en/readfiles/index.md
@@ -0,0 +1,3 @@
+---
+headless: true
+--- \ No newline at end of file
diff --git a/docs/content/en/readfiles/pages-vs-site-pages.md b/docs/content/en/readfiles/pages-vs-site-pages.md
new file mode 100644
index 000000000..df5c7d26e
--- /dev/null
+++ b/docs/content/en/readfiles/pages-vs-site-pages.md
@@ -0,0 +1,34 @@
+* A _regular_ page is a "post" page or a "content" page.
+ * A _leaf bundle_ is a regular page.
+* A _list_ page can list _regular_ pages and other _list_ pages. Some
+ examples are: homepage, section pages, _taxonomy_ (`/tags/`) and
+ _term_ (`/tags/foo/`) pages.
+ * A _branch bundle_ is a _list_ page.
+
+`.Site.Pages`
+: Collection of **all** pages of the site: _regular_ pages,
+ sections, taxonomies, etc. -- Superset of everything!
+
+`.Site.RegularPages`
+: Collection of only _regular_ pages.
+
+The above `.Site. ..` page collections can be accessed from any scope in
+the templates.
+
+Below variables return a collection of pages only from the scope of
+the current _list_ page:
+
+`.Pages`
+: Collection of _regular_ pages and _only first-level_
+ section pages under the current _list_ page.
+
+`.RegularPages`
+: Collection of only _regular_ pages under the
+ current _list_ page. This **excludes** regular pages in nested sections/_list_ pages (those are subdirectories with an `_index.md` file.
+
+`.RegularPagesRecursive`
+: {{< new-in "0.68.0" >}} Collection of **all** _regular_ pages under a _list_ page. This **includes** regular pages in nested sections/_list_ pages.
+
+Note
+: From the scope of _regular_ pages, `.Pages` and
+ `.RegularPages` return an empty slice.
diff --git a/docs/content/en/readfiles/sectionvars.md b/docs/content/en/readfiles/sectionvars.md
new file mode 100644
index 000000000..45aaff1f3
--- /dev/null
+++ b/docs/content/en/readfiles/sectionvars.md
@@ -0,0 +1,23 @@
+.CurrentSection
+: The page's current section. The value can be the page itself if it is a section or the homepage.
+
+.FirstSection
+: The page's first section below root, e.g. `/docs`, `/blog` etc.
+
+.InSection $anotherPage
+: Whether the given page is in the current section.
+
+.IsAncestor $anotherPage
+: Whether the current page is an ancestor of the given page.
+
+.IsDescendant $anotherPage
+: Whether the current page is a descendant of the given page.
+
+.Parent
+: A section's parent section or a page's section.
+
+.Section
+: The [section](/content-management/sections/) this content belongs to. **Note:** For nested sections, this is the first path element in the directory, for example, `/blog/funny/mypost/ => blog`.
+
+.Sections
+: The [sections](/content-management/sections/) below this content.
diff --git a/docs/content/en/readfiles/testing.txt b/docs/content/en/readfiles/testing.txt
new file mode 100644
index 000000000..6428710e3
--- /dev/null
+++ b/docs/content/en/readfiles/testing.txt
@@ -0,0 +1,3 @@
+##### Hello World!
+
+Testing one, **two**, *three*. Don't delete this sample file used in the [templates](/templates/) section of the Hugo docs. \ No newline at end of file
diff --git a/docs/content/en/showcase/1password-support/bio.md b/docs/content/en/showcase/1password-support/bio.md
new file mode 100644
index 000000000..9187908d9
--- /dev/null
+++ b/docs/content/en/showcase/1password-support/bio.md
@@ -0,0 +1,5 @@
+
+**1Password** is a password manager that keeps you safe online. It protects your secure information behind the one password only you know.
+
+
+The [1Password Support](https://support.1password.com/) website was built from scratch with **Hugo** and enhanced with **React** and **Elasticsearch** to give us the best of both worlds: The simplicity and performance of a static site, with the richness of a hosted web app.
diff --git a/docs/content/en/showcase/1password-support/featured.png b/docs/content/en/showcase/1password-support/featured.png
new file mode 100644
index 000000000..8e46495e6
--- /dev/null
+++ b/docs/content/en/showcase/1password-support/featured.png
Binary files differ
diff --git a/docs/content/en/showcase/1password-support/index.md b/docs/content/en/showcase/1password-support/index.md
new file mode 100644
index 000000000..2bcbff3fd
--- /dev/null
+++ b/docs/content/en/showcase/1password-support/index.md
@@ -0,0 +1,39 @@
+---
+
+title: 1Password Support
+date: 2018-02-22
+description: "Showcase: \"Compiles 400 pages in five languages in the blink of an eye.\""
+siteURL: https://support.1password.com/
+byline: "[Mitch Cohen](https://github.com/mitchchn), Documentation Team Lead"
+aliases: [/showcase/1password/]
+
+---
+
+At 1Password, we used to go through a different documentation platform every month: blog engines, ebooks, wikis, site generators written in Ruby and JavaScript. Each was inadequate in its own special way. Then we found **Hugo**. We made one last switch, and we're glad we did.
+
+### Not all static site generators are created equal
+
+Finding a tool that will make your customers, writers, designers, _and_ DevOps team happy is no easy task, but we managed it with Hugo:
+
+**Hugo is static**. We're a security company, so we swear by static sites and use them wherever possible. We feel much safer pointing customers at HTML files than at a complicated server which needs to be hardened.
+
+**Hugo is Go**. We love the Go programming language at 1Password, and we were delighted to learn that Hugo used the same Go template syntax that our designers and front-end developers had already mastered.
+
+**Hugo is FAST**. Our previous static site generator took nearly a minute to compile our (then much smaller) site. Developers might be used to this, but it wasn't cutting it for writers who wanted to see live previews of their work. Hugo did the same job in milliseconds, and to this day compiles 400 pages in five languages in the blink of an eye.
+
+**Hugo is flexible**. Thanks to Hugo's content and layout system, we were able to preserve our existing file and folder structure and port our entire production site in a few days. We could then create new content types that weren't possible before, like these snazzy [showcases](https://support.1password.com/explore/extension/).
+
+**Hugo is great for writers**. Our documentation team was already comfortable with Markdown and Git and could start creating content for Hugo with zero downtime. Once we added shortcodes, our writers were able to dress up articles with features like [platform boxes](https://support.1password.com/get-the-apps/) with just a bit of new syntax.
+
+**Hugo has an amazing developer community**. Hugo updates are frequent and filled to the brim with features and fixes. As we developed the multilingual version of our site, we submitted PRs for features we needed and were helped through the process by [@bep](https://github.com/bep) and others.
+
+**Hugo is simple to deploy**. Hugo has just the right amount of configuration options to fit into our build system without being too complicated.
+
+### Tech specs
+
+* [1Password Support](https://support.1password.com) uses Hugo with a custom theme. It shares styles and some template code with [1Password.com](https://1password.com), which we also moved to Hugo in 2016.
+* Code and articles live in a private GitHub repository, which is deployed to a static content server using Git hooks.
+* Writers build and preview the site on their computers and contribute content using pull requests.
+ * We use Hugo's [multilingual support](/content-management/multilingual/) to build the site in English, Spanish, French, Italian, German, and Russian. With the help of Hugo, 1Password Support became our very first site in multiple languages.
+* Our [contact form](https://support.1password.com/contact) is a single-page React app. We were able to integrate it with Hugo seamlessly thanks to its support for static files.
+* The one part of the support site which is not static is our search engine, which we developed with Elasticsearch and host on AWS.
diff --git a/docs/content/en/showcase/bypasscensorship/bio.md b/docs/content/en/showcase/bypasscensorship/bio.md
new file mode 100644
index 000000000..6563e13ca
--- /dev/null
+++ b/docs/content/en/showcase/bypasscensorship/bio.md
@@ -0,0 +1,6 @@
+Bypass Censorship find and promote tools that provide Internet access to everyone.
+
+The site is built by:
+
+* [Leyla Avsar](https://www.leylaavsar.com/) (designer)
+* [Fredrik Jonsson](https://xdeb.net/) (dev) \ No newline at end of file
diff --git a/docs/content/en/showcase/bypasscensorship/featured.png b/docs/content/en/showcase/bypasscensorship/featured.png
new file mode 100644
index 000000000..d6f429112
--- /dev/null
+++ b/docs/content/en/showcase/bypasscensorship/featured.png
Binary files differ
diff --git a/docs/content/en/showcase/bypasscensorship/index.md b/docs/content/en/showcase/bypasscensorship/index.md
new file mode 100644
index 000000000..a266797ea
--- /dev/null
+++ b/docs/content/en/showcase/bypasscensorship/index.md
@@ -0,0 +1,24 @@
+---
+title: Bypass Censorship
+date: 2019-06-16
+description: "Showcase: Bypass Censorship find and promote tools that provide Internet access to everyone."
+siteURL: https://www.bypasscensorship.org/
+byline: "[Fredrik Jonsson](https://xdeb.net/), Web developer & Linux sysadmin"
+
+---
+
+The British Broadcasting Corporation (BBC) (UK), Deutsche Welle (DW) (Germany), France Médias Monde (FMM) (France), the U.S. Agency for Global Media (USAGM) (US) and the Open Technology Fund (OTF) (US) co-sponsor the Bypass Censorship website.
+
+Websites of international news agencies are often blocked in many countries. In order to connect people to these sites, Bypass Censorship feature and recommend tools in the following languages: English, French, Spanish, Arabic, Farsi, Chinese, and Russian.
+
+One of the tools is the Bypass Censorship Extension for Firefox and Chrome. The extension help direct people to mirrors of partners sites if they are being censored.
+
+The first version of the site was built in Drupal 8 but it was relaunched as a static site built with Hugo in 2019.
+
+Security, page load time and easy of hosting is the main reasons for switching to a static site. As the lead developer I had good experience with Hugo and was interested in exploring the multilingual features.
+
+It's a simply site, basically one page in seven languages. I had no problems getting Hugo to output what I wanted. Found the multilingual support straight forward and easy to work with.
+
+Thanks to the design by [Leyla Avsar](https://www.leylaavsar.com/) the site also looks good. I used the [Hugo Zen theme](https://github.com/frjo/hugo-theme-zen) with a few custom templates and the needed CSS.
+
+The editors can maintain content via [Forestry.io CMS](https://forestry.io/) or directly via Git. Forestry does unfortunately not have multilingual support. All the language versions are in one pile making it harder to find the right file to edit, but it works. \ No newline at end of file
diff --git a/docs/content/en/showcase/digitalgov/bio.md b/docs/content/en/showcase/digitalgov/bio.md
new file mode 100644
index 000000000..db3ffafaf
--- /dev/null
+++ b/docs/content/en/showcase/digitalgov/bio.md
@@ -0,0 +1,2 @@
+
+**Digital.gov** helps people in the U.S. government deliver better, more accessible digital services through publishing essential guidance, resources, tools, and online events that make it easier for people to design, build, and deliver essential services for the public.
diff --git a/docs/content/en/showcase/digitalgov/featured.png b/docs/content/en/showcase/digitalgov/featured.png
new file mode 100644
index 000000000..5663180f9
--- /dev/null
+++ b/docs/content/en/showcase/digitalgov/featured.png
Binary files differ
diff --git a/docs/content/en/showcase/digitalgov/index.md b/docs/content/en/showcase/digitalgov/index.md
new file mode 100644
index 000000000..63f44b645
--- /dev/null
+++ b/docs/content/en/showcase/digitalgov/index.md
@@ -0,0 +1,66 @@
+---
+title: Digital.gov
+date: 2020-05-01
+description: "Showcase: \"Guidance on building better digital services in government.\""
+siteURL: https://digital.gov/
+siteSource: https://github.com/gsa/digitalgov.gov
+---
+
+For over a decade, Digital.gov has provided guidance, training, and community support to the people who are responsible for delivering digital services in the U.S. government. Essentially, it is a place where people can find examples of problems being solved in government, and get links to the tools and resources they need.
+
+Through collaboration in our communities of practice, Digital.gov is a window into the people who work in technology in government and the challenges they face making digital services stronger and more effective. [Read more about our site »](https://digital.gov/2019/12/19/a-new-digitalgov/)
+
+Digital.gov is built using the [U.S. Web Design System](https://designsystem.digital.gov/) (USWDS) and have followed the [design principles](https://designsystem.digital.gov/maturity-model/) in building out our new site:
+
+- **Start with real user needs** — We used human-centered design methods to inform our product decisions (like qualitative user research), and gathered feedback from real users. We also continually test our assumptions with small experiments.
+- **Earn trust** —We recognize that trust has to be earned every time. We are including all [required links and content](https://digital.gov/resources/required-web-content-and-links/) on our site, clearly identifying as a government site, building with modern best practices, and using https.
+- **Embrace accessibility** — [Accessibility](https://digital.gov/resources/intro-accessibility/) affects everybody, and we built it into every decision. We’re continually working to conform to Section 508 requirements, use user experience best practices, and support a wide range of devices.
+- **Promote continuity** — We started from shared solutions like USWDS and [Federalist](https://federalist.18f.gov/). We designed our site to clearly identify as a government site by including USWDS’s .gov banner, common colors and patterns, and built with modern best practices.
+- **Listen** — We actively collect user feedback and web metrics. We use the [Digital Analytics Program](https://digital.gov/services/dap/) (DAP) and analyze the data to discover actionable insights. We make small, incremental changes to continuously improve our website by listening to readers and learning from what we hear.
+
+_More on the [USWDS maturity model »](https://designsystem.digital.gov/maturity-model/)_
+
+## Open Tools
+
+We didn’t start from scratch. We built and designed the Digital.gov using many of the open-source tools and services that we develop for government here in the [Technology Transformation Services](https://www.gsa.gov/tts/) (TTS).
+
+Using services that make it possible to design, build, and iterate quickly are essential to modern web design and development, which is why [Federalist](https://federalist.18f.gov/) and the [U.S. Web Design System](https://designsystem.digital.gov/) are such a great combination.
+
+**Why Hugo?** Well, with around `~3,000` files _(and growing)_ and `~9,000` built pages, we needed a site generator that could handle that volume with lightning fast speed.
+
+Hugo was the clear option. The [Federalist](https://federalist.18f.gov/) team quickly added it to their available site generators, and we were off.
+
+At the moment, it takes around `32 seconds` to build close to `~10,000` pages!
+
+Take a look:
+
+```bash
+
+ | EN
+-------------------+-------
+ Pages | 7973
+ Paginator pages | 600
+ Non-page files | 108
+ Static files | 851
+ Processed images | 0
+ Aliases | 1381
+ Sitemaps | 1
+ Cleaned | 0
+
+Built in 32.427 seconds
+
+```
+
+In addition to Hugo, we are proudly using a number of other tools and services, all built by government are free to use:
+
+- [Federalist](https://federalist.18f.gov/)
+- [Search.gov](https://www.search.gov/) — A free, hosted search platform for federal websites.
+- [Cloud.gov](https://www.cloud.gov/) — helps teams build, run, and authorize cloud-ready or legacy government systems quickly and cheaply.
+- [Federal CrowdSource Mobile Testing Program](https://digital.gov/services/mobile-application-testing-program/) — Free mobile compatibility testing by feds, for feds.
+- [Digital Analytics Program](https://digital.gov/services/dap/) (DAP) — A free analytics tool for measuring digital services in the federal government
+- [Section508.gov](https://www.section508.gov/) and [PlainLanguage.gov](https://www.plainlanguage.gov/) resources
+- [API.data.gov](https://api.data.gov/) — a free API management service for federal agencies
+- [U.S. Digital Registry](https://digital.gov/services/u-s-digital-registry/) — A resource for confirming the official status of government social media accounts, mobile apps, and mobile websites.
+
+
+**Questions or feedback?** [Submit an issue](https://github.com/GSA/digitalgov.gov/issues) or send us an email to [digitalgov@gsa.gov](mailto:digitalgov@gsa.gov) :heart:
diff --git a/docs/content/en/showcase/fireship/bio.md b/docs/content/en/showcase/fireship/bio.md
new file mode 100644
index 000000000..faf739bfa
--- /dev/null
+++ b/docs/content/en/showcase/fireship/bio.md
@@ -0,0 +1,6 @@
+
+**Fireship.io** is an ecosystem of detailed and practical resources for developers who want to build and ship high-quality apps.
+
+The site is built by:
+
+* [Jeff Delaney](https://fireship.io/contributors/jeff-delaney/)
diff --git a/docs/content/en/showcase/fireship/featured.png b/docs/content/en/showcase/fireship/featured.png
new file mode 100644
index 000000000..33d1a47c5
--- /dev/null
+++ b/docs/content/en/showcase/fireship/featured.png
Binary files differ
diff --git a/docs/content/en/showcase/fireship/index.md b/docs/content/en/showcase/fireship/index.md
new file mode 100644
index 000000000..e9338a625
--- /dev/null
+++ b/docs/content/en/showcase/fireship/index.md
@@ -0,0 +1,17 @@
+---
+title: fireship.io
+date: 2019-02-02
+description: "Showcase: \"Hugo helps us create complex technical content that integrates engaging web components\""
+siteURL: https://fireship.io
+siteSource: https://github.com/fireship-io/fireship.io
+byline: "[Jeff Delaney](https://github.com/codediodeio), Fireship.io Creator"
+---
+
+After careful consideration of JavaScript/JSX-based static site generators, it became clear that Hugo was the only tool capable of handling our project's complex demands. Not only do we have multiple content formats and taxonomies, but we often need to customize the experience at a more granular level. The problems Hugo has solved for us include:
+
+- **Render speed.** We know from past experience that JavaScript-based static site generators become very slow when you have thousands of pages and images.
+- **Feature-rich.** Our site has a long list of specialized needs and Hugo somehow manages to cover every single use case.
+- **Composability.** Hugo's partial and shortcode systems empower us to write DRY and maintainable templates.
+- **Simplicity.** Hugo is easy to learn (even without Go experience) and doesn't burden us with brittle dependencies.
+
+The site is able to achieve Lighthouse performance scores of 95+, despite the fact that it is a fully interactive PWA that ships Angular and Firebase in the JS bundle. This is made possible by (1) prerendering content with Hugo and (2) lazily embedding native web components directly in the HTML and markdown. We provide a [detailed explanation](https://youtu.be/gun8OiGtlNc) of the architecture on YouTube and can't imagine development without Hugo.
diff --git a/docs/content/en/showcase/flesland-flis/bio.md b/docs/content/en/showcase/flesland-flis/bio.md
new file mode 100644
index 000000000..2fa6a7964
--- /dev/null
+++ b/docs/content/en/showcase/flesland-flis/bio.md
@@ -0,0 +1,8 @@
+
+A business page for Flesland Flis AS. A Norwegian Tiler located in Bergen.
+
+The page is designed and developed by Sindre Gusdal:
+
+* [Absoluttweb AS](https://www.absoluttweb.no)
+* [Sindre Gusdal](https://www.linkedin.com/in/sindregusdal/)
+
diff --git a/docs/content/en/showcase/flesland-flis/featured.png b/docs/content/en/showcase/flesland-flis/featured.png
new file mode 100644
index 000000000..a6dae684e
--- /dev/null
+++ b/docs/content/en/showcase/flesland-flis/featured.png
Binary files differ
diff --git a/docs/content/en/showcase/flesland-flis/index.md b/docs/content/en/showcase/flesland-flis/index.md
new file mode 100644
index 000000000..935bb4661
--- /dev/null
+++ b/docs/content/en/showcase/flesland-flis/index.md
@@ -0,0 +1,24 @@
+---
+
+title: Flesland Flis AS
+date: 2018-04-24
+description: "showcase: Business Page for a tile shop in Bergen, Norway"
+siteURL: https://www.fleslandflis.no
+byline: "[Sindre Gusdal](https://www.absoluttweb.no), Absoluttweb AS"
+
+---
+
+For **Flesland Flis** I use a combination of **Hugo, Forestry.io and Netlify**. Static Site Generators and Hugo has been on my radar for a long time, and with all the nice features released in Hugo the last years, it's now my preferred solution for new clients. Also a huge thanks to the guys at [Forestry.io](https://forestry.io), for making such a smooth CMS for Hugo.
+
+The #1 reason why I love Hugo is the logic between content and layout, and of course the speed. Compared to solutions like Jekyll, Hugo is just better at all the stuff I value the most - speed, flexibility, theming and more.
+
+### Thanks, Hugo!
+
+Today I use Hugo in a combination with GULP and Foundation 6 + my own Hugo starter theme. This works great for me, and gives me all the flexibility I need. Then I can include FancyBox, Responsive Text and other Node Modules when needed.
+
+In the past I had to do a lot of changes to layout, content and css, if the client f.ex needed an extra PDF or an image-gallery to a certain page. Just small details not fitting in the template, would be a hassle. So updating existing webpages was boring and time consuming.
+
+Today I just copy-paste a new layout file, adds some frontmatter, Pushes to GIT and that special page is done.
+
+**Gotta love it:)**
+
diff --git a/docs/content/en/showcase/forestry/bio.md b/docs/content/en/showcase/forestry/bio.md
new file mode 100644
index 000000000..767365cc0
--- /dev/null
+++ b/docs/content/en/showcase/forestry/bio.md
@@ -0,0 +1,5 @@
+
+Forestry.io is a Git-backed CMS (content management system) for websites and web products built using static site generators such as Hugo.
+
+Forestry bridges the gap between developers and their teams, by making development fun and easy, while providing powerful content management for their teams.
+
diff --git a/docs/content/en/showcase/forestry/featured.png b/docs/content/en/showcase/forestry/featured.png
new file mode 100644
index 000000000..1ee315e78
--- /dev/null
+++ b/docs/content/en/showcase/forestry/featured.png
Binary files differ
diff --git a/docs/content/en/showcase/forestry/index.md b/docs/content/en/showcase/forestry/index.md
new file mode 100644
index 000000000..1a9c0faaa
--- /dev/null
+++ b/docs/content/en/showcase/forestry/index.md
@@ -0,0 +1,48 @@
+---
+title: Forestry.io
+date: 2018-03-16
+description: "Showcase: \"Seeing Hugo in action is a whole different world of awesome.\""
+siteURL: https://forestry.io/
+siteSource: https://github.com/forestryio/forestry.io
+---
+
+It was clear from the get-go that we had to go with a static site generator. Static sites are secure, performant, and give you 100% flexibility. At [Forestry.io](https://forestry.io/) we provide Content Management Solutions for websites built with static site generators, so we might be a little biased. The only question: Which static site generator was the right choice for us?
+
+### Why Hugo?
+
+In our early research we looked at Ionic’s [site](https://github.com/ionic-team/ionic) to get some inspiration. They used Jekyll to build their website. While Jekyll is a great generator, the build times for larger sites can be painfully slow. With more than 150 pages plus many custom configurations and add-ons, our website doesn’t fall into the low-volume category anymore. Our developers want a smooth experience when working on the website and our content editors need the ability to preview content quickly. In short, we need our builds to be lightning fast.
+
+We knew Hugo was fast but we did [some additional benchmarking](https://forestry.io/blog/hugo-vs-jekyll-benchmark/) before making our decision. Seeing Hugo in action is a whole different world of awesome. Hugo takes less than one second to build our 150-page site! Take a look:
+
+```bash
+ | EN
++------------------+-----+
+ Pages | 141
+ Paginator pages | 4
+ Non-page files | 0
+ Static files | 537
+ Processed images | 0
+ Aliases | 60
+ Sitemaps | 1
+ Cleaned | 0
+
+Total in 739 ms
+```
+
+In fact, we liked Hugo so much that our wizard Chris made his workflow public and we started the open-source project [Create-Static-Site](https://github.com/forestryio/create-static-site). It's [a simple way to spin up sites](https://forestry.io/blog/up-and-running-with-hugo/) and set up a modern web development workflow with one line of code. Essentially it adds build configurations as a dependency for JS, CSS and Image Processing.
+
+Lastly, we want to take the opportunity to give some love to other amazing tools we used building our website.
+
+### What tools did we use?
+
+* Our Norwegian designer Nichlas is in love with [**Sketch**](https://www.sketchapp.com/). From what we hear it’s a designer’s dream come true.
+* Some say our main graphic is [mesmerizing](https://twitter.com/hmncllctv/status/968907474664284160). Nichlas created it using [**3DS Max**](https://www.autodesk.com/products/3ds-max/overview).
+* [**Hugo**](https://gohugo.io/) -- of course.
+* Chris can’t think of modern web development without [**Gulp**](https://gulpjs.com/) & [**Webpack**](https://webpack.js.org/). We used them to add additional build steps such as Browsersync, CSS, JS and SVG optimization.
+* Speaking about adding steps to our build, our lives would be much harder without [**CircleCI**](https://circleci.com/) for continuous deployment and automated testing purposes.
+* We can’t stop raving about [**Algolia**](https://www.algolia.com/). Chris loves it and even wrote a tutorial on [how to implement Algolia](https://forestry.io/blog/search-with-algolia-in-hugo/) into static sites using Hugo’s [Custom Outputs](https://gohugo.io/templates/output-formats/).
+* [**Cloudinary**](https://cloudinary.com/) is probably one of the easiest ways to get responsive images into your website.
+* We might be a little biased on this one - We think [**Forestry.io**](https://forestry.io/) is a great way to add a content management system with a clean UI on top of your site without interrupting your experience as a developer.
+* For hosting purposes we use the almighty [**AWS**](https://aws.amazon.com/).
+* [**Formspree.io**](https://formspree.io/) is managing our support and enterprise requests.
+* We also use browser cookies and JS to customize our user’s experience and give it a more dynamic feel. \ No newline at end of file
diff --git a/docs/content/en/showcase/godot-tutorials/bio.md b/docs/content/en/showcase/godot-tutorials/bio.md
new file mode 100644
index 000000000..92fccadf6
--- /dev/null
+++ b/docs/content/en/showcase/godot-tutorials/bio.md
@@ -0,0 +1,9 @@
+
+[Godot Tutorials](https://godottutorials.com) aims to teach beginners how to get up and running with basic game programming and game development skills.
+
+The website is built with the **Hugo Framework** alongside aws+cloudfront+lambda.
+
+The site is built by:
+
+* [Godot Tutorials](https://godottutorials.com)
+
diff --git a/docs/content/en/showcase/godot-tutorials/featured.png b/docs/content/en/showcase/godot-tutorials/featured.png
new file mode 100644
index 000000000..fef13b996
--- /dev/null
+++ b/docs/content/en/showcase/godot-tutorials/featured.png
Binary files differ
diff --git a/docs/content/en/showcase/godot-tutorials/index.md b/docs/content/en/showcase/godot-tutorials/index.md
new file mode 100644
index 000000000..e33e413e1
--- /dev/null
+++ b/docs/content/en/showcase/godot-tutorials/index.md
@@ -0,0 +1,25 @@
+---
+
+title: Godot Tutorials
+date: 2021-01-07
+
+description: "Teaching game development skills with love."
+
+# The URL to the site on the internet.
+siteURL: https://godottutorials.com
+
+# Add credit to the article author. Leave blank or remove if not needed/wanted.
+byline: "[Godot Tutorials](https://godottutorials.com), Web Developer & Game Programmer"
+
+---
+
+
+[Godot Tutorials](https://godottutorials.com) started as a way to teach beginners game programming and game development.
+As I created videos, I ran into a problem; if I made a mistake with a Youtube video, it was difficult to correct errors.
+
+I discovered that blogging episodes and having articles that teach on top of my videos is a fantastic solution to my problem.
+
+As I researched blogging platforms, I came across two solutions; however, I chose [Hugo](https://gohugo.io) because it's built with markdown in mind and simplified my workflow.
+
+In a sense, with [Hugo](https://gohugo.io) programmed the right way, I can focus **more time on planning, creating, and editing**
+my videos and **less time maintaining and fixing** my website. \ No newline at end of file
diff --git a/docs/content/en/showcase/hapticmedia/bio.md b/docs/content/en/showcase/hapticmedia/bio.md
new file mode 100644
index 000000000..4423edb70
--- /dev/null
+++ b/docs/content/en/showcase/hapticmedia/bio.md
@@ -0,0 +1 @@
+**Hapticmedia** provides interactive 3D configurators for eCommerce.
diff --git a/docs/content/en/showcase/hapticmedia/featured.png b/docs/content/en/showcase/hapticmedia/featured.png
new file mode 100644
index 000000000..a47ea9c2c
--- /dev/null
+++ b/docs/content/en/showcase/hapticmedia/featured.png
Binary files differ
diff --git a/docs/content/en/showcase/hapticmedia/index.md b/docs/content/en/showcase/hapticmedia/index.md
new file mode 100644
index 000000000..b32879b69
--- /dev/null
+++ b/docs/content/en/showcase/hapticmedia/index.md
@@ -0,0 +1,33 @@
+---
+
+title: Hapticmedia Blog
+date: 2019-10-01
+description: "Showcase: \"A simple, but powerful, multilingual blog.\""
+siteURL: https://hapticmedia.fr/blog/en/
+byline: "[Cyril Bonnet](https://github.com/monsieurnebo), Web Developer"
+
+---
+
+Our goal was to create a simple, effective and multilingual blog on [3D technology](https://hapticmedia.fr/blog/en/3d-technology/) that could be managed by a non-technical profile.
+
+## Why Hugo?
+Hugo addresses all these needs, coupled with [Forestry.io](https://forestry.io/) for its administration via a "turnkey" interface. We have attached particular importance to SEO, and therefore to the creation of an advanced taxonomy system. Thus, each author and tag has a dedicated page, listing the related posts.
+
+
+## What we liked
+- The **multilingual** content support, especially simple to setup.
+- The **multiple environments** support (develop, staging, test, production, ...).
+- Although a hard start with the Go language, the power of the **Hugo's templating**.
+- The **partial layouts**, including the `internals` (e.g. social metas).
+- The **build time**, unbeatable ⚡️⚡️⚡️.
+
+
+## Tools & workflow
+- We used the same design as **[our website](https://hapticmedia.fr/en/)**, recreated as a Hugo HTML template.
+- **[Hugo](https://gohugo.io)** for the static website generator.
+- **[CircleCI](https://circleci.com)** for continuous integration & deployment.
+- **[AWS](https://aws.amazon.com/)** for web hosting.
+- **[Forestry.io](https://forestry.io)** for the content management.
+
+**All of these tools allow our editor to manage the blog's content without having to worry about its technical aspect, which is managed by the developers.**
+
diff --git a/docs/content/en/showcase/hartwell-insurance/bio.md b/docs/content/en/showcase/hartwell-insurance/bio.md
new file mode 100644
index 000000000..7fab74292
--- /dev/null
+++ b/docs/content/en/showcase/hartwell-insurance/bio.md
@@ -0,0 +1,6 @@
+
+Hartwell Insurance is an insurance company set up solely to service the Broker community.
+
+By combining **Hugo**, **Service Worker** and **Netlify**, we were able to achieve incredible global site performance.
+
+The site was built by [Tomango](https://www.tomango.co.uk)
diff --git a/docs/content/en/showcase/hartwell-insurance/featured.png b/docs/content/en/showcase/hartwell-insurance/featured.png
new file mode 100644
index 000000000..ced251f98
--- /dev/null
+++ b/docs/content/en/showcase/hartwell-insurance/featured.png
Binary files differ
diff --git a/docs/content/en/showcase/hartwell-insurance/hartwell-columns.png b/docs/content/en/showcase/hartwell-insurance/hartwell-columns.png
new file mode 100644
index 000000000..c9d36b67d
--- /dev/null
+++ b/docs/content/en/showcase/hartwell-insurance/hartwell-columns.png
Binary files differ
diff --git a/docs/content/en/showcase/hartwell-insurance/hartwell-lighthouse.png b/docs/content/en/showcase/hartwell-insurance/hartwell-lighthouse.png
new file mode 100644
index 000000000..a882f01fd
--- /dev/null
+++ b/docs/content/en/showcase/hartwell-insurance/hartwell-lighthouse.png
Binary files differ
diff --git a/docs/content/en/showcase/hartwell-insurance/hartwell-webpagetest.png b/docs/content/en/showcase/hartwell-insurance/hartwell-webpagetest.png
new file mode 100644
index 000000000..f60994ea1
--- /dev/null
+++ b/docs/content/en/showcase/hartwell-insurance/hartwell-webpagetest.png
Binary files differ
diff --git a/docs/content/en/showcase/hartwell-insurance/index.md b/docs/content/en/showcase/hartwell-insurance/index.md
new file mode 100644
index 000000000..925497949
--- /dev/null
+++ b/docs/content/en/showcase/hartwell-insurance/index.md
@@ -0,0 +1,69 @@
+---
+
+title: Hartwell Insurance
+
+date: 2018-02-09
+
+description: "Showcase: \"Hugo + Netlify + PWA makes for a rapid website.\""
+
+siteURL: https://www.hartwell-insurance.com/
+
+byline: "[Trys Mudford](http://www.trysmudford.com), Lead Developer, Tomango"
+
+---
+
+We’ve just launched a shiny new website for [Hartwell Insurance](https://www.hartwell-insurance.com/) – I’m really proud of it. It was tackled in a different way to most previous Tomango site builds, using some fancy new tools and some vintage web standards.
+
+It’s a multi-page, single-page (!) website written in Hugo, a static site generator built with performance as a first-class feature. _I’ve outlined a load of benefits to Hugo & static sites [here](https://why-static.netlify.com/), in case you’re interested._
+
+> **In essence, a static site generator pre-renders the whole site into HTML files and serves them like it’s 1995.**
+
+There’s no Apache or Node backend that does compilation at runtime, it’s all done at the build step. This means the server; Netlify in this case, only has to do one thing – serve files. Unsurprisingly, serving simple files is VERY quick.
+
+The starter point was the [Victor Hugo](https://github.com/netlify/victor-hugo) repository that Netlify have created. It let me dive in with Hugo, PostCSS, BrowserSync and ES6 without setting up any tooling myself – always a win!
+
+I then took all the content from the design file and moved it into Markdown, putting shortcodes in where necessary. This site did need a number of custom shortcodes for the presentational elements like the expanding circles and full width backgrounds. But mostly it was just clean, semantic HTML with some CSS and JS enhancement thrown in.
+
+For example, this two column layout shown below. I used CSS Columns with a `break-after: always;` on the `<h1>`. No multi-wrapper or difficult-to-clear shortcodes, just clean HTML.
+
+![The multi-column setup on Hartwell Insurance](hartwell-columns.png)
+
+For the ripple effects on the section headings, I used JS to prepend a `<canvas>` element then animated it with `RequestAnimationFrame`. It adds a nice bit of movement on the page.
+
+On the Hartwell Profitmaker section, I toyed with the idea of using Vue.js for the calculator, but after giving it some thought, I decided to code in Vanilla. The result, all of the site JS comes in at 3.2KB!
+
+The plan was to host with Netlify and therefore get access to Netlify Forms. It meant spending 0 minutes on getting a backend set up – I could focus fully on the frontend.
+
+Cache invalidation isn’t normally something I spend all that much time thinking about when building a site. But as this site was going to be a Progressive Web App, invalidating files would be important to ensure the site didn’t appear broken when we made changes. As I was using Victor-Hugo, I wasn’t really sure how to best tackle this and sadly spent far too many hours wrangling with Webpack and Gulp files to try and get hashed file names working nicely.
+
+Then; while I was waiting for a haircut, I read a [Netlify blog post](https://www.netlify.com/blog/2017/02/23/better-living-through-caching/) on how they do cache invalidation with HTTP2 and it promptly blew my mind.
+
+When you request an asset, they send an ETag in the headers which is a hash of the file. There’s also a header to tell the browser not to trust it’s own cache (which sounds a little bit bonkers).
+
+So when you request the page, it opens a persistent HTTP2 connection up (so no new connections for file requests). When it gets to requesting that asset, the browser sends the ETag back to Netlify and they either return nothing if the ETag matches, or the new file with the new ETag. No `app.klfjlkdsfjdslkfjdslkfdsj.js` or `app.js?v=20180112`. Just a clean `app.js` with instant cache invalidation. Amazing.
+
+Finally, the [Service Worker](https://www.hartwell-insurance.com/sw.js) could be added. This turned out to be straightforward as the Netlify cache invalidation system solved most of the pain points. I went for a network-first, cache-fallback setup for both assets and HTML. This does mean flaky speeds are reliant on the page connection time, but given we’re on HTTP2, I’m hoping the persistent connection and tiny ETag size will keep it quick. For online connections, every request is up to date and instantly live after any update. Offline connections fall back to every assets’ last cached state. It seems to work really nicely, and there’s no need for an update prompt if assets have changed.
+
+---
+
+## The results
+
+The WebPageTest results are looking good. The speed index is 456, 10x smaller than the average Alexa top 300,000 score.
+
+![WebPageTest results](hartwell-webpagetest.png)
+
+[TestMySite.io](https://testmysite.io/5a7e1bb2df99531a23c9ad2f/hartwell-insurance.com) is return ~2ms time to first byte from the CDN edge nodes. Lighthouse audits are also very promising. There’s still some improvement to be gained lazy-loading the images and inlining the CSS. I’m less excited about the [second suggestion](http://www.trysmudford.com/css-in-2017/), but I’ll certainly look at some lazy-loading, especially as I’m already using `IntersectionObserver` for some animations.
+
+![Lighthouse results](hartwell-lighthouse.png)
+
+The most encouraging result is how quick the site is around the world. Most Tomango clients (and their customers) are pretty local and almost exclusively UK-based. We have a dedicated server in Surrey that serves our market pretty well. It did take me by surprise just how much slower a connection from the USA, Australia and Japan to our server was. They’re waiting ~500ms just for the first byte, let alone downloading each asset.
+
+[Hartwell Insurance](https://www.hartwell-insurance.com/) are a US company so by putting them on our server, we’d be instantly hampering their local response times by literally seconds. This was one of the main reasons for going with Netlify. They provide global CDN hosting that’s quick from anywhere in the world.
+
+---
+
+This project was such a blast to develop, it’s a real pleasure to put new technologies to good use in production, and to see real performance and usability benefits from them. Even using classic web methods of serving folders with files is fun when you’ve been databasing for a while – there’s something really ‘pure’ about it.
+
+---
+
+_This was originally posted on [my website](http://www.trysmudford.com/perfomance-wins-with-hugo-and-netlify/)_
diff --git a/docs/content/en/showcase/keycdn/bio.md b/docs/content/en/showcase/keycdn/bio.md
new file mode 100644
index 000000000..90f623dca
--- /dev/null
+++ b/docs/content/en/showcase/keycdn/bio.md
@@ -0,0 +1 @@
+[KeyCDN](https://www.keycdn.com) is a high performance content delivery network (CDN) offering many powerful features, including image processing that can transform and optimize images in real time. Our network offers global coverage to speed up content delivery and is capable of delivering entire static websites, like those built with Hugo, at the edge.
diff --git a/docs/content/en/showcase/keycdn/featured.png b/docs/content/en/showcase/keycdn/featured.png
new file mode 100644
index 000000000..46018a8f9
--- /dev/null
+++ b/docs/content/en/showcase/keycdn/featured.png
Binary files differ
diff --git a/docs/content/en/showcase/keycdn/index.md b/docs/content/en/showcase/keycdn/index.md
new file mode 100644
index 000000000..d092aa07d
--- /dev/null
+++ b/docs/content/en/showcase/keycdn/index.md
@@ -0,0 +1,30 @@
+---
+
+title: KeyCDN
+date: 2020-04-10
+description: "Showcase: \"Hugo has become an integral part of our stack.\""
+siteURL: https://www.keycdn.com
+
+---
+
+At KeyCDN one of our primary focuses is on performance. With speed being ingrained in our DNA we knew from the start that we must use a fast static website generator that could meet our requirements. When evaluating the right solution, Hugo met our requirements and we looked no further as it was the fastest and most flexible.
+
+## Why we chose Hugo
+
+Before our migration to Hugo our website was powered by a PHP-based website that had about 50 pages and a WordPress website that had over 500 posts between our blog and knowledge base. This became harder to maintain as time continued. We felt like we were losing the speed and flexibility that we require. To overcome this we knew we needed to convert our website to be static. This would allow our website to be faster and more secure as it could be delivered by all of our edge locations.
+
+It wasn’t an easy task at the beginning, however, after evaluating Hugo and benchmarking it we knew we had found the ideal solution. Hugo was by far the fastest setup and offered an intuitive way to build our entire website exactly as needed. The Go-based templates, shortcodes, and configuration options made it easy to build a complex website.
+
+In the fall of 2018 we started the migration and within a couple short months we had built a custom static website with Hugo and migrated all content from our old systems. The simplicity and vast amount of functionality that Hugo offers made this process fast and left our entire team, including all of our writers and developers, happy with the migration. Since migrating to Hugo we haven’t looked back. Hugo has become an integral part of our stack. We’re grateful to all those who have contributed to make Hugo what it is today.
+
+## Technical overview
+
+Below is an overview of what we used with Hugo to build our website:
+
+* [KeyCDN](https://www.keycdn.com) uses a custom theme and is our primary hub for all style sheets and JavaScript. Our other websites, like [KeyCDN Tools](https://tools.keycdn.com), only import the required style sheets and JavaScript.
+* We use [Gulp](https://gulpjs.com) in our build process for many tasks, such as combining, versioning, and compressing our style sheets as well as our JavaScript.
+* Our search is powered by a custom solution that we’ve built. It allows our pages, blog, and knowledge base to be searched. It uses [Axios](https://github.com/axios/axios) to send a `POST` request containing the search query. An index file in JSON generated by Hugo is searched and the results are then returned.
+* Our commenting system is also powered by a custom solution that we’ve built. It uses Axios to send a `GET` request containing the slug to pull the comment thread and a `POST` request containing the name, email address, and comment when submitting a comment.
+* Our contact form is a simple HTML form, which uses Axios as well.
+* Our writers use shortcodes to enhance the capability of markdown.
+* Our entire website is delivered through KeyCDN using a Pull Zone, which means all of our edge locations are delivering our website.
diff --git a/docs/content/en/showcase/letsencrypt/bio.md b/docs/content/en/showcase/letsencrypt/bio.md
new file mode 100644
index 000000000..92551dc47
--- /dev/null
+++ b/docs/content/en/showcase/letsencrypt/bio.md
@@ -0,0 +1,3 @@
+
+
+Let's Encrypt is a free, automated, and open certificate authority (CA), run for the public's benefit. It is a service provided by the [Internet Security Research Group (ISRG)](https://www.abetterinternet.org/).
diff --git a/docs/content/en/showcase/letsencrypt/featured.png b/docs/content/en/showcase/letsencrypt/featured.png
new file mode 100644
index 000000000..9535d91bd
--- /dev/null
+++ b/docs/content/en/showcase/letsencrypt/featured.png
Binary files differ
diff --git a/docs/content/en/showcase/letsencrypt/index.md b/docs/content/en/showcase/letsencrypt/index.md
new file mode 100644
index 000000000..fc57a26b8
--- /dev/null
+++ b/docs/content/en/showcase/letsencrypt/index.md
@@ -0,0 +1,21 @@
+---
+title: "Let’s Encrypt"
+date: 2018-03-13
+description: "Showcase: Lessons learned from taking letsencrypt.org to Hugo."
+siteURL: https://letsencrypt.org/
+siteSource: https://github.com/letsencrypt/website
+byline: "[bep](https://github.com/bep), Hugo Lead"
+---
+
+The **Let’s Encrypt website** has a common set of elements: A landing page and some other static info-pages, a document section, a blog, and a documentation section. Having it moved to Hugo was mostly motivated by a _simpler administration and Hugo's [multilingual support](/content-management/multilingual/)_. They already serve HTTPS to more than 60 million domains, and having the documentation available in more languages will increase that reach.[^1]
+
+{{< tweet user="letsencrypt" id="971755920639307777" >}}
+
+I helped them port the site from Jekyll to Hugo. There are usually very few surprises doing this. I know Hugo very well, but working on sites with a history usually comes up with something new.
+
+That site is bookmarked in many browsers, so preserving the URLs was a must. Hugo's URL handling is very flexible, but there was one challenge. The website has a mix of standard and what we in Hugo call _ugly URLs_ (`https://letsencrypt.org/2017/12/07/looking-forward-to-2018.html`). In Hugo this is handled automatically, and you can turn it on globally or per language. But before Hugo `0.33` you could not configure it for parts of your site. You could set it manually for the relevant pages in front matter -- which is how it was done in Jekyll -- but that would be hard to manage, especially when you start to introduce translations. So, in [Hugo 0.33](https://gohugo.io/news/0.33-relnotes/) I added support for _ugly URLs_ per section and also `url` set in front matter for list pages (`https://letsencrypt.org/blog/`).
+
+The lessons learned from this also lead to [disableLanguages](/content-management/multilingual/#disable-a-language) in Hugo `0.34` (a way to turn off languages during translation). And I also registered [this issue](https://github.com/gohugoio/hugo/issues/4463). Once fixed it will make it easier to handle partially translated sites.
+
+
+[^1]: The work on getting the content translated is in progress.
diff --git a/docs/content/en/showcase/linode/bio.md b/docs/content/en/showcase/linode/bio.md
new file mode 100644
index 000000000..42fa92229
--- /dev/null
+++ b/docs/content/en/showcase/linode/bio.md
@@ -0,0 +1,4 @@
+
+**Linode** is a cloud hosting provider that offers high performance SSD Linux servers for your infrastructure needs.
+
+**Hugo** offers the documentation team incredible performance as we scale and continue providing quality Linux tutorials.
diff --git a/docs/content/en/showcase/linode/featured.png b/docs/content/en/showcase/linode/featured.png
new file mode 100644
index 000000000..8e517eacb
--- /dev/null
+++ b/docs/content/en/showcase/linode/featured.png
Binary files differ
diff --git a/docs/content/en/showcase/linode/index.md b/docs/content/en/showcase/linode/index.md
new file mode 100644
index 000000000..5a341be8a
--- /dev/null
+++ b/docs/content/en/showcase/linode/index.md
@@ -0,0 +1,15 @@
+---
+title: Linode Docs
+date: 2018-02-12
+description: "Showcase: \"Hugo allows us to build thousands of pages in seconds.\""
+siteURL: https://linode.com/docs/
+siteSource: https://github.com/linode/docs
+---
+
+The documentation team at Linode has been writing guides since 2009, with the goal of helping new and experienced Linux users find the best tools and get the most out of their systems.
+
+As our library grew into thousands of guides, we needed a fast static site generator with intuitive templating and the flexibility to extend Markdown without constantly writing HTML and CSS.
+
+Hugo solved a lot of our growing pains with features like shortcodes, customizable URLs, LiveReload, and more. We have already brought our site build time down from minutes to just a few seconds, and we are excited to see what future developments in Hugo will bring.
+
+Thank you to all the [Hugo contributors](https://github.com/gohugoio/hugo/graphs/contributors) and especially [@bep](https://github.com/bep) for helping us with the adoption of Hugo.
diff --git a/docs/content/en/showcase/over/bio.md b/docs/content/en/showcase/over/bio.md
new file mode 100644
index 000000000..415668f9e
--- /dev/null
+++ b/docs/content/en/showcase/over/bio.md
@@ -0,0 +1,5 @@
+The site is built by:
+
+* [Lauren Waller](https://twitter.com/waller_texas)
+* [Wayne Ashley Berry](https://twitter.com/waynethebrain)
+
diff --git a/docs/content/en/showcase/over/featured-over.png b/docs/content/en/showcase/over/featured-over.png
new file mode 100644
index 000000000..7d1ba6060
--- /dev/null
+++ b/docs/content/en/showcase/over/featured-over.png
Binary files differ
diff --git a/docs/content/en/showcase/over/index.md b/docs/content/en/showcase/over/index.md
new file mode 100644
index 000000000..9640198db
--- /dev/null
+++ b/docs/content/en/showcase/over/index.md
@@ -0,0 +1,17 @@
+---
+title: Over
+date: 2018-09-12
+description: "Showcase: \"People from all disciplines contribute to our website; Hugo’s single static binary makes that possible.\""
+siteURL: https://madewithover.com/
+
+---
+
+At Over we're into creativity, and technology should not get in the way. We want it to be easy for everyone to create, and Hugo does the same for us. That's one of the reasons many of us are fond of using it.
+
+People from all disciplines contribute to our website, be it legal documentation, layout and design, recruiting, marketing and of course… engineering. Hugo allows us to do this with as little friction as possible. A lot of this comes down to Hugo being distributed as a single static binary. Copy, paste, run... and you're up and running!
+
+We use [Wercker](https://www.wercker.com/) for continuous integration and deployments, [GitHub](https://github.com/) for contributing to and writing markdown and [Firebase](https://firebase.google.com/docs/hosting/) for hosting.
+
+This infrastructure takes all the pressure off our engineers, anyone can contribute to our website. Anyone else can review the changes, and of course anyone with permission can deploy those approved changes as well!
+
+We're busy working on a few new features for our website, and Hugo continues to deliver above and beyond. We're so happy with the choice we made to use Hugo and to us it has become the de-facto static site generator. \ No newline at end of file
diff --git a/docs/content/en/showcase/pharmaseal/bio.md b/docs/content/en/showcase/pharmaseal/bio.md
new file mode 100644
index 000000000..7477f1c32
--- /dev/null
+++ b/docs/content/en/showcase/pharmaseal/bio.md
@@ -0,0 +1,7 @@
+PHARMASEAL began in 2016 with the purpose of disrupting the Clinical Trials Management market through continuous validation and integration
+
+We've been using **Hugo + Webpack + Netlify** to provide a scalable, modular design for the website, complete with Forestry building blocks to quickly be able to generate engagement pages.
+
+The site is built by:
+
+- [Roboto Studio](https://roboto.studio)
diff --git a/docs/content/en/showcase/pharmaseal/featured-pharmaseal.png b/docs/content/en/showcase/pharmaseal/featured-pharmaseal.png
new file mode 100644
index 000000000..4a64325b7
--- /dev/null
+++ b/docs/content/en/showcase/pharmaseal/featured-pharmaseal.png
Binary files differ
diff --git a/docs/content/en/showcase/pharmaseal/index.md b/docs/content/en/showcase/pharmaseal/index.md
new file mode 100644
index 000000000..64e9960a3
--- /dev/null
+++ b/docs/content/en/showcase/pharmaseal/index.md
@@ -0,0 +1,37 @@
+---
+
+title: PHARMASEAL
+date: 2019-04-29
+
+description: "Pharmaseal website developed using Hugo, Forestry, hosted and deployed by Netlify."
+
+# The URL to the site on the internet.
+siteURL: https://pharmaseal.co/
+
+# Link to the site's Hugo source code if public and you can/want to share.
+# Remove or leave blank if not needed/wanted.
+
+
+# Add credit to the article author. Leave blank or remove if not needed/wanted.
+byline: "[Roboto Studio](https://roboto.studio), Jonathan Alford"
+
+---
+
+
+We wanted to shake the status quo with PHARMASEAL, opting for a fast and scalable website built with Hugo instead of slower monolithic systems the competitors were using.
+
+We had two goals:
+
+**Make it fast**
+
+We wanted to optimise the site as much as possible, so we opted for using Cloudinary, enabling us to take advantage of on-the-fly image manipulation, and thanks to the sheer speed of static sites, we achieved a perfect optimisation score with Google audits.
+
+Because we're hosting the site through Netlify and our target audience is in America, we are taking advantage of Netlify edge (Their alternative to a CDN). We're talking blazing fast.
+
+**Make it easy**
+
+We're big fans of simplicity, and that's what we delivered with the Forestry building blocks. Every element on the site is built with building blocks in mind, allowing PHARMASEAL to generate multiple pages in the blink of an eye.
+
+PHARMASEAL have found Forestry CMS combined with HUGO to be so effective at producing fast, purpose driven pages, that we have worked with them to add even more blocks in a scalable, modular fashion.
+
+**TLDR:** We're blown away with HUGO, the sheer speed, scalability and deployment possibilities with Netlify is the 💣 \ No newline at end of file
diff --git a/docs/content/en/showcase/quiply-employee-communications-app/bio.md b/docs/content/en/showcase/quiply-employee-communications-app/bio.md
new file mode 100644
index 000000000..f72a62554
--- /dev/null
+++ b/docs/content/en/showcase/quiply-employee-communications-app/bio.md
@@ -0,0 +1,4 @@
+**Quiply** is an employee communications app enabling mobile collaboration across an entire organization.
+Our customers get their own branded app enabling them to communicate fast and effectively with all employees, also non-desk and shift workers.
+
+As the Quiply app's build process is based on **Gulp**, we have started to build our company and product website using **Gulp + Hugo** which is super-fast and gives us exactly the flexibility we need.
diff --git a/docs/content/en/showcase/quiply-employee-communications-app/featured.png b/docs/content/en/showcase/quiply-employee-communications-app/featured.png
new file mode 100644
index 000000000..a4e9f046e
--- /dev/null
+++ b/docs/content/en/showcase/quiply-employee-communications-app/featured.png
Binary files differ
diff --git a/docs/content/en/showcase/quiply-employee-communications-app/index.md b/docs/content/en/showcase/quiply-employee-communications-app/index.md
new file mode 100644
index 000000000..a8c31cc33
--- /dev/null
+++ b/docs/content/en/showcase/quiply-employee-communications-app/index.md
@@ -0,0 +1,29 @@
+---
+
+# A suitable title for this article.
+title: Quiply Employee Communications App
+
+# Set this to the current date.
+date: 2018-02-13
+
+description: "\"It became immediately clear that we'd use Hugo going forward as it compiles super-fast, is intuitive to use and offers all the features we need.\""
+
+# The URL to the site on the internet.
+siteURL: https://www.quiply.com
+
+# Link to the site's Hugo source code if public and you can/want to share.
+# Remove or leave blank if not needed/wanted.
+# siteSource: https://github.com/gohugoio/hugoDocs
+
+# Add credit to the article author. Leave blank or remove if not needed/wanted.
+byline: "[Sebastian Schirmer](mailto:sebastian.schirmer@quiply.com), Quiply Co-Founder"
+
+---
+
+With the launch of our Employee Communications app Quiply we created a very simple and static one-page website to showcase our product.
+
+As our customer base and demand for marketing and communication started to grow, we needed a solution to easily grow and extend the contents of our web presence. As we do not have the need to serve dynamic content, we decided to use a static site generator. Amongst a couple of others, we tried Hugo and it became immediately clear that we'd use Hugo going forward as it compiles super-fast, is intuitive to use and offers all the features we need.
+
+Our website which we launched a couple of weeks ago is still growing and new content is being added constantly. By using Hugo, this can be easily done by content authors writing markdown files without always having to touch HTML or CSS code. It is available in German only for the time being, an English version is in the works.
+
+Huge thanks to everyone involved in making Hugo a success.
diff --git a/docs/content/en/showcase/small-multiples/bio.md b/docs/content/en/showcase/small-multiples/bio.md
new file mode 100644
index 000000000..3e0c1f14a
--- /dev/null
+++ b/docs/content/en/showcase/small-multiples/bio.md
@@ -0,0 +1,3 @@
+
+Small Multiples is a multidisciplinary team of data specialists, designers and developers that help people make the best use of their data, a journey that starts from strategy, to concepts, mock-ups, prototypes, design, and development.
+
diff --git a/docs/content/en/showcase/small-multiples/featured-small-multiples.png b/docs/content/en/showcase/small-multiples/featured-small-multiples.png
new file mode 100644
index 000000000..a278f464d
--- /dev/null
+++ b/docs/content/en/showcase/small-multiples/featured-small-multiples.png
Binary files differ
diff --git a/docs/content/en/showcase/small-multiples/index.md b/docs/content/en/showcase/small-multiples/index.md
new file mode 100644
index 000000000..e2b80ea9a
--- /dev/null
+++ b/docs/content/en/showcase/small-multiples/index.md
@@ -0,0 +1,47 @@
+---
+
+title: Small Multiples
+date: 2018-02-28
+description: "\"Hugo has excellent support and integration with Netlify and we were immediately blown away by how fast it was.\""
+siteURL: https://smallmultiples.com.au/
+byline: "[Small Multiples](https://smallmultiples.com.au/)"
+draft: true
+---
+
+Previously we had built and hosted our website with SquareSpace. Although SquareSpace was adequate for quickly showcasing our work, we felt it didn’t reflect our technical capabilities and the types of products we build for our clients.
+
+For many client applications, static front-end sites provide fast, scalable solutions that can easily connect with any back-end service, API or static data. We wanted to use the same processes and infrastructure that we use to host and deploy many of our products, so we felt that building a static site was the right solution for our website.
+
+Netlify is a hosting and deployment service that we use for many products. Our developers really like it because it has strong integration with GitHub and it works with the build tools we use such as Yarn and Webpack. It creates a production build every time we commit to our GitHub repository. This means we can share and preview every change internally or with clients.
+
+Application development has become increasingly complex and there is a strong motivation to simplify this process by avoiding complicated backends in favour of applications that consume static data and APIs (a JAMstack).
+
+Libraries like React make this easy, but we also wanted something that was server rendered. This led us to look at React based tools for static site generation such as GatsbyJS. We liked GatsbyJS, but in the end, we didn’t choose it due to the lack of availability of a simple CMS driven data source.
+
+For this, we considered Contentful. Contentful is a beautifully designed application. It’s basically a headless CMS, but it’s not specifically designed for websites and it becomes quite expensive at a commercial level. Their free tier is possibly a good option for personal sites especially with Gatsby. We also evaluated prose.io. This is a free service for editing markdown files in a GitHub repository. It works well, but it’s quite basic and didn’t provide the editing experience we were looking for.
+
+At the same time, we started exploring Hugo. Hugo is a static site generator similar to Jekyll, but it’s written in Go. It has excellent support and integration with Netlify and we were immediately blown away by how fast it was.
+
+We had been closely following the redevelopment of the Smashing Magazine website. We knew this was being powered by Hugo and Netlify and this showed us that Hugo could work for a large scale sites.
+
+The deciding factor, however, was the availability of CMS options that integrate well with Hugo. Netlify has an open source project called NetlifyCMS and there are also hosted services like Forestry.io. These both provide a CMS with an editing interface for markdown files and images. There is no database, instead, changes are committed directly back into the GitHub repository.
+
+In the end, we chose Hugo on Netlify, with Forestry as our CMS. The site is built and redeployed immediately with Netlify watching for changes to the GitHub repository.
+
+Was this the right choice? For us, yes, but we learnt a few things along the way.
+
+The Hugo templating language was very powerful, although also frustrating at times. The queries used to filter list pages are concise but difficult to read. Although it’s easy to get started, Hugo can have a significant learning curve as you try to do more complicated things.
+
+Hugo has particular expectations when it comes to CMS concepts like tags, categories, RSS, related content and menus. Some parts of our initial design did not match perfectly with how these work in Hugo. It took some time to figure out how to make things work the way we wanted without losing all the benefits of structured content.
+
+There were a few teething issues. We picked some relatively new technologies and as a result, we encountered some bugs. We were forced to find some workarounds and logged some issues with Hugo during the course of development. Most of these were fixed and features were added with releases happening frequently over the time we were working on the project. This can be exciting but also frustrating. We can see Hugo is developing in the right direction.
+
+NetlifyCMS was also very new when we first looked at it and this is partly why we opted for Forestry. Forestry is an excellent choice for an out-of-the-box CMS and it needs very little code configuration. It provided a better editing experience for non-technical users. I would still say this is true, but it also provides fewer options for customisation when compared with NetlifyCMS.
+
+Fortunately, the site is more portable now than it was, or would have been with a dynamic CMS like WordPress, or a fully hosted service like SquareSpace. It should be comparatively easy to swap the publishing functions from Forestry to NetlifyCMS or to change the templates. No part of the pipe-line is tightly coupled, the hosting, the CMS and the templates and the build process can all be updated independently, without changing anything else.
+
+We have complete control over the design and mark-up produced. This means we can implement a better responsive design and have a stronger focus on accessibility and performance.
+
+These technology choices gave us a good performance baseline. It was important to implement a site that took advantage of this. As a data visualisation agency, it can be difficult to optimise for performance with a small bundle size, while also aiming for high-quality visuals and working with large datasets. This meant we spent a lot of time optimising assets making sure there was little blocking the critical path for faster rendering and lazy-load images and videos.
+
+The end result is a high performance site. We think this could have been achieved with GatsbyJS, Hugo or any another static site generator. However, what was important was the decision to use static infrastructure for speed, security, flexibility and hopefully a better ongoing development experience. If you are looking at choosing a static site generator or wondering whether a static is the right choice for you, we hope this has helped.
diff --git a/docs/content/en/showcase/stackimpact/bio.md b/docs/content/en/showcase/stackimpact/bio.md
new file mode 100644
index 000000000..e6206dd03
--- /dev/null
+++ b/docs/content/en/showcase/stackimpact/bio.md
@@ -0,0 +1,4 @@
+
+**StackImpact** is a production-grade performance profiler for production and development environments.
+
+The [stackimpact.com](https://stackimpact.com/) website is built with awesome Hugo. Grunt is used for CSS minification and bundling. \ No newline at end of file
diff --git a/docs/content/en/showcase/stackimpact/featured.png b/docs/content/en/showcase/stackimpact/featured.png
new file mode 100644
index 000000000..49a3bc500
--- /dev/null
+++ b/docs/content/en/showcase/stackimpact/featured.png
Binary files differ
diff --git a/docs/content/en/showcase/stackimpact/index.md b/docs/content/en/showcase/stackimpact/index.md
new file mode 100644
index 000000000..fcfcb1157
--- /dev/null
+++ b/docs/content/en/showcase/stackimpact/index.md
@@ -0,0 +1,16 @@
+---
+title: StackImpact
+date: 2018-02-20
+description: "\"Hugo is a perfect choice for a product website.\""
+siteURL: https://stackimpact.com/
+---
+
+After gradually handing over the control of our website to WordPress plugins, we realized that we needed to act.
+
+Static web sites have natural advantages such as security, performance and content versioning (e.g. with Git). Static site generators such as Hugo made static websites cool again. Importantly, the best practices of software development (e.g. peer reviews, multi-stage deployments, rollbacks) can now be easily applied to websites.
+
+Besides the blog and documentation sections, our website needed custom sections with own templates. Hugo supported it beautifully.
+
+Hugo is written in Go language and uses Go templates. StackImpact is a performance profiler that has an advanced support for Go applications. Being aware of the advantages of Go in terms of speed and productivity, this was another strong reason for choosing Hugo.
+
+Thanks to all Hugo contributors for making such a beautiful and fast site generator!
diff --git a/docs/content/en/showcase/template/bio.md b/docs/content/en/showcase/template/bio.md
new file mode 100644
index 000000000..597163340
--- /dev/null
+++ b/docs/content/en/showcase/template/bio.md
@@ -0,0 +1,8 @@
+
+Add some **general info** about the site here.
+
+The site is built by:
+
+* [Person 1](https://example.com)
+* [Person 1](https://example.com)
+
diff --git a/docs/content/en/showcase/template/featured-template.png b/docs/content/en/showcase/template/featured-template.png
new file mode 100644
index 000000000..4f390132e
--- /dev/null
+++ b/docs/content/en/showcase/template/featured-template.png
Binary files differ
diff --git a/docs/content/en/showcase/template/index.md b/docs/content/en/showcase/template/index.md
new file mode 100644
index 000000000..06e4a6548
--- /dev/null
+++ b/docs/content/en/showcase/template/index.md
@@ -0,0 +1,22 @@
+---
+
+title: Hugo Showcase Template
+date: 2018-02-07
+description: "A short description of this page."
+siteURL: https://gohugo.io/
+siteSource: https://github.com/gohugoio/hugoDocs
+byline: "[bep](https://github.com/bep), Hugo Lead"
+
+---
+
+Have a **notable Hugo site[^1]**? We would love to feature it in this **Showcase Section**
+
+We would really appreciate if you could:
+
+1. Fork https://github.com/gohugoio/hugoDocs
+2. Run `hugo new showcase/your-site` (this requires >= Hugo 0.49). This will use the archetype bundle in the [docs repo](https://github.com/gohugoio/hugoDocs/tree/master/archetypes).
+3. Follow the instructions in the newly created page bundle.
+3. Create a new pull request in https://github.com/gohugoio/hugoDocs/pulls
+
+
+[^1]: We want this to show Hugo in its best light, so this is not for the average Hugo blog. In most cases the answer to "Is my site [notable](https://www.dictionary.com/browse/notable)?" will be obvious, but if in doubt, create an [issue](https://github.com/gohugoio/hugoDocs/issues) with a link and some words, and we can discuss it. But if you have a site with an interesting Hugo story or a company site where the company itself is notable, you are most welcome.
diff --git a/docs/content/en/showcase/tomango/bio.md b/docs/content/en/showcase/tomango/bio.md
new file mode 100644
index 000000000..052bd93cd
--- /dev/null
+++ b/docs/content/en/showcase/tomango/bio.md
@@ -0,0 +1,6 @@
+
+We help ambitious businesses grow by getting more of the customers they want.
+
+Our new site runs quickly, anywhere in the world, regardless of internet connectivity.
+
+The site was built by [Tomango](https://www.tomango.co.uk)
diff --git a/docs/content/en/showcase/tomango/featured.png b/docs/content/en/showcase/tomango/featured.png
new file mode 100644
index 000000000..d4b037e0f
--- /dev/null
+++ b/docs/content/en/showcase/tomango/featured.png
Binary files differ
diff --git a/docs/content/en/showcase/tomango/index.md b/docs/content/en/showcase/tomango/index.md
new file mode 100644
index 000000000..5252c02a8
--- /dev/null
+++ b/docs/content/en/showcase/tomango/index.md
@@ -0,0 +1,29 @@
+---
+
+title: Tomango
+
+date: 2018-05-04
+
+description: "Showcase: \"Tomango site relaunch: Building our JAMstack site\""
+
+siteURL: https://www.tomango.co.uk
+
+siteSource: https://github.com/trys/tomango-2018
+
+byline: "[Trys Mudford](http://www.trysmudford.com), Lead Developer, Tomango"
+
+---
+
+Hugo is our static site generator (SSG) of choice. It's **really quick**. After using it on a number of [client projects](/showcase/hartwell-insurance/), it became clear that our new site _had_ to be built with Hugo.
+
+The big benefit of an SSG is how it moves all the heavy lifting to the build time.
+
+For example in WordPress, all the category pages are created at runtime, generating a lot of database queries. In Hugo, the paginated category pages are created at build time - so all the computational complexity is done once, and doesn't impact the user at all.
+
+Similarly, instead of running a live, or even a heavily cached Instagram feed that checked for new photos on page load, we used IFTTT to flip the feature to work performantly. I've [written about it](https://www.trysmudford.com/blog/making-the-static-dynamic-instagram-importer/) in detail on my blog but in essence: IFTTT sends a webhook to a Netlify Cloud Function every time a photo is uploaded. The function scrapes the photo and commits it to our GitHub repo which triggers a Hugo build on Netlify, deploying the site immediately!
+
+Shortcodes allow copy editors to continue using WordPress-esque features, Markdown keeps our developers happy, and our users don't have any of the database overheads. It's win-win!
+
+---
+
+This is an extract from our [technical launch post](https://www.tomango.co.uk/thinks/tomango-progressive-web-app/).
diff --git a/docs/content/en/templates/404.md b/docs/content/en/templates/404.md
new file mode 100644
index 000000000..1b82e9ebf
--- /dev/null
+++ b/docs/content/en/templates/404.md
@@ -0,0 +1,64 @@
+---
+title: Custom 404 Page
+linktitle: 404 Page
+description: If you know how to create a single page template, you have unlimited options for creating a custom 404.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-03-31
+categories: [templates]
+keywords: [404, page not found]
+menu:
+ docs:
+ parent: "templates"
+ weight: 120
+weight: 120 #rem
+draft: false
+aliases: []
+toc: false
+---
+
+When using Hugo with [GitHub Pages](https://pages.github.com/), you can provide your own template for a [custom 404 error page](https://help.github.com/articles/custom-404-pages/) by creating a 404.html template file in your `/layouts` folder. When Hugo generates your site, the `404.html` file will be placed in the root.
+
+404 pages will have all the regular [page variables][pagevars] available to use in the templates.
+
+In addition to the standard page variables, the 404 page has access to all site content accessible from `.Pages`.
+
+```
+▾ layouts/
+ 404.html
+```
+
+## 404.html
+
+This is a basic example of a 404.html template:
+
+{{< code file="layouts/404.html" download="404.html" >}}
+{{ define "main"}}
+ <main id="main">
+ <div>
+ <h1 id="title"><a href="{{ "/" | relURL }}">Go Home</a></h1>
+ </div>
+ </main>
+{{ end }}
+{{< /code >}}
+
+## Automatic Loading
+
+Your 404.html file can be set to load automatically when a visitor enters a mistaken URL path, dependent upon the web serving environment you are using. For example:
+
+* [GitHub Pages](/hosting-and-deployment/hosting-on-github/) and [GitLab Pages](/hosting-and-deployment/hosting-on-gitlab/). The 404 page is automatic.
+* Apache. You can specify `ErrorDocument 404 /404.html` in an `.htaccess` file in the root of your site.
+* Nginx. You might specify `error_page 404 /404.html;` in your `nginx.conf` file. [Details here](https://nginx.org/en/docs/http/ngx_http_core_module.html#error_page).
+* Amazon AWS S3. When setting a bucket up for static web serving, you can specify the error file from within the S3 GUI.
+* Amazon CloudFront. You can specify the page in the Error Pages section in the CloudFront Console. [Details here](https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/custom-error-pages.html)
+* Caddy Server. Using `errors { 404 /404.html }`. [Details here](https://caddyserver.com/docs/errors)
+* Netlify. Add `/* /404.html 404` to `content/_redirects`. [Details Here](https://www.netlify.com/docs/redirects/#custom-404)
+* Azure Static website. You can specify the `Error document path` in the Static website configuration page of the Azure portal. [More details are available in the Static website documentation](https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-static-website).
+
+{{% note %}}
+`hugo server` will not automatically load your custom `404.html` file, but you
+can test the appearance of your custom "not found" page by navigating your
+browser to `/404.html`.
+{{% /note %}}
+
+[pagevars]: /variables/page/
diff --git a/docs/content/en/templates/_index.md b/docs/content/en/templates/_index.md
new file mode 100644
index 000000000..18ae40eac
--- /dev/null
+++ b/docs/content/en/templates/_index.md
@@ -0,0 +1,19 @@
+---
+title: Templates
+linktitle: Templates Overview
+description: Go templating, template types and lookup order, shortcodes, and data.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+menu:
+ docs:
+ parent: "templates"
+ weight: 01
+weight: 01 #rem
+categories: [templates]
+keywords: []
+draft: false
+aliases: [/templates/overview/,/templates/content]
+toc: false
+notesforauthors:
+---
diff --git a/docs/content/en/templates/alternatives.md b/docs/content/en/templates/alternatives.md
new file mode 100644
index 000000000..c5fde5b51
--- /dev/null
+++ b/docs/content/en/templates/alternatives.md
@@ -0,0 +1,21 @@
+---
+title: DEPRECATED - Alternative Templating Languages
+linktitle: Alternative Templating
+description: DEPRECATED - Support for Ace & Amber templating has been removed in version 0.62
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-20
+categories: [templates]
+keywords: [amber,ace,templating languages]
+menu:
+ docs:
+ parent: "templates"
+ weight: 170
+weight: 170
+sections_weight: 170
+draft: false
+aliases: [/templates/ace/,/templates/amber/]
+toc: true
+---
+
+Support for Amber and Ace templates has been removed since Hugo 0.62 per [issue #6609](https://github.com/gohugoio/hugo/issues/6609).
diff --git a/docs/content/en/templates/base.md b/docs/content/en/templates/base.md
new file mode 100644
index 000000000..f2648bd52
--- /dev/null
+++ b/docs/content/en/templates/base.md
@@ -0,0 +1,103 @@
+---
+title: Base Templates and Blocks
+linktitle:
+description: The base and block constructs allow you to define the outer shell of your master templates (i.e., the chrome of the page).
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [templates,fundamentals]
+keywords: [blocks,base]
+menu:
+ docs:
+ parent: "templates"
+ weight: 20
+weight: 20
+sections_weight: 20
+draft: false
+aliases: [/templates/blocks/,/templates/base-templates-and-blocks/]
+toc: true
+---
+
+The `block` keyword allows you to define the outer shell of your pages' one or more master template(s) and then fill in or override portions as necessary.
+
+{{< youtube QVOMCYitLEc >}}
+
+## Base Template Lookup Order
+
+{{< new-in "0.63.0" >}} Since Hugo v0.63, the base template lookup order closely follows that of the template it applies to (e.g. `_default/list.html`).
+
+See [Template Lookup Order](/templates/lookup-order/) for details and examples.
+
+## Define the Base Template
+
+The following defines a simple base template at `_default/baseof.html`. As a default template, it is the shell from which all your pages will be rendered unless you specify another `*baseof.html` closer to the beginning of the lookup order.
+
+{{< code file="layouts/_default/baseof.html" download="baseof.html" >}}
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta charset="utf-8">
+ <title>{{ block "title" . }}
+ <!-- Blocks may include default content. -->
+ {{ .Site.Title }}
+ {{ end }}</title>
+ </head>
+ <body>
+ <!-- Code that all your templates share, like a header -->
+ {{ block "main" . }}
+ <!-- The part of the page that begins to differ between templates -->
+ {{ end }}
+ {{ block "footer" . }}
+ <!-- More shared code, perhaps a footer but that can be overridden if need be in -->
+ {{ end }}
+ </body>
+</html>
+{{< /code >}}
+
+## Override the Base Template
+
+From the above base template, you can define a [default list template][hugolists]. The default list template will inherit all of the code defined above and can then implement its own `"main"` block from:
+
+{{< code file="layouts/_default/list.html" download="list.html" >}}
+{{ define "main" }}
+ <h1>Posts</h1>
+ {{ range .Pages }}
+ <article>
+ <h2>{{ .Title }}</h2>
+ {{ .Content }}
+ </article>
+ {{ end }}
+{{ end }}
+{{< /code >}}
+
+This replaces the contents of our (basically empty) "main" block with something useful for the list template. In this case, we didn't define a `"title"` block, so the contents from our base template remain unchanged in lists.
+
+{{% warning %}}
+Code that you put outside the block definitions *can* break your layout. This even includes HTML comments. For example:
+
+```
+<!-- Seemingly harmless HTML comment..that will break your layout at build -->
+{{ define "main" }}
+...your code here
+{{ end }}
+```
+[See this thread from the Hugo discussion forums.](https://discourse.gohugo.io/t/baseof-html-block-templates-and-list-types-results-in-empty-pages/5612/6)
+{{% /warning %}}
+
+The following shows how you can override both the `"main"` and `"title"` block areas from the base template with code unique to your [default single page template][singletemplate]:
+
+{{< code file="layouts/_default/single.html" download="single.html" >}}
+{{ define "title" }}
+ <!-- This will override the default value set in baseof.html; i.e., "{{.Site.Title}}" in the original example-->
+ {{ .Title }} &ndash; {{ .Site.Title }}
+{{ end }}
+{{ define "main" }}
+ <h1>{{ .Title }}</h1>
+ {{ .Content }}
+{{ end }}
+{{< /code >}}
+
+[hugolists]: /templates/lists
+[lookup]: /templates/lookup-order/
+[rendering the section]: /templates/section-templates/
+[singletemplate]: /templates/single-page-templates/
diff --git a/docs/content/en/templates/data-templates.md b/docs/content/en/templates/data-templates.md
new file mode 100644
index 000000000..441cc2f10
--- /dev/null
+++ b/docs/content/en/templates/data-templates.md
@@ -0,0 +1,251 @@
+---
+title: Data Templates
+linktitle:
+description: In addition to Hugo's built-in variables, you can specify your own custom data in templates or shortcodes that pull from both local and dynamic sources.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-03-12
+categories: [templates]
+keywords: [data,dynamic,csv,json,toml,yaml,xml]
+menu:
+ docs:
+ parent: "templates"
+ weight: 80
+weight: 80
+sections_weight: 80
+draft: false
+aliases: [/extras/datafiles/,/extras/datadrivencontent/,/doc/datafiles/]
+toc: true
+---
+
+<!-- begin data files -->
+
+Hugo supports loading data from YAML, JSON, XML, and TOML files located in the `data` directory in the root of your Hugo project.
+
+{{< youtube FyPgSuwIMWQ >}}
+
+## The Data Folder
+
+The `data` folder is where you can store additional data for Hugo to use when generating your site. Data files aren't used to generate standalone pages; rather, they're meant to be supplemental to content files. This feature can extend the content in case your front matter fields grow out of control. Or perhaps you want to show a larger dataset in a template (see example below). In both cases, it's a good idea to outsource the data in their own files.
+
+These files must be YAML, JSON, XML, or TOML files (using the `.yml`, `.yaml`, `.json`, `.xml`, or `.toml` extension). The data will be accessible as a `map` in the `.Site.Data` variable.
+
+## Data Files in Themes
+
+Data Files can also be used in [Hugo themes][themes] but note that theme data files follow the same logic as other template files in the [Hugo lookup order][lookup] (i.e., given two files with the same name and relative path, the file in the root project `data` directory will override the file in the `themes/<THEME>/data` directory).
+
+Therefore, theme authors should take care to not include data files that could be easily overwritten by a user who decides to [customize a theme][customize]. For theme-specific data items that shouldn't be overridden, it can be wise to prefix the folder structure with a namespace; e.g. `mytheme/data/<THEME>/somekey/...`. To check if any such duplicate exists, run hugo with the `-v` flag.
+
+The keys in the map created with data templates from data files will be a dot-chained set of `path`, `filename`, and `key` in file (if applicable).
+
+This is best explained with an example:
+
+## Example: Jaco Pastorius' Solo Discography
+
+[Jaco Pastorius](https://en.wikipedia.org/wiki/Jaco_Pastorius_discography) was a great bass player, but his solo discography is short enough to use as an example. [John Patitucci](https://en.wikipedia.org/wiki/John_Patitucci) is another bass giant.
+
+The example below is a bit contrived, but it illustrates the flexibility of data Files. This example uses TOML as its file format with the two following data files:
+
+* `data/jazz/bass/jacopastorius.toml`
+* `data/jazz/bass/johnpatitucci.toml`
+
+`jacopastorius.toml` contains the content below. `johnpatitucci.toml` contains a similar list:
+
+{{< code-toggle file="jacopastorius" >}}
+discography = [
+"1974 – Modern American Music … Period! The Criteria Sessions",
+"1974 – Jaco",
+"1976 - Jaco Pastorius",
+"1981 - Word of Mouth",
+"1981 - The Birthday Concert (released in 1995)",
+"1982 - Twins I & II (released in 1999)",
+"1983 - Invitation",
+"1986 - Broadway Blues (released in 1998)",
+"1986 - Honestly Solo Live (released in 1990)",
+"1986 - Live In Italy (released in 1991)",
+"1986 - Heavy'n Jazz (released in 1992)",
+"1991 - Live In New York City, Volumes 1-7.",
+"1999 - Rare Collection (compilation)",
+"2003 - Punk Jazz: The Jaco Pastorius Anthology (compilation)",
+"2007 - The Essential Jaco Pastorius (compilation)"
+]
+{{< /code-toggle >}}
+
+The list of bass players can be accessed via `.Site.Data.jazz.bass`, a single bass player by adding the filename without the suffix, e.g. `.Site.Data.jazz.bass.jacopastorius`.
+
+You can now render the list of recordings for all the bass players in a template:
+
+```
+{{ range $.Site.Data.jazz.bass }}
+ {{ partial "artist.html" . }}
+{{ end }}
+```
+
+And then in the `partials/artist.html`:
+
+```
+<ul>
+{{ range .discography }}
+ <li>{{ . }}</li>
+{{ end }}
+</ul>
+```
+
+Discover a new favorite bass player? Just add another `.toml` file in the same directory.
+
+## Example: Accessing Named Values in a Data File
+
+Assume you have the following data structure in your `User0123.[yml|toml|xml|json]` data file located directly in `data/`:
+
+{{< code-toggle file="User0123" >}}
+Name: User0123
+"Short Description": "He is a **jolly good** fellow."
+Achievements:
+ - "Can create a Key, Value list from Data File"
+ - "Learns Hugo"
+ - "Reads documentation"
+{{</ code-toggle >}}
+
+You can use the following code to render the `Short Description` in your layout:
+
+```
+<div>Short Description of {{.Site.Data.User0123.Name}}: <p>{{ index .Site.Data.User0123 "Short Description" | markdownify }}</p></div>
+```
+
+Note the use of the [`markdownify` template function][markdownify]. This will send the description through the Blackfriday Markdown rendering engine.
+
+
+## Get Remote Data
+
+Use `getJSON` or `getCSV` to get remote data:
+
+```
+{{ $dataJ := getJSON "url" }}
+{{ $dataC := getCSV "separator" "url" }}
+```
+
+If you use a prefix or postfix for the URL, the functions accept [variadic arguments][variadic]:
+
+```
+{{ $dataJ := getJSON "url prefix" "arg1" "arg2" "arg n" }}
+{{ $dataC := getCSV "separator" "url prefix" "arg1" "arg2" "arg n" }}
+```
+
+The separator for `getCSV` must be put in the first position and can only be one character long.
+
+All passed arguments will be joined to the final URL:
+
+```
+{{ $urlPre := "https://api.github.com" }}
+{{ $gistJ := getJSON $urlPre "/users/GITHUB_USERNAME/gists" }}
+```
+
+This will resolve internally to the following:
+
+```
+{{ $gistJ := getJSON "https://api.github.com/users/GITHUB_USERNAME/gists" }}
+```
+
+### Add HTTP headers
+
+{{< new-in "0.84.0" >}} Both `getJSON` and `getCSV` takes an optional map as the last argument, e.g.:
+
+```
+{{ $data := getJSON "https://example.org/api" (dict "Authorization" "Bearer abcd") }}
+```
+
+If you need multiple values for the same header key, use a slice:
+
+```
+{{ $data := getJSON "https://example.org/api" (dict "X-List" (slice "a" "b" "c")) }}
+```
+
+### Example for CSV files
+
+For `getCSV`, the one-character-long separator must be placed in the first position followed by the URL. The following is an example of creating an HTML table in a [partial template][partials] from a published CSV:
+
+{{< code file="layouts/partials/get-csv.html" >}}
+ <table>
+ <thead>
+ <tr>
+ <th>Name</th>
+ <th>Position</th>
+ <th>Salary</th>
+ </tr>
+ </thead>
+ <tbody>
+ {{ $url := "https://example.com/finance/employee-salaries.csv" }}
+ {{ $sep := "," }}
+ {{ range $i, $r := getCSV $sep $url }}
+ <tr>
+ <td>{{ index $r 0 }}</td>
+ <td>{{ index $r 1 }}</td>
+ <td>{{ index $r 2 }}</td>
+ </tr>
+ {{ end }}
+ </tbody>
+ </table>
+{{< /code >}}
+
+The expression `{{index $r number}}` must be used to output the nth-column from the current row.
+
+### Cache URLs
+
+Each downloaded URL will be cached in the default folder `$TMPDIR/hugo_cache/`. The variable `$TMPDIR` will be resolved to your system-dependent temporary directory.
+
+With the command-line flag `--cacheDir`, you can specify any folder on your system as a caching directory.
+
+You can also set `cacheDir` in the [main configuration file][config].
+
+If you don't like caching at all, you can fully disable caching with the command line flag `--ignoreCache`.
+
+### Authentication When Using REST URLs
+
+Currently, you can only use those authentication methods that can be put into an URL. [OAuth][] and other authentication methods are not implemented.
+
+## Load Local files
+
+To load local files with `getJSON` and `getCSV`, the source files must reside within Hugo's working directory. The file extension does not matter, but the content does.
+
+It applies the same output logic as above in [Call the Functions with a URL](#call-the-functions-with-a-url).
+
+{{% note %}}
+The local CSV files to be loaded using `getCSV` must be located **outside** of the `data` directory.
+{{% /note %}}
+
+## LiveReload with Data Files
+
+There is no chance to trigger a [LiveReload][] when the content of a URL changes. However, when a *local* file changes (i.e., `data/*` and `themes/<THEME>/data/*`), a LiveReload will be triggered. Symlinks are not supported. Note too that because downloading of data takes a while, Hugo stops processing your Markdown files until the data download has completed.
+
+{{% warning "URL Data and LiveReload" %}}
+If you change any local file and the LiveReload is triggered, Hugo will read the data-driven (URL) content from the cache. If you have disabled the cache (i.e., by running the server with `hugo server --ignoreCache`), Hugo will re-download the content every time LiveReload triggers. This can create *huge* traffic. You may reach API limits quickly.
+{{% /warning %}}
+
+## Examples of Data-driven Content
+
+- Photo gallery JSON powered: [https://github.com/pcdummy/hugo-lightslider-example](https://github.com/pcdummy/hugo-lightslider-example)
+- GitHub Starred Repositories [in a post](https://github.com/SchumacherFM/blog-cs/blob/master/content%2Fposts%2Fgithub-starred.md) using data-driven content in a [custom short code](https://github.com/SchumacherFM/blog-cs/blob/master/layouts%2Fshortcodes%2FghStarred.html).
+
+## Specs for Data Formats
+
+* [TOML Spec][toml]
+* [YAML Spec][yaml]
+* [JSON Spec][json]
+* [CSV Spec][csv]
+* [XML Spec][xml]
+
+[config]: /getting-started/configuration/
+[csv]: https://tools.ietf.org/html/rfc4180
+[customize]: /themes/customizing/
+[json]: https://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf "Specification for JSON, JavaScript Object Notation"
+[LiveReload]: /getting-started/usage/#livereload
+[lookup]: /templates/lookup-order/
+[markdownify]: /functions/markdownify/
+[OAuth]: https://en.wikipedia.org/wiki/OAuth
+[partials]: /templates/partials/
+[themes]: /themes/
+[toml]: https://github.com/toml-lang/toml
+[variadic]: https://en.wikipedia.org/wiki/Variadic_function
+[vars]: /variables/
+[yaml]: https://yaml.org/spec/
+[xml]: https://www.w3.org/XML/
diff --git a/docs/content/en/templates/files.md b/docs/content/en/templates/files.md
new file mode 100644
index 000000000..a448d7908
--- /dev/null
+++ b/docs/content/en/templates/files.md
@@ -0,0 +1,66 @@
+---
+title: Local File Templates
+linktitle: Local File Templates
+description: Hugo's `readDir` and `readFile` functions make it easy to traverse your project's directory structure and write file contents to your templates.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [templates]
+keywords: [files,directories]
+menu:
+ docs:
+ parent: "templates"
+ weight: 110
+weight: 110
+sections_weight: 110
+draft: false
+aliases: [/extras/localfiles/,/templates/local-files/]
+toc: true
+---
+
+## Traverse Local Files
+
+With Hugo's [`readDir`][readDir] and [`readFile`][readFile] template functions, you can traverse your website's files on your server.
+
+## Use `readDir`
+
+The [`readDir` function][readDir] returns an array of [`os.FileInfo`][osfileinfo]. It takes the file's `path` as a single string argument. This path can be to any directory of your website (i.e., as found on your server's file system).
+
+Whether the path is absolute or relative does not matter because---at least for `readDir`---the root of your website (typically `./public/`) in effect becomes both:
+
+1. The file system root
+2. The current working directory
+
+## Use `readFile`
+
+The [`readfile` function][readFile] reads a file from disk and converts it into a string to be manipulated by other Hugo functions or added as-is. `readFile` takes the file, including path, as an argument passed to the function.
+
+To use the `readFile` function in your templates, make sure the path is relative to your *Hugo project's root directory*:
+
+```
+{{ readFile "/content/templates/local-file-templates" }}
+```
+
+### `readFile` Example: Add a Project File to Content
+
+As `readFile` is a function, it is only available to you in your templates and not your content. However, we can create a simple [shortcode template][sct] that calls `readFile`, passes the first argument through the function, and then allows an optional second argument to send the file through the Blackfriday markdown processor. The pattern for adding this shortcode to your content will be as follows:
+
+```
+{{</* readfile file="/path/to/local/file.txt" markdown="true" */>}}
+```
+
+{{% warning %}}
+If you are going to create [custom shortcodes](/templates/shortcode-templates/) with `readFile` for a theme, note that usage of the shortcode will refer to the project root and *not* your `themes` directory.
+{{% /warning %}}
+
+
+
+[called directly in the Hugo docs]: https://github.com/gohugoio/hugoDocs/blob/master/content/en/templates/files.md
+[dirindex]: https://github.com/gohugoio/hugo/blob/master/docs/layouts/shortcodes/directoryindex.html
+[osfileinfo]: https://golang.org/pkg/os/#FileInfo
+[readDir]: /functions/readdir/
+[readFile]: /functions/readfile/
+[sc]: /content-management/shortcodes/
+[sct]: /templates/shortcode-templates/
+[readfilesource]: https://github.com/gohugoio/hugoDocs/blob/master/layouts/shortcodes/readfile.html
+[testfile]: https://github.com/gohugoio/hugoDocs/blob/master/content/en/readfiles/testing.txt
diff --git a/docs/content/en/templates/homepage.md b/docs/content/en/templates/homepage.md
new file mode 100644
index 000000000..b6ce87f8e
--- /dev/null
+++ b/docs/content/en/templates/homepage.md
@@ -0,0 +1,71 @@
+---
+title: Homepage Template
+linktitle: Homepage Template
+description: The homepage of a website is often formatted differently than the other pages. For this reason, Hugo makes it easy for you to define your new site's homepage as a unique template.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [templates]
+keywords: [homepage]
+menu:
+ docs:
+ parent: "templates"
+ weight: 30
+weight: 30
+sections_weight: 30
+draft: false
+aliases: [/layout/homepage/,/templates/homepage-template/]
+toc: true
+---
+
+Homepage is a `Page` and therefore has all the [page variables][pagevars] and [site variables][sitevars] available for use.
+
+{{% note "The Only Required Template" %}}
+The homepage template is the *only* required template for building a site and therefore useful when bootstrapping a new site and template. It is also the only required template if you are developing a single-page website.
+{{% /note %}}
+
+{{< youtube ut1xtRZ1QOA >}}
+
+## Homepage Template Lookup Order
+
+See [Template Lookup](/templates/lookup-order/).
+
+## Add Content and Front Matter to the Homepage
+
+The homepage, similar to other [list pages in Hugo][lists], accepts content and front matter from an `_index.md` file. This file should live at the root of your `content` folder (i.e., `content/_index.md`). You can then add body copy and metadata to your homepage the way you would any other content file.
+
+See the homepage template below or [Content Organization][contentorg] for more information on the role of `_index.md` in adding content and front matter to list pages.
+
+## Example Homepage Template
+
+The following is an example of a homepage template that uses [partial][partials], [base][] templates, and a content file at `content/_index.md` to populate the `{{.Title}}` and `{{.Content}}` [page variables][pagevars].
+
+{{< code file="layouts/index.html" download="index.html" >}}
+{{ define "main" }}
+ <main aria-role="main">
+ <header class="homepage-header">
+ <h1>{{.Title}}</h1>
+ {{ with .Params.subtitle }}
+ <span class="subtitle">{{.}}</span>
+ {{ end }}
+ </header>
+ <div class="homepage-content">
+ <!-- Note that the content for index.html, as a sort of list page, will pull from content/_index.md -->
+ {{.Content}}
+ </div>
+ <div>
+ {{ range first 10 .Site.RegularPages }}
+ {{ .Render "summary"}}
+ {{ end }}
+ </div>
+ </main>
+{{ end }}
+{{< /code >}}
+
+[base]: /templates/base/
+[contentorg]: /content-management/organization/
+[lists]: /templates/lists/
+[lookup]: /templates/lookup-order/
+[pagevars]: /variables/page/
+[partials]: /templates/partials/
+[sitevars]: /variables/site/
diff --git a/docs/content/en/templates/internal.md b/docs/content/en/templates/internal.md
new file mode 100644
index 000000000..ace21f548
--- /dev/null
+++ b/docs/content/en/templates/internal.md
@@ -0,0 +1,220 @@
+---
+title: Internal Templates
+linktitle: Internal Templates
+description: Hugo ships with a group of boilerplate templates that cover the most common use cases for static websites.
+date: 2017-03-06
+publishdate: 2017-03-06
+lastmod: 2017-03-06
+categories: [templates]
+keywords: [internal, analytics,]
+menu:
+ docs:
+ parent: "templates"
+ weight: 168
+weight: 168
+sections_weight: 168
+draft: false
+aliases: []
+toc: true
+wip: true
+---
+<!-- reference: https://discourse.gohugo.io/t/lookup-order-for-partials/5705/6
+code: https://github.com/gohugoio/hugo/blob/e445c35d6a0c7f5fc2f90f31226cd1d46e048bbc/tpl/template_embedded.go#L147 -->
+
+{{% warning %}}
+While the following internal templates are called similar to partials, they do *not* observe the partial template lookup order.
+{{% /warning %}}
+
+## Google Analytics
+
+Hugo ships with internal templates for Google Analytics tracking, including both synchronous and asynchronous tracking codes. As well as support for both v3 and v4 of Google Analytics.
+
+### Configure Google Analytics
+
+Provide your tracking id in your configuration file:
+
+**Google Analytics v3 (analytics.js)**
+{{< code-toggle file="config" >}}
+googleAnalytics = "UA-PROPERTY_ID"
+{{</ code-toggle >}}
+
+**Google Analytics v4 (gtag.js)**
+{{< code-toggle file="config" >}}
+googleAnalytics = "G-MEASUREMENT_ID"
+{{</ code-toggle >}}
+
+### Use the Google Analytics Template
+
+You can then include the Google Analytics internal template:
+
+```
+{{ template "_internal/google_analytics.html" . }}
+```
+
+
+```
+{{ template "_internal/google_analytics_async.html" . }}
+```
+
+When using Google Analytics v4 use `_internal/google_analytics.html`.
+
+A `.Site.GoogleAnalytics` variable is also exposed from the config.
+
+## Disqus
+
+Hugo also ships with an internal template for [Disqus comments][disqus], a popular commenting system for both static and dynamic websites. In order to effectively use Disqus, you will need to secure a Disqus "shortname" by [signing up for the free service][disqussignup].
+
+### Configure Disqus
+
+To use Hugo's Disqus template, you first need to set a single configuration value:
+
+{{< code-toggle file="config" >}}
+disqusShortname = "your-disqus-shortname"
+{{</ code-toggle >}}
+
+You also have the option to set the following in the front matter for a given piece of content:
+
+* `disqus_identifier`
+* `disqus_title`
+* `disqus_url`
+
+### Use the Disqus Template
+
+To add Disqus, include the following line in templates where you want your comments to appear:
+
+```
+{{ template "_internal/disqus.html" . }}
+```
+
+A `.Site.DisqusShortname` variable is also exposed from the config.
+
+### Conditional Loading of Disqus Comments
+
+Users have noticed that enabling Disqus comments when running the Hugo web server on `localhost` (i.e. via `hugo server`) causes the creation of unwanted discussions on the associated Disqus account.
+
+You can create the following `layouts/partials/disqus.html`:
+
+{{< code file="layouts/partials/disqus.html" download="disqus.html" >}}
+<div id="disqus_thread"></div>
+<script type="text/javascript">
+
+(function() {
+ // Don't ever inject Disqus on localhost--it creates unwanted
+ // discussions from 'localhost:1313' on your Disqus account...
+ if (window.location.hostname == "localhost")
+ return;
+
+ var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
+ var disqus_shortname = '{{ .Site.DisqusShortname }}';
+ dsq.src = '//' + disqus_shortname + '.disqus.com/embed.js';
+ (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
+})();
+</script>
+<noscript>Please enable JavaScript to view the <a href="https://disqus.com/?ref_noscript">comments powered by Disqus.</a></noscript>
+<a href="https://disqus.com/" class="dsq-brlink">comments powered by <span class="logo-disqus">Disqus</span></a>
+{{< /code >}}
+
+The `if` statement skips the initialization of the Disqus comment injection when you are running on `localhost`.
+
+You can then render your custom Disqus partial template as follows:
+
+```
+{{ partial "disqus.html" . }}
+```
+
+## Open Graph
+An internal template for the [Open Graph protocol](https://ogp.me/), metadata that enables a page to become a rich object in a social graph.
+This format is used for Facebook and some other sites.
+
+### Configure Open Graph
+
+Hugo's Open Graph template is configured using a mix of configuration variables and [front-matter](/content-management/front-matter/) on individual pages.
+
+{{< code-toggle file="config" >}}
+[params]
+ title = "My cool site"
+ images = ["site-feature-image.jpg"]
+ description = "Text about my cool site"
+[taxonomies]
+ series = "series"
+{{</ code-toggle >}}
+
+{{< code-toggle file="content/blog/my-post" >}}
+title = "Post title"
+description = "Text about this post"
+date = "2006-01-02"
+images = ["post-cover.png"]
+audio = []
+videos = []
+series = []
+tags = []
+{{</ code-toggle >}}
+
+Hugo uses the page title and description for the title and description metadata.
+The first 6 URLs from the `images` array are used for image metadata.
+If [page bundles](/content-management/page-bundles/) are used and the `images` array is empty or undefined, images with filenames matching `*feature*` or `*cover*,*thumbnail*` are used for image metadata.
+
+Various optional metadata can also be set:
+
+- Date, published date, and last modified data are used to set the published time metadata if specified.
+- `audio` and `videos` are URL arrays like `images` for the audio and video metadata tags, respectively.
+- The first 6 `tags` on the page are used for the tags metadata.
+- The `series` taxonomy is used to specify related "see also" pages by placing them in the same series.
+
+If using YouTube this will produce a og:video tag like `<meta property="og:video" content="url">`. Use the `https://youtu.be/<id>` format with YouTube videos (example: `https://youtu.be/qtIqKaDlqXo`).
+
+### Use the Open Graph Template
+
+To add Open Graph metadata, include the following line between the `<head>` tags in your templates:
+
+```
+{{ template "_internal/opengraph.html" . }}
+```
+
+## Twitter Cards
+
+An internal template for [Twitter Cards](https://developer.twitter.com/en/docs/tweets/optimize-with-cards/overview/abouts-cards),
+metadata used to attach rich media to Tweets linking to your site.
+
+### Configure Twitter Cards
+
+Hugo's Twitter Card template is configured using a mix of configuration variables and [front-matter](/content-management/front-matter/) on individual pages.
+
+{{< code-toggle file="config" >}}
+[params]
+ images = ["site-feature-image.jpg"]
+ description = "Text about my cool site"
+{{</ code-toggle >}}
+
+{{< code-toggle file="content/blog/my-post" >}}
+title = "Post title"
+description = "Text about this post"
+images = ["post-cover.png"]
+{{</ code-toggle >}}
+
+If `images` aren't specified in the page front-matter, then hugo searches for [image page resources](/content-management/image-processing/) with `feature`, `cover`, or `thumbnail` in their name.
+If no image resources with those names are found, the images defined in the [site config](/getting-started/configuration/) are used instead.
+If no images are found at all, then an image-less Twitter `summary` card is used instead of `summary_large_image`.
+
+Hugo uses the page title and description for the card's title and description fields. The page summary is used if no description is given.
+
+### Use the Twitter Cards Template
+
+To add Twitter card metadata, include the following line between the `<head>` tags in your templates:
+
+```
+{{ template "_internal/twitter_cards.html" . }}
+```
+
+## The Internal Templates
+
+* `_internal/disqus.html`
+* `_internal/google_analytics.html`
+* `_internal/google_analytics_async.html`
+* `_internal/opengraph.html`
+* `_internal/pagination.html`
+* `_internal/schema.html`
+* `_internal/twitter_cards.html`
+
+[disqus]: https://disqus.com
+[disqussignup]: https://disqus.com/profile/signup/
diff --git a/docs/content/en/templates/introduction.md b/docs/content/en/templates/introduction.md
new file mode 100644
index 000000000..c02f38fa8
--- /dev/null
+++ b/docs/content/en/templates/introduction.md
@@ -0,0 +1,698 @@
+---
+title: Introduction to Hugo Templating
+linktitle: Introduction
+description: Hugo uses Go's `html/template` and `text/template` libraries as the basis for the templating.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-25
+categories: [templates,fundamentals]
+keywords: [go]
+menu:
+ docs:
+ parent: "templates"
+ weight: 10
+weight: 10
+sections_weight: 10
+draft: false
+aliases: [/layouts/introduction/,/layout/introduction/, /templates/go-templates/]
+toc: true
+---
+
+{{% note %}}
+The following is only a primer on Go Templates. For an in-depth look into Go Templates, check the official [Go docs](https://golang.org/pkg/text/template/).
+{{% /note %}}
+
+Go Templates provide an extremely simple template language that adheres to the belief that only the most basic of logic belongs in the template or view layer.
+
+## Basic Syntax
+
+Go Templates are HTML files with the addition of [variables][variables] and [functions][functions]. Go Template variables and functions are accessible within `{{ }}`.
+
+### Access a Predefined Variable
+
+A _predefined variable_ could be a variable already existing in the
+current scope (like the `.Title` example in the [Variables]({{< relref
+"#variables" >}}) section below) or a custom variable (like the
+`$address` example in that same section).
+
+
+```go-html-template
+{{ .Title }}
+{{ $address }}
+```
+
+Parameters for functions are separated using spaces. The general syntax is:
+
+```
+{{ FUNCTION ARG1 ARG2 .. }}
+```
+
+The following example calls the `add` function with inputs of `1` and `2`:
+
+```go-html-template
+{{ add 1 2 }}
+```
+
+#### Methods and Fields are Accessed via dot Notation
+
+Accessing the Page Parameter `bar` defined in a piece of content's [front matter][].
+
+```go-html-template
+{{ .Params.bar }}
+```
+
+#### Parentheses Can be Used to Group Items Together
+
+```go-html-template
+{{ if or (isset .Params "alt") (isset .Params "caption") }} Caption {{ end }}
+```
+
+#### A Single Statement Can be Split over Multiple Lines
+
+```go-html-template
+{{ if or
+ (isset .Params "alt")
+ (isset .Params "caption")
+}}
+```
+
+#### Raw String Literals Can Include Newlines
+
+```go-html-template
+{{ $msg := `Line one.
+Line two.` }}
+```
+
+## Variables {#variables}
+
+Each Go Template gets a data object. In Hugo, each template is passed
+a `Page`. In the below example, `.Title` is one of the elements
+accessible in that [`Page` variable][pagevars].
+
+With the `Page` being the default scope of a template, the `Title`
+element in current scope (`.` -- "the **dot**") is accessible simply
+by the dot-prefix (`.Title`):
+
+```go-html-template
+<title>{{ .Title }}</title>
+```
+
+Values can also be stored in custom variables and referenced later:
+
+{{% note %}}
+The custom variables need to be prefixed with `$`.
+{{% /note %}}
+
+```go-html-template
+{{ $address := "123 Main St." }}
+{{ $address }}
+```
+
+{{% warning %}}
+For Hugo v0.47 and older versions, variables defined inside `if`
+conditionals and similar are not visible on the outside.
+See [https://github.com/golang/go/issues/10608](https://github.com/golang/go/issues/10608).
+
+Hugo has created a workaround for this issue in [Scratch](/functions/scratch).
+{{% /warning %}}
+
+For **Hugo v0.48** and newer, variables can be re-defined using the
+new `=` operator (new in Go 1.11).
+
+Below example will work only in these newer Hugo versions. The example
+prints "Var is Hugo Home" on the home page, and "Var is Hugo Page" on
+all other pages:
+
+```go-html-template
+{{ $var := "Hugo Page" }}
+{{ if .IsHome }}
+ {{ $var = "Hugo Home" }}
+{{ end }}
+Var is {{ $var }}
+```
+
+## Functions
+
+Go Templates only ship with a few basic functions but also provide a mechanism for applications to extend the original set.
+
+[Hugo template functions][functions] provide additional functionality specific to building websites. Functions are called by using their name followed by the required parameters separated by spaces. Template functions cannot be added without recompiling Hugo.
+
+### Example 1: Adding Numbers
+
+```go-html-template
+{{ add 1 2 }}
+<!-- prints 3 -->
+```
+
+### Example 2: Comparing Numbers
+
+```go-html-template
+{{ lt 1 2 }}
+<!-- prints true (i.e., since 1 is less than 2) -->
+```
+
+Note that both examples make use of Go Template's [math]][] functions.
+
+{{% note "Additional Boolean Operators" %}}
+There are more boolean operators than those listed in the Hugo docs in the [Go Template documentation](https://golang.org/pkg/text/template/#hdr-Functions).
+{{% /note %}}
+
+## Includes
+
+When including another template, you will need to pass it the data that it would
+need to access.
+
+{{% note %}}
+To pass along the current context, please remember to include a trailing **dot**.
+{{% /note %}}
+
+The templates location will always be starting at the `layouts/` directory
+within Hugo.
+
+### Partial
+
+The [`partial`][partials] function is used to include *partial* templates using
+the syntax `{{ partial "<PATH>/<PARTIAL>.<EXTENSION>" . }}`.
+
+Example of including a `layouts/partials/header.html` partial:
+
+```go-html-template
+{{ partial "header.html" . }}
+```
+
+### Template
+
+The `template` function was used to include *partial* templates
+in much older Hugo versions. Now it's useful only for calling
+[*internal* templates][internal templates]. The syntax is `{{ template
+"_internal/<TEMPLATE>.<EXTENSION>" . }}`.
+
+{{% note %}}
+The available **internal** templates can be found
+[here](https://github.com/gohugoio/hugo/tree/master/tpl/tplimpl/embedded/templates).
+{{% /note %}}
+
+Example of including the internal `opengraph.html` template:
+
+```go-html-template
+{{ template "_internal/opengraph.html" . }}
+```
+
+## Logic
+
+Go Templates provide the most basic iteration and conditional logic.
+
+### Iteration
+
+The Go Templates make heavy use of `range` to iterate over a _map_,
+_array_, or _slice_. The following are different examples of how to
+use `range`.
+
+#### Example 1: Using Context (`.`)
+
+```go-html-template
+{{ range $array }}
+ {{ . }} <!-- The . represents an element in $array -->
+{{ end }}
+```
+
+#### Example 2: Declaring a variable name for an array element's value
+
+```go-html-template
+{{ range $elem_val := $array }}
+ {{ $elem_val }}
+{{ end }}
+```
+
+#### Example 3: Declaring variable names for an array element's index _and_ value
+
+For an array or slice, the first declared variable will map to each
+element's index.
+
+```go-html-template
+{{ range $elem_index, $elem_val := $array }}
+ {{ $elem_index }} -- {{ $elem_val }}
+{{ end }}
+```
+
+#### Example 4: Declaring variable names for a map element's key _and_ value
+
+For a map, the first declared variable will map to each map element's
+key.
+
+```go-html-template
+{{ range $elem_key, $elem_val := $map }}
+ {{ $elem_key }} -- {{ $elem_val }}
+{{ end }}
+```
+
+#### Example 5: Conditional on empty _map_, _array_, or _slice_.
+
+If the _map_, _array_, or _slice_ passed into the range is zero-length then the else statement is evaluated.
+
+```go-html-template
+{{ range $array }}
+ {{ . }}
+{{else}}
+ <!-- This is only evaluated if $array is empty -->
+{{ end }}
+```
+
+### Conditionals
+
+`if`, `else`, `with`, `or`, `and` and `not` provide the framework for handling conditional logic in Go Templates. Like `range`, `if` and `with` statements are closed with an `{{ end }}`.
+
+Go Templates treat the following values as **false**:
+
+- `false` (boolean)
+- 0 (integer)
+- any zero-length array, slice, map, or string
+
+#### Example 1: `with`
+
+It is common to write "if something exists, do this" kind of
+statements using `with`.
+
+{{% note %}}
+`with` rebinds the context `.` within its scope (just like in `range`).
+{{% /note %}}
+
+It skips the block if the variable is absent, or if it evaluates to
+"false" as explained above.
+
+```go-html-template
+{{ with .Params.title }}
+ <h4>{{ . }}</h4>
+{{ end }}
+```
+
+#### Example 2: `with` .. `else`
+
+Below snippet uses the "description" front-matter parameter's value if
+set, else uses the default `.Summary` [Page variable][pagevars]:
+
+
+```go-html-template
+{{ with .Param "description" }}
+ {{ . }}
+{{ else }}
+ {{ .Summary }}
+{{ end }}
+```
+
+See the [`.Param` function][param].
+
+#### Example 3: `if`
+
+An alternative (and a more verbose) way of writing `with` is using
+`if`. Here, the `.` does not get rebinded.
+
+Below example is "Example 1" rewritten using `if`:
+
+```go-html-template
+{{ if isset .Params "title" }}
+ <h4>{{ index .Params "title" }}</h4>
+{{ end }}
+```
+
+#### Example 4: `if` .. `else`
+
+Below example is "Example 2" rewritten using `if` .. `else`, and using
+[`isset` function][isset] + `.Params` variable (different from the
+[`.Param` **function**][param]) instead:
+
+```go-html-template
+{{ if (isset .Params "description") }}
+ {{ index .Params "description" }}
+{{ else }}
+ {{ .Summary }}
+{{ end }}
+```
+
+#### Example 5: `if` .. `else if` .. `else`
+
+Unlike `with`, `if` can contain `else if` clauses too.
+
+```go-html-template
+{{ if (isset .Params "description") }}
+ {{ index .Params "description" }}
+{{ else if (isset .Params "summary") }}
+ {{ index .Params "summary" }}
+{{ else }}
+ {{ .Summary }}
+{{ end }}
+```
+
+#### Example 6: `and` & `or`
+
+```go-html-template
+{{ if (and (or (isset .Params "title") (isset .Params "caption")) (isset .Params "attr")) }}
+```
+
+## Pipes
+
+One of the most powerful components of Go Templates is the ability to stack actions one after another. This is done by using pipes. Borrowed from Unix pipes, the concept is simple: each pipeline's output becomes the input of the following pipe.
+
+Because of the very simple syntax of Go Templates, the pipe is essential to being able to chain together function calls. One limitation of the pipes is that they can only work with a single value and that value becomes the last parameter of the next pipeline.
+
+A few simple examples should help convey how to use the pipe.
+
+### Example 1: `shuffle`
+
+The following two examples are functionally the same:
+
+```go-html-template
+{{ shuffle (seq 1 5) }}
+```
+
+
+```go-html-template
+{{ (seq 1 5) | shuffle }}
+```
+
+### Example 2: `index`
+
+The following accesses the page parameter called "disqus_url" and escapes the HTML. This example also uses the [`index` function](/functions/index-function/), which is built into Go Templates:
+
+```go-html-template
+{{ index .Params "disqus_url" | html }}
+```
+
+### Example 3: `or` with `isset`
+
+```go-html-template
+{{ if or (or (isset .Params "title") (isset .Params "caption")) (isset .Params "attr") }}
+Stuff Here
+{{ end }}
+```
+
+Could be rewritten as
+
+```go-html-template
+{{ if isset .Params "caption" | or isset .Params "title" | or isset .Params "attr" }}
+Stuff Here
+{{ end }}
+```
+
+### Example 4: Internet Explorer Conditional Comments {#ie-conditional-comments}
+
+By default, Go Templates remove HTML comments from output. This has the unfortunate side effect of removing Internet Explorer conditional comments. As a workaround, use something like this:
+
+```go-html-template
+{{ "<!--[if lt IE 9]>" | safeHTML }}
+ <script src="html5shiv.js"></script>
+{{ "<![endif]-->" | safeHTML }}
+```
+
+Alternatively, you can use the backtick (`` ` ``) to quote the IE conditional comments, avoiding the tedious task of escaping every double quotes (`"`) inside, as demonstrated in the [examples](https://golang.org/pkg/text/template/#hdr-Examples) in the Go text/template documentation:
+
+```go-html-template
+{{ `<!--[if lt IE 7]><html class="no-js lt-ie9 lt-ie8 lt-ie7"><![endif]-->` | safeHTML }}
+```
+
+## Context (aka "the dot") {#the-dot}
+
+The most easily overlooked concept to understand about Go Templates is
+that `{{ . }}` always refers to the **current context**.
+
+- In the top level of your template, this will be the data set made
+ available to it.
+- Inside of an iteration, however, it will have the value of the
+ current item in the loop; i.e., `{{ . }}` will no longer refer to
+ the data available to the entire page.
+
+If you need to access page-level data (e.g., page params set in front
+matter) from within the loop, you will likely want to do one of the
+following:
+
+### 1. Define a Variable Independent of Context
+
+The following shows how to define a variable independent of the context.
+
+{{< code file="tags-range-with-page-variable.html" >}}
+{{ $title := .Site.Title }}
+<ul>
+{{ range .Params.tags }}
+ <li>
+ <a href="/tags/{{ . | urlize }}">{{ . }}</a>
+ - {{ $title }}
+ </li>
+{{ end }}
+</ul>
+{{< /code >}}
+
+{{% note %}}
+Notice how once we have entered the loop (i.e. `range`), the value of `{{ . }}` has changed. We have defined a variable outside of the loop (`{{$title}}`) that we've assigned a value so that we have access to the value from within the loop as well.
+{{% /note %}}
+
+### 2. Use `$.` to Access the Global Context
+
+`$` has special significance in your templates. `$` is set to the starting value of `.` ("the dot") by default. This is a [documented feature of Go text/template][dotdoc]. This means you have access to the global context from anywhere. Here is an equivalent example of the preceding code block but now using `$` to grab `.Site.Title` from the global context:
+
+{{< code file="range-through-tags-w-global.html" >}}
+<ul>
+{{ range .Params.tags }}
+ <li>
+ <a href="/tags/{{ . | urlize }}">{{ . }}</a>
+ - {{ $.Site.Title }}
+ </li>
+{{ end }}
+</ul>
+{{< /code >}}
+
+{{% warning "Don't Redefine the Dot" %}}
+The built-in magic of `$` would cease to work if someone were to mischievously redefine the special character; e.g. `{{ $ := .Site }}`. *Don't do it.* You may, of course, recover from this mischief by using `{{ $ := . }}` in a global context to reset `$` to its default value.
+{{% /warning %}}
+
+## Whitespace
+
+Go 1.6 includes the ability to trim the whitespace from either side of a Go tag by including a hyphen (`-`) and space immediately beside the corresponding `{{` or `}}` delimiter.
+
+For instance, the following Go Template will include the newlines and horizontal tab in its HTML output:
+
+```go-html-template
+<div>
+ {{ .Title }}
+</div>
+```
+
+Which will output:
+
+```html
+<div>
+ Hello, World!
+</div>
+```
+
+Leveraging the `-` in the following example will remove the extra white space surrounding the `.Title` variable and remove the newline:
+
+```go-html-template
+<div>
+ {{- .Title -}}
+</div>
+```
+
+Which then outputs:
+
+```html
+<div>Hello, World!</div>
+```
+
+Go considers the following characters _whitespace_:
+
+* <kbd>space</kbd>
+* horizontal <kbd>tab</kbd>
+* carriage <kbd>return</kbd>
+* newline
+
+## Comments
+
+In order to keep your templates organized and share information throughout your team, you may want to add comments to your templates. There are two ways to do that with Hugo.
+
+### Go Templates comments
+
+Go Templates support `{{/*` and `*/}}` to open and close a comment block. Nothing within that block will be rendered.
+
+For example:
+
+```go-html-template
+Bonsoir, {{/* {{ add 0 + 2 }} */}}Eliott.
+```
+
+Will render `Bonsoir, Eliott.`, and not care about the syntax error (`add 0 + 2`) in the comment block.
+
+### HTML comments
+
+If you need to produce HTML comments from your templates, take a look at the [Internet Explorer conditional comments](#ie-conditional-comments) example. If you need variables to construct such HTML comments, just pipe `printf` to `safeHTML`. For example:
+
+```go-html-template
+{{ printf "<!-- Our website is named: %s -->" .Site.Title | safeHTML }}
+```
+
+#### HTML comments containing Go Templates
+
+HTML comments are by default stripped, but their content is still evaluated. That means that although the HTML comment will never render any content to the final HTML pages, code contained within the comment may fail the build process.
+
+{{% note %}}
+Do **not** try to comment out Go Template code using HTML comments.
+{{% /note %}}
+
+```go-html-template
+<!-- {{ $author := "Emma Goldman" }} was a great woman. -->
+{{ $author }}
+```
+
+The templating engine will strip the content within the HTML comment, but will first evaluate any Go Template code if present within. So the above example will render `Emma Goldman`, as the `$author` variable got evaluated in the HTML comment. But the build would have failed if that code in the HTML comment had an error.
+
+## Hugo Parameters
+
+Hugo provides the option of passing values to your template layer through your [site configuration][config] (i.e. for site-wide values) or through the metadata of each specific piece of content (i.e. the [front matter][]). You can define any values of any type and use them however you want in your templates, as long as the values are supported by the [front matter format]({{< ref "front-matter.md#front-matter-formats" >}}).
+
+## Use Content (`Page`) Parameters
+
+You can provide variables to be used by templates in individual content's [front matter][].
+
+An example of this is used in the Hugo docs. Most of the pages benefit from having the table of contents provided, but sometimes the table of contents doesn't make a lot of sense. We've defined a `notoc` variable in our front matter that will prevent a table of contents from rendering when specifically set to `true`.
+
+Here is the example front matter (YAML):
+
+```
+---
+title: Roadmap
+lastmod: 2017-03-05
+date: 2013-11-18
+notoc: true
+---
+```
+
+Here is an example of corresponding code that could be used inside a `toc.html` [partial template][partials]:
+
+{{< code file="layouts/partials/toc.html" download="toc.html" >}}
+{{ if not .Params.notoc }}
+<aside>
+ <header>
+ <a href="#{{.Title | urlize}}">
+ <h3>{{.Title}}</h3>
+ </a>
+ </header>
+ {{.TableOfContents}}
+</aside>
+<a href="#" id="toc-toggle"></a>
+{{ end }}
+{{< /code >}}
+
+We want the *default* behavior to be for pages to include a TOC unless otherwise specified. This template checks to make sure that the `notoc:` field in this page's front matter is not `true`.
+
+## Use Site Configuration Parameters
+
+You can arbitrarily define as many site-level parameters as you want in your [site's configuration file][config]. These parameters are globally available in your templates.
+
+For instance, you might declare the following:
+
+{{< code-toggle file="config" >}}
+params:
+ copyrighthtml: "Copyright &#xA9; 2017 John Doe. All Rights Reserved."
+ twitteruser: "spf13"
+ sidebarrecentlimit: 5
+{{< /code >}}
+
+Within a footer layout, you might then declare a `<footer>` that is only rendered if the `copyrighthtml` parameter is provided. If it *is* provided, you will then need to declare the string is safe to use via the [`safeHTML` function][safehtml] so that the HTML entity is not escaped again. This would let you easily update just your top-level config file each January 1st, instead of hunting through your templates.
+
+```go-html-template
+{{ if .Site.Params.copyrighthtml }}
+ <footer>
+ <div class="text-center">{{.Site.Params.CopyrightHTML | safeHTML}}</div>
+ </footer>
+{{ end }}
+```
+
+An alternative way of writing the "`if`" and then referencing the same value is to use [`with`][with] instead. `with` rebinds the context (`.`) within its scope and skips the block if the variable is absent:
+
+{{< code file="layouts/partials/twitter.html" >}}
+{{ with .Site.Params.twitteruser }}
+ <div>
+ <a href="https://twitter.com/{{.}}" rel="author">
+ <img src="/images/twitter.png" width="48" height="48" title="Twitter: {{.}}" alt="Twitter"></a>
+ </div>
+{{ end }}
+{{< /code >}}
+
+Finally, you can pull "magic constants" out of your layouts as well. The following uses the [`first`][first] function, as well as the [`.RelPermalink`][relpermalink] page variable and the [`.Site.Pages`][sitevars] site variable.
+
+```go-html-template
+<nav>
+ <h1>Recent Posts</h1>
+ <ul>
+ {{- range first .Site.Params.SidebarRecentLimit .Site.Pages -}}
+ <li><a href="{{.RelPermalink}}">{{.Title}}</a></li>
+ {{- end -}}
+ </ul>
+</nav>
+```
+
+## Example: Show Future Events
+
+Given the following content structure and [front matter]:
+
+```text
+content/
+└── events/
+ ├── event-1.md
+ ├── event-2.md
+ └── event-3.md
+```
+
+{{< code-toggle file="content/events/event-1.md" copy="false" >}}
+title = 'Event 1'
+date = 2021-12-06T10:37:16-08:00
+draft = false
+start_date = 2021-12-05T09:00:00-08:00
+end_date = 2021-12-05T11:00:00-08:00
+{{< /code-toggle >}}
+
+This [partial template][partials] renders future events:
+
+{{< code file="layouts/partials/future-events.html" >}}
+<h2>Future Events</h2>
+<ul>
+ {{ range where site.RegularPages "Type" "events" }}
+ {{ if gt (.Params.start_date | time.AsTime) now }}
+ {{ $startDate := .Params.start_date | time.Format ":date_medium" }}
+ <li>
+ <a href="{{ .RelPermalink }}">{{ .LinkTitle }}</a> - {{ $startDate }}
+ </li>
+ {{ end }}
+ {{ end }}
+</ul>
+{{< /code >}}
+
+If you restrict front matter to the TOML format, and omit quotation marks surrounding date fields, you can perform date comparisons without casting.
+
+{{< code file="layouts/partials/future-events.html" >}}
+<h2>Future Events</h2>
+<ul>
+ {{ range where (where site.RegularPages "Type" "events") "Params.start_date" "gt" now }}
+ {{ $startDate := .Params.start_date | time.Format ":date_medium" }}
+ <li>
+ <a href="{{ .RelPermalink }}">{{ .LinkTitle }}</a> - {{ $startDate }}
+ </li>
+ {{ end }}
+</ul>
+{{< /code >}}
+
+[config]: {{< relref "getting-started/configuration" >}}
+[dotdoc]: https://golang.org/pkg/text/template/#hdr-Variables
+[first]: {{< relref "functions/first" >}}
+[front matter]: {{< relref "content-management/front-matter" >}}
+[functions]: {{< relref "functions" >}}
+[internal templates]: {{< relref "templates/internal" >}}
+[isset]: {{< relref "functions/isset" >}}
+[math]: {{< relref "functions/math" >}}
+[pagevars]: {{< relref "variables/page" >}}
+[param]: {{< relref "functions/param" >}}
+[partials]: {{< relref "templates/partials" >}}
+[relpermalink]: {{< relref "variables/page#page-variables" >}}
+[safehtml]: {{< relref "functions/safehtml" >}}
+[sitevars]: {{< relref "variables/site" >}}
+[variables]: {{< relref "variables" >}}
+[with]: {{< relref "functions/with" >}}
diff --git a/docs/content/en/templates/lists.md b/docs/content/en/templates/lists.md
new file mode 100644
index 000000000..be9df664c
--- /dev/null
+++ b/docs/content/en/templates/lists.md
@@ -0,0 +1,593 @@
+---
+title: Lists of Content in Hugo
+linktitle: List Page Templates
+description: Lists have a specific meaning and usage in Hugo when it comes to rendering your site homepage, section page, taxonomy list, or taxonomy terms list.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [templates]
+keywords: [lists,sections,rss,taxonomies,terms]
+menu:
+ docs:
+ parent: "templates"
+ weight: 22
+weight: 22
+sections_weight: 22
+draft: false
+aliases: [/templates/list/,/layout/indexes/]
+toc: true
+---
+
+## What is a List Page Template?
+
+{{< youtube 8b2YTSMdMps >}}
+
+A list page template is a template used to render multiple pieces of content in a single HTML page. The exception to this rule is the homepage, which is still a list but has its own [dedicated template][homepage].
+
+Hugo uses the term *list* in its truest sense; i.e. a sequential arrangement of material, especially in alphabetical or numerical order. Hugo uses list templates on any output HTML page where content is traditionally listed:
+
+* [Taxonomy terms pages][taxterms]
+* [Taxonomy list pages][taxlists]
+* [Section list pages][sectiontemps]
+* [RSS][rss]
+
+For template lookup order, see [Template Lookup](/templates/lookup-order/).
+
+The idea of a list page comes from the [hierarchical mental model of the web][mentalmodel] and is best demonstrated visually:
+
+[![Image demonstrating a hierarchical website sitemap.](/images/site-hierarchy.svg)](/images/site-hierarchy.svg)
+
+## List Defaults
+
+### Default Templates
+
+Since section lists and taxonomy lists (N.B., *not* [taxonomy terms lists][taxterms]) are both *lists* with regards to their templates, both have the same terminating default of `_default/list.html` or `themes/<THEME>/layouts/_default/list.html` in their lookup order. In addition, both [section lists][sectiontemps] and [taxonomy lists][taxlists] have their own default list templates in `_default`.
+
+See [Template Lookup Order](/templates/lookup-order/) for the complete reference.
+
+## Add Content and Front Matter to List Pages
+
+Since v0.18, [everything in Hugo is a `Page`][bepsays]. This means list pages and the homepage can have associated content files (i.e. `_index.md`) that contain page metadata (i.e., front matter) and content.
+
+This new model allows you to include list-specific front matter via `.Params` and also means that list templates (e.g., `layouts/_default/list.html`) have access to all [page variables][pagevars].
+
+{{% note %}}
+It is important to note that all `_index.md` content files will render according to a *list* template and not according to a [single page template](/templates/single-page-templates/).
+{{% /note %}}
+
+### Example Project Directory
+
+The following is an example of a typical Hugo project directory's content:
+
+```
+.
+...
+├── content
+| ├── posts
+| | ├── _index.md
+| | ├── post-01.md
+| | └── post-02.md
+| └── quote
+| | ├── quote-01.md
+| | └── quote-02.md
+...
+```
+
+Using the above example, let's assume you have the following in `content/posts/_index.md`:
+
+{{< code file="content/posts/_index.md" >}}
+---
+title: My Go Journey
+date: 2017-03-23
+publishdate: 2017-03-24
+---
+
+I decided to start learning Go in March 2017.
+
+Follow my journey through this new blog.
+{{< /code >}}
+
+You can now access this `_index.md`'s' content in your list template:
+
+{{< code file="layouts/_default/list.html" download="list.html" >}}
+{{ define "main" }}
+<main>
+ <article>
+ <header>
+ <h1>{{.Title}}</h1>
+ </header>
+ <!-- "{{.Content}}" pulls from the markdown content of the corresponding _index.md -->
+ {{.Content}}
+ </article>
+ <ul>
+ <!-- Ranges through content/posts/*.md -->
+ {{ range .Pages }}
+ <li>
+ <a href="{{.Permalink}}">{{.Date.Format "2006-01-02"}} | {{.Title}}</a>
+ </li>
+ {{ end }}
+ </ul>
+</main>
+{{ end }}
+{{< /code >}}
+
+This above will output the following HTML:
+
+{{< code file="example.com/posts/index.html" copy="false" >}}
+<!--top of your baseof code-->
+<main>
+ <article>
+ <header>
+ <h1>My Go Journey</h1>
+ </header>
+ <p>I decided to start learning Go in March 2017.</p>
+ <p>Follow my journey through this new blog.</p>
+ </article>
+ <ul>
+ <li><a href="/posts/post-01/">Post 1</a></li>
+ <li><a href="/posts/post-02/">Post 2</a></li>
+ </ul>
+</main>
+<!--bottom of your baseof-->
+{{< /code >}}
+
+### List Pages Without `_index.md`
+
+You do *not* have to create an `_index.md` file for every list page (i.e. section, taxonomy, taxonomy terms, etc) or the homepage. If Hugo does not find an `_index.md` within the respective content section when rendering a list template, the page will be created but with no `{{.Content}}` and only the default values for `.Title` etc.
+
+Using this same `layouts/_default/list.html` template and applying it to the `quotes` section above will render the following output. Note that `quotes` does not have an `_index.md` file to pull from:
+
+{{< code file="example.com/quote/index.html" copy="false" >}}
+<!--baseof-->
+<main>
+ <article>
+ <header>
+ <!-- Hugo assumes that .Title is the name of the section since there is no _index.md content file from which to pull a "title:" field -->
+ <h1>Quotes</h1>
+ </header>
+ </article>
+ <ul>
+ <li><a href="https://example.com/quote/quotes-01/">Quote 1</a></li>
+ <li><a href="https://example.com/quote/quotes-02/">Quote 2</a></li>
+ </ul>
+</main>
+<!--baseof-->
+{{< /code >}}
+
+{{% note %}}
+The default behavior of Hugo is to pluralize list titles; hence the inflection of the `quote` section to "Quotes" when called with the `.Title` [page variable](/variables/page/). You can change this via the `pluralizeListTitles` directive in your [site configuration](/getting-started/configuration/).
+{{% /note %}}
+
+## Example List Templates
+
+### Section Template
+
+This list template has been modified slightly from a template originally used in [spf13.com](http://spf13.com/). It makes use of [partial templates][partials] for the chrome of the rendered page rather than using a [base template][base]. The examples that follow also use the [content view templates][views] `li.html` or `summary.html`.
+
+{{< code file="layouts/section/posts.html" >}}
+{{ partial "header.html" . }}
+{{ partial "subheader.html" . }}
+<main>
+ <div>
+ <h1>{{ .Title }}</h1>
+ <ul>
+ <!-- Renders the li.html content view for each content/posts/*.md -->
+ {{ range .Pages }}
+ {{ .Render "li"}}
+ {{ end }}
+ </ul>
+ </div>
+</main>
+{{ partial "footer.html" . }}
+{{< /code >}}
+
+### Taxonomy Template
+
+{{< code file="layouts/_default/taxonomy.html" download="taxonomy.html" >}}
+{{ define "main" }}
+<main>
+ <div>
+ <h1>{{ .Title }}</h1>
+ <!-- ranges through each of the content files associated with a particular taxonomy term and renders the summary.html content view -->
+ {{ range .Pages }}
+ {{ .Render "summary"}}
+ {{ end }}
+ </div>
+</main>
+{{ end }}
+{{< /code >}}
+
+## Order Content
+
+Hugo lists render the content based on metadata you provide in [front matter][]. In addition to sane defaults, Hugo also ships with multiple methods to make quick work of ordering content inside list templates:
+
+### Default: Weight > Date > LinkTitle > FilePath
+
+{{< code file="layouts/partials/default-order.html" >}}
+<ul>
+ {{ range .Pages }}
+ <li>
+ <h1><a href="{{ .Permalink }}">{{ .Title }}</a></h1>
+ <time>{{ .Date.Format "Mon, Jan 2, 2006" }}</time>
+ </li>
+ {{ end }}
+</ul>
+{{< /code >}}
+
+### By Weight
+
+Lower weight gets higher precedence. So content with lower weight will come first.
+
+{{< code file="layouts/partials/by-weight.html" >}}
+<ul>
+ {{ range .Pages.ByWeight }}
+ <li>
+ <h1><a href="{{ .Permalink }}">{{ .Title }}</a></h1>
+ <time>{{ .Date.Format "Mon, Jan 2, 2006" }}</time>
+ </li>
+ {{ end }}
+</ul>
+{{< /code >}}
+
+### By Date
+
+{{< code file="layouts/partials/by-date.html" >}}
+<ul>
+ <!-- orders content according to the "date" field in front matter -->
+ {{ range .Pages.ByDate }}
+ <li>
+ <h1><a href="{{ .Permalink }}">{{ .Title }}</a></h1>
+ <time>{{ .Date.Format "Mon, Jan 2, 2006" }}</time>
+ </li>
+ {{ end }}
+</ul>
+{{< /code >}}
+
+### By Publish Date
+
+{{< code file="layouts/partials/by-publish-date.html" >}}
+<ul>
+ <!-- orders content according to the "publishdate" field in front matter -->
+ {{ range .Pages.ByPublishDate }}
+ <li>
+ <h1><a href="{{ .Permalink }}">{{ .Title }}</a></h1>
+ <time>{{ .Date.Format "Mon, Jan 2, 2006" }}</time>
+ </li>
+ {{ end }}
+</ul>
+{{< /code >}}
+
+### By Expiration Date
+
+{{< code file="layouts/partials/by-expiry-date.html" >}}
+<ul>
+ {{ range .Pages.ByExpiryDate }}
+ <li>
+ <h1><a href="{{ .Permalink }}">{{ .Title }}</a></h1>
+ <time>{{ .Date.Format "Mon, Jan 2, 2006" }}</time>
+ </li>
+ {{ end }}
+</ul>
+{{< /code >}}
+
+### By Last Modified Date
+
+{{< code file="layouts/partials/by-last-mod.html" >}}
+<ul>
+ <!-- orders content according to the "lastmod" field in front matter -->
+ {{ range .Pages.ByLastmod }}
+ <li>
+ <h1><a href="{{ .Permalink }}">{{ .Title }}</a></h1>
+ <time>{{ .Date.Format "Mon, Jan 2, 2006" }}</time>
+ </li>
+ {{ end }}
+</ul>
+{{< /code >}}
+
+### By Length
+
+{{< code file="layouts/partials/by-length.html" >}}
+<ul>
+ <!-- orders content according to content length in ascending order (i.e., the shortest content will be listed first) -->
+ {{ range .Pages.ByLength }}
+ <li>
+ <h1><a href="{{ .Permalink }}">{{ .Title }}</a></h1>
+ <time>{{ .Date.Format "Mon, Jan 2, 2006" }}</time>
+ </li>
+ {{ end }}
+</ul>
+{{< /code >}}
+
+### By Title
+
+{{< code file="layouts/partials/by-title.html" >}}
+<ul>
+ <!-- ranges through content in ascending order according to the "title" field set in front matter -->
+ {{ range .Pages.ByTitle }}
+ <li>
+ <h1><a href="{{ .Permalink }}">{{ .Title }}</a></h1>
+ <time>{{ .Date.Format "Mon, Jan 2, 2006" }}</time>
+ </li>
+ {{ end }}
+</ul>
+{{< /code >}}
+
+### By Link Title
+
+{{< code file="layouts/partials/by-link-title.html" >}}
+<ul>
+ <!-- ranges through content in ascending order according to the "linktitle" field in front matter. If a "linktitle" field is not set, the range will start with content that only has a "title" field and use that value for .LinkTitle -->
+ {{ range .Pages.ByLinkTitle }}
+ <li>
+ <h1><a href="{{ .Permalink }}">{{ .LinkTitle }}</a></h1>
+ <time>{{ .Date.Format "Mon, Jan 2, 2006" }}</time>
+ </li>
+ {{ end }}
+</ul>
+{{< /code >}}
+
+### By Parameter
+
+Order based on the specified front matter parameter. Content that does not have the specified front matter field will use the site's `.Site.Params` default. If the parameter is not found at all in some entries, those entries will appear together at the end of the ordering.
+
+{{< code file="layouts/partials/by-rating.html" >}}
+<!-- Ranges through content according to the "rating" field set in front matter -->
+{{ range (.Pages.ByParam "rating") }}
+ <!-- ... -->
+{{ end }}
+{{< /code >}}
+
+If the targeted front matter field is nested beneath another field, you can access the field using dot notation.
+
+{{< code file="layouts/partials/by-nested-param.html" >}}
+{{ range (.Pages.ByParam "author.last_name") }}
+ <!-- ... -->
+{{ end }}
+{{< /code >}}
+
+### Reverse Order
+
+Reversing order can be applied to any of the above methods. The following uses `ByDate` as an example:
+
+{{< code file="layouts/partials/by-date-reverse.html" >}}
+<ul>
+ {{ range .Pages.ByDate.Reverse }}
+ <li>
+ <h1><a href="{{ .Permalink }}">{{ .Title }}</a></h1>
+ <time>{{ .Date.Format "Mon, Jan 2, 2006" }}</time>
+ </li>
+ {{ end }}
+</ul>
+{{< /code >}}
+
+## Group Content
+
+Hugo provides some functions for grouping pages by Section, Type, Date, etc.
+
+### By Page Field
+
+{{< code file="layouts/partials/by-page-field.html" >}}
+<!-- Groups content according to content section. The ".Key" in this instance will be the section's title. -->
+{{ range .Pages.GroupBy "Section" }}
+<h3>{{ .Key }}</h3>
+<ul>
+ {{ range .Pages }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ <div class="meta">{{ .Date.Format "Mon, Jan 2, 2006" }}</div>
+ </li>
+ {{ end }}
+</ul>
+{{ end }}
+{{< /code >}}
+
+In the above example, you may want `{{.Title}}` to point the `title` field you have added to your `_index.md` file instead. You can access this value using the [`.GetPage` function][getpage]:
+
+{{< code file="layouts/partials/by-page-field.html" >}}
+<!-- Groups content according to content section.-->
+{{ range .Pages.GroupBy "Section" }}
+<!-- Checks for existence of _index.md for a section; if available, pulls from "title" in front matter -->
+{{ with $.Site.GetPage "section" .Key }}
+<h3>{{.Title}}</h3>
+{{ else }}
+<!-- If no _index.md is available, ".Key" defaults to the section title and filters to title casing -->
+<h3>{{ .Key | title }}</h3>
+{{ end }}
+<ul>
+ {{ range .Pages }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ <div class="meta">{{ .Date.Format "Mon, Jan 2, 2006" }}</div>
+ </li>
+ {{ end }}
+</ul>
+{{ end }}
+{{< /code >}}
+
+### By Date
+
+{{< code file="layouts/partials/by-page-date.html" >}}
+<!-- Groups content by month according to the "date" field in front matter -->
+{{ range .Pages.GroupByDate "2006-01" }}
+<h3>{{ .Key }}</h3>
+<ul>
+ {{ range .Pages }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ <div class="meta">{{ .Date.Format "Mon, Jan 2, 2006" }}</div>
+ </li>
+ {{ end }}
+</ul>
+{{ end }}
+{{< /code >}}
+
+### By Publish Date
+
+{{< code file="layouts/partials/by-page-publish-date.html" >}}
+<!-- Groups content by month according to the "publishDate" field in front matter -->
+{{ range .Pages.GroupByPublishDate "2006-01" }}
+<h3>{{ .Key }}</h3>
+<ul>
+ {{ range .Pages }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ <div class="meta">{{ .PublishDate.Format "Mon, Jan 2, 2006" }}</div>
+ </li>
+ {{ end }}
+</ul>
+{{ end }}
+{{< /code >}}
+
+
+### By Lastmod
+
+{{< code file="layouts/partials/by-page-lastmod.html" >}}
+<!-- Groups content by month according to the "lastMod" field in front matter -->
+{{ range .Pages.GroupByLastmod "2006-01" }}
+<h3>{{ .Key }}</h3>
+<ul>
+ {{ range .Pages }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ <div class="meta">{{ .Lastmod.Format "Mon, Jan 2, 2006" }}</div>
+ </li>
+ {{ end }}
+</ul>
+{{ end }}
+{{< /code >}}
+
+### By Expiry Date
+
+{{< code file="layouts/partials/by-page-expiry-date.html" >}}
+<!-- Groups content by month according to the "expiryDate" field in front matter -->
+{{ range .Pages.GroupByExpiryDate "2006-01" }}
+<h3>{{ .Key }}</h3>
+<ul>
+ {{ range .Pages }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ <div class="meta">{{ .ExpiryDate.Format "Mon, Jan 2, 2006" }}</div>
+ </li>
+ {{ end }}
+</ul>
+{{ end }}
+{{< /code >}}
+
+### By Page Parameter
+
+{{< code file="layouts/partials/by-page-param.html" >}}
+<!-- Groups content according to the "param_key" field in front matter -->
+{{ range .Pages.GroupByParam "param_key" }}
+<h3>{{ .Key }}</h3>
+<ul>
+ {{ range .Pages }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ <div class="meta">{{ .Date.Format "Mon, Jan 2, 2006" }}</div>
+ </li>
+ {{ end }}
+</ul>
+{{ end }}
+{{< /code >}}
+
+### By Page Parameter in Date Format
+
+The following template takes grouping by `date` a step further and uses Go's layout string. See the [`Format` function][] for more examples of how to use Go's layout string to format dates in Hugo.
+
+{{< code file="layouts/partials/by-page-param-as-date.html" >}}
+<!-- Groups content by month according to the "param_key" field in front matter -->
+{{ range .Pages.GroupByParamDate "param_key" "2006-01" }}
+<h3>{{ .Key }}</h3>
+<ul>
+ {{ range .Pages }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ <div class="meta">{{ .Date.Format "Mon, Jan 2, 2006" }}</div>
+ </li>
+ {{ end }}
+</ul>
+{{ end }}
+{{< /code >}}
+
+### Reverse Key Order
+
+Ordering of groups is performed by keys in alphanumeric order (A–Z, 1–100) and in reverse chronological order (i.e., with the newest first) for dates.
+
+While these are logical defaults, they are not always the desired order. There are two different syntaxes to change Hugo's default ordering for groups, both of which work the same way.
+
+#### 1. Adding the Reverse Method
+
+```
+{{ range (.Pages.GroupBy "Section").Reverse }}
+```
+
+```
+{{ range (.Pages.GroupByDate "2006-01").Reverse }}
+```
+
+#### 2. Providing the Alternate Direction
+
+```
+{{ range .Pages.GroupByDate "2006-01" "asc" }}
+```
+
+```
+{{ range .Pages.GroupBy "Section" "desc" }}
+```
+
+### Order Within Groups
+
+Because Grouping returns a `{{.Key}}` and a slice of pages, all of the ordering methods listed above are available.
+
+Here is the ordering for the example that follows:
+
+1. Content is grouped by month according to the `date` field in front matter.
+2. Groups are listed in ascending order (i.e., the oldest groups first)
+3. Pages within each respective group are ordered alphabetically according to the `title`.
+
+{{< code file="layouts/partials/by-group-by-page.html" >}}
+{{ range .Pages.GroupByDate "2006-01" "asc" }}
+<h3>{{ .Key }}</h3>
+<ul>
+ {{ range .Pages.ByTitle }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ <div class="meta">{{ .Date.Format "Mon, Jan 2, 2006" }}</div>
+ </li>
+ {{ end }}
+</ul>
+{{ end }}
+{{< /code >}}
+
+## Filtering and Limiting Lists {#filtering-and-limiting-lists}
+
+Sometimes you only want to list a subset of the available content. A
+common is to only display posts from [**main sections**][mainsections]
+on the blog's homepage.
+
+See the documentation on [`where` function][wherefunction] and
+[`first` function][firstfunction] for further details.
+
+[base]: /templates/base/
+[bepsays]: https://bepsays.com/en/2016/12/19/hugo-018/
+[directorystructure]: /getting-started/directory-structure/
+[`Format` function]: /functions/format/
+[front matter]: /content-management/front-matter/
+[getpage]: /functions/getpage/
+[homepage]: /templates/homepage/
+[homepage]: /templates/homepage/
+[mentalmodel]: https://webstyleguide.com/wsg3/3-information-architecture/3-site-structure.html
+[pagevars]: /variables/page/
+[partials]: /templates/partials/
+[RSS 2.0]: https://cyber.harvard.edu/rss/rss.html "RSS 2.0 Specification"
+[rss]: /templates/rss/
+[sections]: /content-management/sections/
+[sectiontemps]: /templates/section-templates/
+[sitevars]: /variables/site/
+[taxlists]: /templates/taxonomy-templates/#taxonomy-list-templates
+[taxterms]: /templates/taxonomy-templates/#taxonomy-terms-templates
+[taxvars]: /variables/taxonomy/
+[views]: /templates/views/
+[wherefunction]: /functions/where/
+[firstfunction]: /functions/first/
+[mainsections]: /functions/where/#mainsections
diff --git a/docs/content/en/templates/lookup-order.md b/docs/content/en/templates/lookup-order.md
new file mode 100644
index 000000000..e021c8112
--- /dev/null
+++ b/docs/content/en/templates/lookup-order.md
@@ -0,0 +1,82 @@
+---
+title: Hugo's Lookup Order
+linktitle: Template Lookup Order
+description: Hugo searches for the layout to use for a given page in a well defined order, starting from the most specific.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-07-05
+categories: [templates,fundamentals]
+keywords: [templates]
+menu:
+ docs:
+ parent: "templates"
+ weight: 15
+ quicklinks:
+weight: 15
+sections_weight: 15
+draft: false
+aliases: [/templates/lookup/]
+toc: true
+---
+
+## Hugo Layouts Lookup Rules
+
+Hugo takes the parameters listed below into consideration when choosing a layout for a given page. They are listed in a priority order. This should feel natural, but look at the table below for concrete examples of the different parameter variations.
+
+
+Kind
+: The page `Kind` (the home page is one). See the example tables below per kind. This also determines if it is a **single page** (i.e. a regular content page. We then look for a template in `_default/single.html` for HTML) or a **list page** (section listings, home page, taxonomy lists, taxonomy terms. We then look for a template in `_default/list.html` for HTML).
+
+Layout
+: Can be set in page front matter.
+
+Output Format
+: See [Custom Output Formats](/templates/output-formats). An output format has both a `name` (e.g. `rss`, `amp`, `html`) and a `suffix` (e.g. `xml`, `html`). We prefer matches with both (e.g. `index.amp.html`, but look for less specific templates.
+
+Note that if the output format's Media Type has more than one suffix defined, only the first is considered.
+
+Language
+: We will consider a language code in the template name. If the site language is `fr`, `index.fr.amp.html` will win over `index.amp.html`, but `index.amp.html` will be chosen before `index.fr.html`.
+
+Type
+: Is value of `type` if set in front matter, else it is the name of the root section (e.g. "blog"). It will always have a value, so if not set, the value is "page".
+
+Section
+: Is relevant for `section`, `taxonomy` and `term` types.
+
+{{% note %}}
+**Tip:** The examples below look long and complex. That is the flexibility talking. Most Hugo sites contain just a handful of templates:
+
+```bash
+├── _default
+│   ├── baseof.html
+│   ├── list.html
+│   └── single.html
+└── index.html
+```
+{{% /note %}}
+
+
+## Hugo Layouts Lookup Rules With Theme
+
+In Hugo, layouts can live in either the project's or the themes' layout folders, and the most specific layout will be chosen. Hugo will interleave the lookups listed below, finding the most specific one either in the project or themes.
+
+## Examples: Layout Lookup for Regular Pages
+
+{{< datatable-filtered "output" "layouts" "Kind == page" "Example" "OutputFormat" "Suffix" "Template Lookup Order" >}}
+
+## Examples: Layout Lookup for Home Page
+
+{{< datatable-filtered "output" "layouts" "Kind == home" "Example" "OutputFormat" "Suffix" "Template Lookup Order" >}}
+
+## Examples: Layout Lookup for Section Pages
+
+{{< datatable-filtered "output" "layouts" "Kind == section" "Example" "OutputFormat" "Suffix" "Template Lookup Order" >}}
+
+## Examples: Layout Lookup for Taxonomy Pages
+
+{{< datatable-filtered "output" "layouts" "Kind == taxonomy" "Example" "OutputFormat" "Suffix" "Template Lookup Order" >}}
+
+## Examples: Layout Lookup for Term Pages
+
+{{< datatable-filtered "output" "layouts" "Kind == term" "Example" "OutputFormat" "Suffix" "Template Lookup Order" >}}
diff --git a/docs/content/en/templates/menu-templates.md b/docs/content/en/templates/menu-templates.md
new file mode 100644
index 000000000..8893d7b5a
--- /dev/null
+++ b/docs/content/en/templates/menu-templates.md
@@ -0,0 +1,182 @@
+---
+title: Menu Templates
+linktitle: Menu Templates
+description: Menus are a powerful but simple feature for content management but can be easily manipulated in your templates to meet your design needs.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [templates]
+keywords: [lists,sections,menus]
+menu:
+ docs:
+ title: "how to use menus in templates"
+ parent: "templates"
+ weight: 130
+weight: 130
+sections_weight: 130
+draft: false
+aliases: [/templates/menus/]
+toc: false
+---
+
+Hugo makes no assumptions about how your rendered HTML will be
+structured. Instead, it provides all of the functions you will need to be
+able to build your menu however you want.
+
+The following is an example:
+
+{{< code file="layouts/partials/sidebar.html" download="sidebar.html" >}}
+<!-- sidebar start -->
+<aside>
+ <ul>
+ {{ $currentPage := . }}
+ {{ range .Site.Menus.main }}
+ {{ if .HasChildren }}
+ <li class="{{ if $currentPage.HasMenuCurrent "main" . }}active{{ end }}">
+ <a href="#">
+ {{ .Pre }}
+ <span>{{ .Name }}</span>
+ </a>
+ </li>
+ <ul class="sub-menu">
+ {{ range .Children }}
+ <li class="{{ if $currentPage.IsMenuCurrent "main" . }}active{{ end }}">
+ <a href="{{ .URL }}">{{ .Name }}</a>
+ </li>
+ {{ end }}
+ </ul>
+ {{ else }}
+ <li>
+ <a href="{{ .URL }}">
+ {{ .Pre }}
+ <span>{{ .Name }}</span>
+ </a>
+ </li>
+ {{ end }}
+ {{ end }}
+ <li>
+ <a href="#" target="_blank">Hardcoded Link 1</a>
+ </li>
+ <li>
+ <a href="#" target="_blank">Hardcoded Link 2</a>
+ </li>
+ </ul>
+</aside>
+{{< /code >}}
+
+{{% note "`absLangURL` and `relLangURL`" %}}
+Use the [`absLangURL`](/functions/abslangurl) or [`relLangURL`](/functions/rellangurl) functions if your theme makes use of the [multilingual feature](/content-management/multilingual/). In contrast to `absURL` and `relURL`, these two functions add the correct language prefix to the url.
+{{% /note %}}
+
+## Section Menu for Lazy Bloggers
+
+To enable this menu, configure `sectionPagesMenu` in your site `config`:
+
+```
+sectionPagesMenu = "main"
+```
+
+The menu name can be anything, but take a note of what it is.
+
+This will create a menu with all the sections as menu items and all the sections' pages as "shadow-members". The _shadow_ implies that the pages isn't represented by a menu-item themselves, but this enables you to create a top-level menu like this:
+
+```
+<nav class="sidebar-nav">
+ {{ $currentPage := . }}
+ {{ range .Site.Menus.main }}
+ <a class="sidebar-nav-item{{if or ($currentPage.IsMenuCurrent "main" .) ($currentPage.HasMenuCurrent "main" .) }} active{{end}}" href="{{ .URL }}" title="{{ .Title }}">{{ .Name }}</a>
+ {{ end }}
+</nav>
+```
+
+In the above, the menu item is marked as active if on the current section's list page or on a page in that section.
+
+
+## Site Config menus
+
+The above is all that's needed. But if you want custom menu items, e.g. changing weight, name, or link title attribute, you can define them manually in the site config file:
+
+{{< code-toggle file="config" >}}
+[[menu.main]]
+ name = "This is the blog section"
+ title = "blog section"
+ weight = -110
+ identifier = "blog"
+ url = "/blog/"
+{{</ code-toggle >}}
+
+{{% note %}}
+The `identifier` *must* match the section name.
+{{% /note %}}
+
+## Menu Entries from the Page's front matter
+
+It's also possible to create menu entries from the page (i.e. the `.md`-file).
+
+Here is a `yaml` example:
+
+```
+---
+title: Menu Templates
+linktitle: Menu Templates
+menu:
+ docs:
+ title: "how to use menus in templates"
+ parent: "templates"
+ weight: 130
+---
+...
+```
+
+{{% note %}}
+You can define more than one menu. It also doesn't have to be a complex value,
+`menu` can also be a string, an array of strings, or an array of complex values
+like in the example above.
+{{% /note %}}
+
+### Using .Page in Menus
+
+If you use the front matter method of defining menu entries, you'll get access to the `.Page` variable.
+This allows to use every variable that's reachable from the [page variable](/variables/page/).
+
+This variable is only set when the menu entry is defined in the page's front matter.
+Menu entries from the site config don't know anything about `.Page`.
+
+That's why you have to use the go template's `with` keyword or something similar in your templating language.
+
+Here's an example:
+
+```
+<nav class="sidebar-nav">
+ {{ range .Site.Menus.main }}
+ <a href="{{ .URL }}" title="{{ .Title }}">
+ {{- .Name -}}
+ {{- with .Page -}}
+ <span class="date">
+ {{- dateFormat " (2006-01-02)" .Date -}}
+ </span>
+ {{- end -}}
+ </a>
+ {{ end }}
+</nav>
+```
+
+## Using .Params in Menus
+
+User-defined content on menu items are accessible via `.Params`.
+
+Here's an example:
+
+```
+<nav class="sidebar-nav">
+ {{ range .Site.Menus.main }}
+ <a href="{{ .URL }}" title="{{ .Title }}" class="{{ with .Params.class }}{{ . }}{{ end }}">
+ {{- .Name -}}
+ </a>
+ {{ end }}
+</nav>
+```
+
+{{% note %}}
+With Menu-level .Params they can easily exist on one menu item but not another. It's recommended to access them gracefully using the [with function](/functions/with).
+{{% /note %}} \ No newline at end of file
diff --git a/docs/content/en/templates/ordering-and-grouping.md b/docs/content/en/templates/ordering-and-grouping.md
new file mode 100644
index 000000000..a4f238fdf
--- /dev/null
+++ b/docs/content/en/templates/ordering-and-grouping.md
@@ -0,0 +1,344 @@
+---
+title: Ordere and Grouping Hugo Lists
+linktitle: List Ordering and Grouping
+description: You can group or order your content in both your templating and content front matter.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [templates]
+keywords: []
+menu:
+ docs:
+ parent: "templates"
+ weight: 27
+weight: 27
+sections_weight: 27
+draft: true
+aliases: [/templates/ordering/,/templates/grouping/]
+toc: true
+notes: This was originally going to be a separate page on the new docs site but it now makes more sense to keep everything within the templates/lists page. - rdwatters, 2017-03-12.
+---
+
+In Hugo, A list template is any template that will be used to render multiple pieces of content in a single HTML page.
+
+## Example List Templates
+
+### Section Template
+
+This list template is used for [spf13.com](https://spf13.com/). It makes use of [partial templates][partials]. All examples use a [view](/templates/views/) called either "li" or "summary."
+
+{{< code file="layouts/section/post.html" >}}
+{{ partial "header.html" . }}
+{{ partial "subheader.html" . }}
+
+<section id="main">
+ <div>
+ <h1 id="title">{{ .Title }}</h1>
+ <ul id="list">
+ {{ range .Pages }}
+ {{ .Render "li"}}
+ {{ end }}
+ </ul>
+ </div>
+</section>
+{{ partial "footer.html" . }}
+{{< /code >}}
+
+### Taxonomy Template
+
+{{< code file="layouts/_default/taxonomies.html" download="taxonomies.html" >}}
+{{ define "main" }}
+<section id="main">
+ <div>
+ <h1 id="title">{{ .Title }}</h1>
+ {{ range .Pages }}
+ {{ .Render "summary"}}
+ {{ end }}
+ </div>
+</section>
+{{ end }}
+{{< /code >}}
+
+## Order Content
+
+Hugo lists render the content based on metadata provided in the [front matter](/content-management/front-matter/)..
+
+Here are a variety of different ways you can order the content items in
+your list templates:
+
+### Default: Weight > Date
+
+{{< code file="layouts/partials/order-default.html" >}}
+<ul class="pages">
+ {{ range .Pages }}
+ <li>
+ <h1><a href="{{ .Permalink }}">{{ .Title }}</a></h1>
+ <time>{{ .Date.Format "Mon, Jan 2, 2006" }}</time>
+ </li>
+ {{ end }}
+</ul>
+{{< /code >}}
+
+### By Weight
+
+{{< code file="layouts/partials/by-weight.html" >}}
+{{ range .Pages.ByWeight }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ <div class="meta">{{ .Date.Format "Mon, Jan 2, 2006" }}</div>
+ </li>
+{{ end }}
+{{< /code >}}
+
+### By Date
+
+{{< code file="layouts/partials/by-date.html" >}}
+{{ range .Pages.ByDate }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ <div class="meta">{{ .Date.Format "Mon, Jan 2, 2006" }}</div>
+ </li>
+{{ end }}
+{{< /code >}}
+
+### By Publish Date
+
+{{< code file="layouts/partials/by-publish-date.html" >}}
+{{ range .Pages.ByPublishDate }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ <div class="meta">{{ .PublishDate.Format "Mon, Jan 2, 2006" }}</div>
+ </li>
+{{ end }}
+{{< /code >}}
+
+### By Expiration Date
+
+{{< code file="layouts/partials/by-expiry-date.html" >}}
+{{ range .Pages.ByExpiryDate }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ <div class="meta">{{ .ExpiryDate.Format "Mon, Jan 2, 2006" }}</div>
+ </li>
+{{ end }}
+{{< /code >}}
+
+### By Last Modified Date
+
+{{< code file="layouts/partials/by-last-mod.html" >}}
+{{ range .Pages.ByLastmod }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ <div class="meta">{{ .Date.Format "Mon, Jan 2, 2006" }}</div>
+ </li>
+{{ end }}
+{{< /code >}}
+
+### By Length
+
+{{< code file="layouts/partials/by-length.html" >}}
+{{ range .Pages.ByLength }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ <div class="meta">{{ .Date.Format "Mon, Jan 2, 2006" }}</div>
+ </li>
+{{ end }}
+{{< /code >}}
+
+
+### By Title
+
+{{< code file="layouts/partials/by-title.html" >}}
+{{ range .Pages.ByTitle }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ <div class="meta">{{ .Date.Format "Mon, Jan 2, 2006" }}</div>
+ </li>
+{{ end }}
+{{< /code >}}
+
+### By Link Title
+
+{{< code file="layouts/partials/by-link-title.html" >}}
+{{ range .Pages.ByLinkTitle }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .LinkTitle }}</a>
+ <div class="meta">{{ .Date.Format "Mon, Jan 2, 2006" }}</div>
+ </li>
+{{ end }}
+{{< /code >}}
+
+### By Parameter
+
+Order based on the specified front matter parameter. Content that does not have the specified front matter field will use the site's `.Site.Params` default. If the parameter is not found at all in some entries, those entries will appear together at the end of the ordering.
+
+The below example sorts a list of posts by their rating.
+
+{{< code file="layouts/partials/by-rating.html" >}}
+{{ range (.Pages.ByParam "rating") }}
+ <!-- ... -->
+{{ end }}
+{{< /code >}}
+
+If the front matter field of interest is nested beneath another field, you can
+also get it:
+
+{{< code file="layouts/partials/by-nested-param.html" >}}
+{{ range (.Pages.ByParam "author.last_name") }}
+ <!-- ... -->
+{{ end }}
+{{< /code >}}
+
+### Reverse Order
+
+Reversing order can be applied to any of the above methods. The following uses `ByDate` as an example:
+
+{{< code file="layouts/partials/by-date-reverse.html" >}}
+{{ range .Pages.ByDate.Reverse }}
+<li>
+<a href="{{ .Permalink }}">{{ .Title }}</a>
+<div class="meta">{{ .Date.Format "Mon, Jan 2, 2006" }}</div>
+</li>
+{{ end }}
+{{< /code >}}
+
+## Group Content
+
+Hugo provides some functions for grouping pages by Section, Type, Date, etc.
+
+### By Page Field
+
+{{< code file="layouts/partials/by-page-field.html" >}}
+{{ range .Pages.GroupBy "Section" }}
+<h3>{{ .Key }}</h3>
+<ul>
+ {{ range .Pages }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ <div class="meta">{{ .Date.Format "Mon, Jan 2, 2006" }}</div>
+ </li>
+ {{ end }}
+</ul>
+{{ end }}
+{{< /code >}}
+
+### By Page date
+
+{{< code file="layouts/partials/by-page-date.html" >}}
+{{ range .Pages.GroupByDate "2006-01" }}
+<h3>{{ .Key }}</h3>
+<ul>
+ {{ range .Pages }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ <div class="meta">{{ .Date.Format "Mon, Jan 2, 2006" }}</div>
+ </li>
+ {{ end }}
+</ul>
+{{ end }}
+{{< /code >}}
+
+### By Page publish date
+
+{{< code file="layouts/partials/by-page-publish-date.html" >}}
+{{ range .Pages.GroupByPublishDate "2006-01" }}
+<h3>{{ .Key }}</h3>
+<ul>
+ {{ range .Pages }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ <div class="meta">{{ .PublishDate.Format "Mon, Jan 2, 2006" }}</div>
+ </li>
+ {{ end }}
+</ul>
+{{ end }}
+{{< /code >}}
+
+### By Page Param
+
+{{< code file="layouts/partials/by-page-param.html" >}}
+{{ range .Pages.GroupByParam "param_key" }}
+<h3>{{ .Key }}</h3>
+<ul>
+ {{ range .Pages }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ <div class="meta">{{ .Date.Format "Mon, Jan 2, 2006" }}</div>
+ </li>
+ {{ end }}
+</ul>
+{{ end }}
+{{< /code >}}
+
+### By Page Param in Date Format
+
+{{< code file="layouts/partials/by-page-param-as-date.html" >}}
+{{ range .Pages.GroupByParamDate "param_key" "2006-01" }}
+<h3>{{ .Key }}</h3>
+<ul>
+ {{ range .Pages }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ <div class="meta">{{ .Date.Format "Mon, Jan 2, 2006" }}</div>
+ </li>
+ {{ end }}
+</ul>
+{{ end }}
+{{< /code >}}
+
+### Reverse Key Order
+
+The ordering of the groups is performed by keys in alphanumeric order (A–Z, 1–100) and in reverse chronological order (newest first) for dates.
+
+While these are logical defaults, they are not always the desired order. There are two different syntaxes to change the order, both of which work the same way. You can use your preferred syntax.
+
+#### Reverse Method
+
+```
+{{ range (.Pages.GroupBy "Section").Reverse }}
+```
+
+```
+{{ range (.Pages.GroupByDate "2006-01").Reverse }}
+```
+
+
+#### Provide the Alternate Direction
+
+```
+{{ range .Pages.GroupByDate "2006-01" "asc" }}
+```
+
+```
+{{ range .Pages.GroupBy "Section" "desc" }}
+```
+
+### Order Within Groups
+
+Because Grouping returns a `{{.Key}}` and a slice of pages, all of the ordering methods listed above are available.
+
+In the following example, groups are ordered chronologically and then content
+within each group is ordered alphabetically by title.
+
+{{< code file="layouts/partials/by-group-by-page.html" >}}
+{{ range .Pages.GroupByDate "2006-01" "asc" }}
+<h3>{{ .Key }}</h3>
+<ul>
+ {{ range .Pages.ByTitle }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ <div class="meta">{{ .Date.Format "Mon, Jan 2, 2006" }}</div>
+ </li>
+ {{ end }}
+</ul>
+{{ end }}
+{{< /code >}}
+
+## Filter and Limiting Lists
+
+See the [_Lists/Filtering and Limiting Lists_
+section][filteringandlimitinglists] for details.
+
+
+[views]: /templates/views/
+[filteringandlimitinglists]: /templates/lists/#filtering-and-limiting-lists
diff --git a/docs/content/en/templates/output-formats.md b/docs/content/en/templates/output-formats.md
new file mode 100644
index 000000000..ca51523de
--- /dev/null
+++ b/docs/content/en/templates/output-formats.md
@@ -0,0 +1,260 @@
+---
+title: Custom Output Formats
+linktitle: Custom Output Formats
+description: Hugo can output content in multiple formats, including calendar events, e-book formats, Google AMP, and JSON search indexes, or any custom text format.
+date: 2017-03-22
+publishdate: 2017-03-22
+lastmod: 2019-12-11
+categories: [templates]
+keywords: ["amp","outputs","rss"]
+menu:
+ docs:
+ parent: "templates"
+ weight: 18
+weight: 18
+sections_weight: 18
+draft: false
+aliases: [/templates/outputs/,/extras/output-formats/,/content-management/custom-outputs/]
+toc: true
+---
+
+This page describes how to properly configure your site with the media types and output formats, as well as where to create your templates for your custom outputs.
+
+## Media Types
+
+A [media type][] (also known as *MIME type* and *content type*) is a two-part identifier for file formats and format contents transmitted on the Internet.
+
+This is the full set of built-in media types in Hugo:
+
+{{< datatable "media" "types" "type" "suffixes" >}}
+
+**Note:**
+
+* It is possible to add custom media types or change the defaults; e.g., if you want to change the suffix for `text/html` to `asp`.
+* `Suffixes` are the values that will be used for URLs and filenames for that media type in Hugo.
+* The `Type` is the identifier that must be used when defining new/custom `Output Formats` (see below).
+* The full set of media types will be registered in Hugo's built-in development server to make sure they are recognized by the browser.
+
+To add or modify a media type, define it in a `mediaTypes` section in your [site configuration][config], either for all sites or for a given language.
+
+{{< code-toggle file="config" >}}
+[mediaTypes]
+ [mediaTypes."text/enriched"]
+ suffixes = ["enr"]
+ [mediaTypes."text/html"]
+ suffixes = ["asp"]
+{{</ code-toggle >}}
+
+The above example adds one new media type, `text/enriched`, and changes the suffix for the built-in `text/html` media type.
+
+**Note:** these media types are configured for **your output formats**. If you want to redefine one of Hugo's default output formats (e.g. `HTML`), you also need to redefine the media type. So, if you want to change the suffix of the `HTML` output format from `html` (default) to `htm`:
+
+```toml
+[mediaTypes]
+[mediaTypes."text/html"]
+suffixes = ["htm"]
+
+# Redefine HTML to update its media type.
+[outputFormats]
+[outputFormats.HTML]
+mediaType = "text/html"
+```
+
+**Note** that for the above to work, you also need to add an `outputs` definition in your site config.
+
+## Output Format Definitions
+
+Given a media type and some additional configuration, you get an **Output Format**.
+
+This is the full set of Hugo's built-in output formats:
+
+{{< datatable "output" "formats" "name" "mediaType" "path" "baseName" "rel" "protocol" "isPlainText" "isHTML" "noUgly" "permalinkable" >}}
+
+* A page can be output in as many output formats as you want, and you can have an infinite amount of output formats defined **as long as they resolve to a unique path on the file system**. In the above table, the best example of this is `AMP` vs. `HTML`. `AMP` has the value `amp` for `Path` so it doesn't overwrite the `HTML` version; e.g. we can now have both `/index.html` and `/amp/index.html`.
+* The `MediaType` must match the `Type` of an already defined media type.
+* You can define new output formats or redefine built-in output formats; e.g., if you want to put `AMP` pages in a different path.
+
+To add or modify an output format, define it in an `outputFormats` section in your site's [configuration file](/getting-started/configuration/), either for all sites or for a given language.
+
+{{< code-toggle file="config" >}}
+[outputFormats.MyEnrichedFormat]
+mediaType = "text/enriched"
+baseName = "myindex"
+isPlainText = true
+protocol = "bep://"
+{{</ code-toggle >}}
+
+The above example is fictional, but if used for the homepage on a site with `baseURL` `https://example.org`, it will produce a plain text homepage with the URL `bep://example.org/myindex.enr`.
+
+### Configure Output Formats
+
+The following is the full list of configuration options for output formats and their default values:
+
+`name`
+: the output format identifier. This is used to define what output format(s) you want for your pages.
+
+`mediaType`
+: this must match the `Type` of a defined media type.
+
+`path`
+: sub path to save the output files.
+
+`baseName`
+: the base filename for the list filenames (homepage, etc.). **Default:** `index`.
+
+`rel`
+: can be used to create `rel` values in `link` tags. **Default:** `alternate`.
+
+`protocol`
+: will replace the "http://" or "https://" in your `baseURL` for this output format.
+
+`isPlainText`
+: use Go's plain text templates parser for the templates. **Default:** `false`.
+
+`isHTML`
+: used in situations only relevant for `HTML`-type formats; e.g., page aliases.
+
+`noUgly`
+: used to turn off ugly URLs If `uglyURLs` is set to `true` in your site. **Default:** `false`.
+
+`notAlternative`
+: enable if it doesn't make sense to include this format in an `AlternativeOutputFormats` format listing on `Page` (e.g., with `CSS`). Note that we use the term *alternative* and not *alternate* here, as it does not necessarily replace the other format. **Default:** `false`.
+
+`permalinkable`
+: make `.Permalink` and `.RelPermalink` return the rendering Output Format rather than main ([see below](#link-to-output-formats)). This is enabled by default for `HTML` and `AMP`. **Default:** `false`.
+
+`weight`
+: Setting this to a non-zero value will be used as the first sort criteria.
+
+## Output Formats for Pages
+
+A `Page` in Hugo can be rendered to multiple *output formats* on the file
+system.
+
+### Default Output Formats
+Every `Page` has a [`Kind`][page_kinds] attribute, and the default Output
+Formats are set based on that.
+
+| Kind | Default Output Formats |
+|--------------- |----------------------- |
+| `page` | HTML |
+| `home` | HTML, RSS |
+| `section` | HTML, RSS |
+| `taxonomy` | HTML, RSS |
+| `term` | HTML, RSS |
+
+### Customizing Output Formats
+
+This can be changed by defining an `outputs` list of output formats in either
+the `Page` front matter or in the site configuration (either for all sites or
+per language).
+
+Example from site config file:
+
+{{< code-toggle file="config" >}}
+[outputs]
+ home = ["HTML", "AMP", "RSS"]
+ page = ["HTML"]
+{{</ code-toggle >}}
+
+
+Note that in the above examples, the *output formats* for `section`,
+`taxonomy` and `term` will stay at their default value `["HTML",
+"RSS"]`.
+
+{{< new-in "0.73.0" >}} We have fixed the before confusing page kinds used for taxonomies (see the listing below) to be in line with the terms used when we talk about taxonomies. We have been careful to avoid site breakage, and you should get an ERROR in the console if you need to adjust your `outputs` section.
+
+{{% page-kinds %}}
+
+* The `outputs` definition is per [`Page` `Kind`][page_kinds] (`page`, `home`, `section`, `taxonomy`, or `term`).
+* The names (e.g. `HTML`, `AMP`) used must match the `Name` of a defined *Output Format*.
+ * These names are case insensitive.
+* These can be overridden per `Page` in the front matter of content files.
+
+The following is an example of `YAML` front matter in a content file that defines output formats for the rendered `Page`:
+
+```yaml
+---
+date: "2016-03-19"
+outputs:
+- html
+- amp
+- json
+---
+```
+
+## List Output formats
+
+Each `Page` has both an `.OutputFormats` (all formats, including the current) and an `.AlternativeOutputFormats` variable, the latter of which is useful for creating a `link rel` list in your site's `<head>`:
+
+```go-html-template
+{{ range .AlternativeOutputFormats -}}
+<link rel="{{ .Rel }}" type="{{ .MediaType.Type }}" href="{{ .Permalink | safeURL }}">
+{{ end -}}
+```
+
+## Link to Output Formats
+
+`.Permalink` and `.RelPermalink` on `Page` will return the first output format defined for that page (usually `HTML` if nothing else is defined). This is regardless of the template file they are being called from.
+
+__from `single.json.json`:__
+```go-html-template
+{{ .RelPermalink }} > /that-page/
+{{ with .OutputFormats.Get "json" -}}
+{{ .RelPermalink }} > /that-page/index.json
+{{- end }}
+```
+
+In order for them to return the output format of the current template file instead, the given output format should have its `permalinkable` setting set to true.
+
+__Same template file as above with json output format's `permalinkable` set to true:__
+
+```go-html-template
+{{ .RelPermalink }} > /that-page/index.json
+{{ with .OutputFormats.Get "html" -}}
+{{ .RelPermalink }} > /that-page/
+{{- end }}
+```
+
+From content files, you can use the [`ref` or `relref` shortcodes](/content-management/shortcodes/#ref-and-relref):
+
+```go-html-template
+[Neat]({{</* ref "blog/neat.md" "amp" */>}})
+[Who]({{</* relref "about.md#who" "amp" */>}})
+```
+
+## Templates for Your Output Formats
+
+A new output format needs a corresponding template in order to render anything useful.
+
+{{% note %}}
+The key distinction for Hugo versions 0.20 and newer is that Hugo looks at an output format's `Name` and MediaType's `Suffixes` when choosing the template used to render a given `Page`.
+{{% /note %}}
+
+The following table shows examples of different output formats, the suffix used, and Hugo's respective template [lookup order][]. All of the examples in the table can:
+
+* Use a [base template][base].
+* Include [partial templates][partials]
+
+{{< datatable "output" "layouts" "Example" "OutputFormat" "Suffix" "Template Lookup Order" >}}
+
+Hugo will now also detect the media type and output format of partials, if possible, and use that information to decide if the partial should be parsed as a plain text template or not.
+
+Hugo will look for the name given, so you can name it whatever you want. But if you want it treated as plain text, you should use the file suffix and, if needed, the name of the Output Format. The pattern is as follows:
+
+```
+[partial name].[OutputFormat].[suffix]
+```
+
+The partial below is a plain text template (Output Format is `CSV`, and since this is the only output format with the suffix `csv`, we don't need to include the Output Format's `Name`):
+
+```
+{{ partial "mytextpartial.csv" . }}
+```
+
+[base]: /templates/base/
+[config]: /getting-started/configuration/
+[lookup order]: /templates/lookup/
+[media type]: https://en.wikipedia.org/wiki/Media_type
+[partials]: /templates/partials/
+[page_kinds]: /templates/section-templates/#page-kinds
diff --git a/docs/content/en/templates/pagination.md b/docs/content/en/templates/pagination.md
new file mode 100644
index 000000000..d89735f7c
--- /dev/null
+++ b/docs/content/en/templates/pagination.md
@@ -0,0 +1,161 @@
+---
+title: Pagination
+linktitle: Pagination
+description: Hugo supports pagination for your homepage, section pages, and taxonomies.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [templates]
+keywords: [lists,sections,pagination]
+menu:
+ docs:
+ parent: "templates"
+ weight: 140
+weight: 140
+sections_weight: 140
+draft: false
+aliases: [/extras/pagination,/doc/pagination/]
+toc: true
+---
+
+The real power of Hugo pagination shines when combined with the [`where` function][where] and its SQL-like operators: [`first`][], [`last`][], and [`after`][]. You can even [order the content][lists] the way you've become used to with Hugo.
+
+## Configure Pagination
+
+Pagination can be configured in your [site configuration][configuration]:
+
+`paginate`
+: default = `10`. This setting can be overridden within the template.
+
+`paginatePath`
+: default = `page`. Allows you to set a different path for your pagination pages.
+
+Setting `paginate` to a positive value will split the list pages for the homepage, sections and taxonomies into chunks of that size. But note that the generation of the pagination pages for sections, taxonomies and homepage is *lazy* --- the pages will not be created if not referenced by a `.Paginator` (see below).
+
+`paginatePath` is used to adapt the `URL` to the pages in the paginator (the default setting will produce URLs on the form `/page/1/`.
+
+## List Paginator Pages
+
+{{% warning %}}
+`.Paginator` is provided to help you build a pager menu. This feature is currently only supported on homepage and list pages (i.e., taxonomies and section lists).
+{{% /warning %}}
+
+There are two ways to configure and use a `.Paginator`:
+
+1. The simplest way is just to call `.Paginator.Pages` from a template. It will contain the pages for *that page*.
+2. Select another set of pages with the available template functions and ordering options, and pass the slice to `.Paginate`, e.g.
+ * `{{ range (.Paginate ( first 50 .Pages.ByTitle )).Pages }}` or
+ * `{{ range (.Paginate .RegularPagesRecursive).Pages }}`.
+
+For a given **Page**, it's one of the options above. The `.Paginator` is static and cannot change once created.
+
+If you call `.Paginator` or `.Paginate` multiple times on the same page, you should ensure all the calls are identical. Once *either* `.Paginator` or `.Paginate` is called while generating a page, its result is cached, and any subsequent similar call will reuse the cached result. This means that any such calls which do not match the first one will not behave as written.
+
+(Remember that function arguments are eagerly evaluated, so a call like `$paginator := cond x .Paginator (.Paginate .RegularPagesRecursive)` is an example of what you should *not* do. Use `if`/`else` instead to ensure exactly one evaluation.)
+
+The global page size setting (`Paginate`) can be overridden by providing a positive integer as the last argument. The examples below will give five items per page:
+
+* `{{ range (.Paginator 5).Pages }}`
+* `{{ $paginator := .Paginate (where .Pages "Type" "posts") 5 }}`
+
+It is also possible to use the `GroupBy` functions in combination with pagination:
+
+```
+{{ range (.Paginate (.Pages.GroupByDate "2006")).PageGroups }}
+```
+
+## Build the navigation
+
+The `.Paginator` contains enough information to build a paginator interface.
+
+The easiest way to add this to your pages is to include the built-in template (with `Bootstrap`-compatible styles):
+
+```
+{{ template "_internal/pagination.html" . }}
+```
+
+{{% note "When to Create `.Paginator`" %}}
+If you use any filters or ordering functions to create your `.Paginator` *and* you want the navigation buttons to be shown before the page listing, you must create the `.Paginator` before it's used.
+{{% /note %}}
+
+The following example shows how to create `.Paginator` before its used:
+
+```
+{{ $paginator := .Paginate (where .Pages "Type" "posts") }}
+{{ template "_internal/pagination.html" . }}
+{{ range $paginator.Pages }}
+ {{ .Title }}
+{{ end }}
+```
+
+Without the `where` filter, the above example is even simpler:
+
+```
+{{ template "_internal/pagination.html" . }}
+{{ range .Paginator.Pages }}
+ {{ .Title }}
+{{ end }}
+```
+
+If you want to build custom navigation, you can do so using the `.Paginator` object, which includes the following properties:
+
+`PageNumber`
+: The current page's number in the pager sequence
+
+`URL`
+: The relative URL to the current pager
+
+`Pages`
+: The pages in the current pager
+
+`NumberOfElements`
+: The number of elements on this page
+
+`HasPrev`
+: Whether there are page(s) before the current
+
+`Prev`
+: The pager for the previous page
+
+`HasNext`
+: Whether there are page(s) after the current
+
+`Next`
+: The pager for the next page
+
+`First`
+: The pager for the first page
+
+`Last`
+: The pager for the last page
+
+`Pagers`
+: A list of pagers that can be used to build a pagination menu
+
+`PageSize`
+: Size of each pager
+
+`TotalPages`
+: The number of pages in the paginator
+
+`TotalNumberOfElements`
+: The number of elements on all pages in this paginator
+
+## Additional information
+
+The pages are built on the following form (`BLANK` means no value):
+
+```
+[SECTION/TAXONOMY/BLANK]/index.html
+[SECTION/TAXONOMY/BLANK]/page/1/index.html => redirect to [SECTION/TAXONOMY/BLANK]/index.html
+[SECTION/TAXONOMY/BLANK]/page/2/index.html
+....
+```
+
+
+[`first`]: /functions/first/
+[`last`]: /functions/last/
+[`after`]: /functions/after/
+[configuration]: /getting-started/configuration/
+[lists]: /templates/lists/
+[where]: /functions/where/
diff --git a/docs/content/en/templates/partials.md b/docs/content/en/templates/partials.md
new file mode 100644
index 000000000..a1030f6aa
--- /dev/null
+++ b/docs/content/en/templates/partials.md
@@ -0,0 +1,206 @@
+---
+title: Partial Templates
+linktitle: Partial Templates
+description: Partials are smaller, context-aware components in your list and page templates that can be used economically to keep your templating DRY.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [templates]
+keywords: [lists,sections,partials]
+menu:
+ docs:
+ parent: "templates"
+ weight: 90
+weight: 90
+sections_weight: 90
+draft: false
+aliases: [/templates/partial/,/layout/chrome/,/extras/analytics/]
+toc: true
+---
+
+{{< youtube pjS4pOLyB7c >}}
+
+## Partial Template Lookup Order
+
+Partial templates---like [single page templates][singletemps] and [list page templates][listtemps]---have a specific [lookup order][]. However, partials are simpler in that Hugo will only check in two places:
+
+1. `layouts/partials/*<PARTIALNAME>.html`
+2. `themes/<THEME>/layouts/partials/*<PARTIALNAME>.html`
+
+This allows a theme's end user to copy a partial's contents into a file of the same name for [further customization][customize].
+
+## Use Partials in your Templates
+
+All partials for your Hugo project are located in a single `layouts/partials` directory. For better organization, you can create multiple subdirectories within `partials` as well:
+
+```
+.
+└── layouts
+ └── partials
+ ├── footer
+ │   ├── scripts.html
+ │   └── site-footer.html
+ ├── head
+ │   ├── favicons.html
+ │   ├── metadata.html
+ │   ├── prerender.html
+ │   └── twitter.html
+ └── header
+ ├── site-header.html
+ └── site-nav.html
+```
+
+All partials are called within your templates using the following pattern:
+
+```
+{{ partial "<PATH>/<PARTIAL>.html" . }}
+```
+
+{{% note %}}
+One of the most common mistakes with new Hugo users is failing to pass a context to the partial call. In the pattern above, note how "the dot" (`.`) is required as the second argument to give the partial context. You can read more about "the dot" in the [Hugo templating introduction](/templates/introduction/).
+{{% /note %}}
+
+{{% note %}}
+`<PARTIAL>` including `baseof` is reserved. ([#5373](https://github.com/gohugoio/hugo/issues/5373))
+{{% /note %}}
+
+As shown in the above example directory structure, you can nest your directories within `partials` for better source organization. You only need to call the nested partial's path relative to the `partials` directory:
+
+```
+{{ partial "header/site-header.html" . }}
+{{ partial "footer/scripts.html" . }}
+```
+
+### Variable Scoping
+
+The second argument in a partial call is the variable being passed down. The above examples are passing the `.`, which tells the template receiving the partial to apply the current [context][context].
+
+This means the partial will *only* be able to access those variables. The partial is isolated and *has no access to the outer scope*. From within the partial, `$.Var` is equivalent to `.Var`.
+
+## Returning a value from a Partial
+
+In addition to outputting markup, partials can be used to return a value of any type. In order to return a value, a partial must include a lone `return` statement.
+
+## Inline partials
+
+{{< new-in "0.74.0" >}}
+
+You can also define partials inline in the template. But remember that template namespace is global, so you need to make sure that the names are unique to avoid conflicts.
+
+```go-html-template
+Value: {{ partial "my-inline-partial" . }}
+
+{{ define "partials/my-inline-partial" }}
+{{ $value := 32 }}
+{{ return $value }}
+{{ end }}
+```
+
+### Example GetFeatured
+```go-html-template
+{{/* layouts/partials/GetFeatured.html */}}
+{{ return first . (where site.RegularPages "Params.featured" true) }}
+```
+
+```go-html-template
+{{/* layouts/index.html */}}
+{{ range partial "GetFeatured.html" 5 }}
+ [...]
+{{ end }}
+```
+### Example GetImage
+```go-html-template
+{{/* layouts/partials/GetImage.html */}}
+{{ $image := false }}
+{{ with .Params.gallery }}
+ {{ $image = index . 0 }}
+{{ end }}
+{{ with .Params.image }}
+ {{ $image = . }}
+{{ end }}
+{{ return $image }}
+```
+
+```go-html-template
+{{/* layouts/_default/single.html */}}
+{{ with partial "GetImage.html" . }}
+ [...]
+{{ end }}
+```
+
+{{% note %}}
+Only one `return` statement is allowed per partial file.
+{{% /note %}}
+
+## Cached Partials
+
+The [`partialCached` template function][partialcached] can offer significant performance gains for complex templates that don't need to be re-rendered on every invocation. The simplest usage is as follows:
+
+```
+{{ partialCached "footer.html" . }}
+```
+
+You can also pass additional parameters to `partialCached` to create *variants* of the cached partial.
+
+For example, you can tell Hugo to only render the partial `footer.html` once per section:
+
+```
+{{ partialCached "footer.html" . .Section }}
+```
+
+If you need to pass additional parameters to create unique variants, you can pass as many variant parameters as you need:
+
+```
+{{ partialCached "footer.html" . .Params.country .Params.province }}
+```
+
+Note that the variant parameters are not made available to the underlying partial template. They are only use to create a unique cache key.
+
+### Example `header.html`
+
+The following `header.html` partial template is used for [spf13.com](https://spf13.com/):
+
+{{< code file="layouts/partials/header.html" download="header.html" >}}
+<!DOCTYPE html>
+<html class="no-js" lang="en-US" prefix="og: http://ogp.me/ns# fb: http://ogp.me/ns/fb#">
+<head>
+ <meta charset="utf-8">
+
+ {{ partial "meta.html" . }}
+
+ <base href="{{ .Site.BaseURL }}">
+ <title> {{ .Title }} : spf13.com </title>
+ <link rel="canonical" href="{{ .Permalink }}">
+ {{ if .RSSLink }}<link href="{{ .RSSLink }}" rel="alternate" type="application/rss+xml" title="{{ .Title }}" />{{ end }}
+
+ {{ partial "head_includes.html" . }}
+</head>
+{{< /code >}}
+
+{{% note %}}
+The `header.html` example partial was built before the introduction of block templates to Hugo. Read more on [base templates and blocks](/templates/base/) for defining the outer chrome or shell of your master templates (i.e., your site's head, header, and footer). You can even combine blocks and partials for added flexibility.
+{{% /note %}}
+
+### Example `footer.html`
+
+The following `footer.html` partial template is used for [spf13.com](https://spf13.com/):
+
+{{< code file="layouts/partials/footer.html" download="footer.html" >}}
+<footer>
+ <div>
+ <p>
+ &copy; 2013-14 Steve Francia.
+ <a href="https://creativecommons.org/licenses/by/3.0/" title="Creative Commons Attribution">Some rights reserved</a>;
+ please attribute properly and link back.
+ </p>
+ </div>
+</footer>
+{{< /code >}}
+
+[context]: /templates/introduction/ "The most easily overlooked concept to understand about Go templating is how the dot always refers to the current context."
+[customize]: /themes/customizing/ "Hugo provides easy means to customize themes as long as users are familiar with Hugo's template lookup order."
+[listtemps]: /templates/lists/ "To effectively leverage Hugo's system, see how Hugo handles list pages, where content for sections, taxonomies, and the homepage are listed and ordered."
+[lookup order]: /templates/lookup-order/ "To keep your templating dry, read the documentation on Hugo's lookup order."
+[partialcached]: /functions/partialcached/ "Use the partial cached function to improve build times in cases where Hugo can cache partials that don't need to be rendered with every page."
+[singletemps]: /templates/single-page-templates/ "The most common form of template in Hugo is the single content template. Read the docs on how to create templates for individual pages."
+[themes]: /themes/
diff --git a/docs/content/en/templates/robots.md b/docs/content/en/templates/robots.md
new file mode 100644
index 000000000..52a77314b
--- /dev/null
+++ b/docs/content/en/templates/robots.md
@@ -0,0 +1,66 @@
+---
+title: Robots.txt File
+linktitle: Robots.txt
+description: Hugo can generate a customized robots.txt in the same way as any other template.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [templates]
+keywords: [robots,search engines]
+menu:
+ docs:
+ parent: "templates"
+ weight: 165
+weight: 165
+sections_weight: 165
+draft: false
+aliases: [/extras/robots-txt/]
+toc: false
+---
+
+To generate a robots.txt file from a template, change the [site configuration][config]:
+
+{{< code-toggle file="config">}}
+enableRobotsTXT = true
+{{< /code-toggle >}}
+
+By default, Hugo generates robots.txt using an [internal template][internal].
+
+```text
+User-agent: *
+```
+
+Search engines that honor the Robots Exclusion Protocol will interpret this as permission to crawl everything on the site.
+
+## Robots.txt Template Lookup Order
+
+You may overwrite the internal template with a custom template. Hugo selects the template using this lookup order:
+
+1. `/layouts/robots.txt`
+2. `/themes/<THEME>/layouts/robots.txt`
+
+## Robots.txt Template Example
+
+{{< code file="layouts/robots.txt" download="robots.txt" >}}
+User-agent: *
+{{ range .Pages }}
+Disallow: {{ .RelPermalink }}
+{{ end }}
+{{< /code >}}
+
+This template creates a robots.txt file with a `Disallow` directive for each page on the site. Search engines that honor the Robots Exclusion Protocol will not crawl any page on the site.
+
+{{% note %}}
+To create a robots.txt file without using a template:
+
+1. Set `enableRobotsTXT` to `false` in the [site configuration][config].
+2. Create a robots.txt file in the `static` directory.
+
+Remember that Hugo copies everything in the [static directory][static] to the root of `publishDir` (typically `public`) when you build your site.
+
+[config]: /getting-started/configuration/
+[static]: /getting-started/directory-structure/
+{{% /note %}}
+
+[config]: /getting-started/configuration/
+[internal]: https://github.com/gohugoio/hugo/blob/master/tpl/tplimpl/embedded/templates/_default/robots.txt
diff --git a/docs/content/en/templates/rss.md b/docs/content/en/templates/rss.md
new file mode 100644
index 000000000..009ba241a
--- /dev/null
+++ b/docs/content/en/templates/rss.md
@@ -0,0 +1,92 @@
+---
+title: RSS Templates
+linktitle: RSS Templates
+description: Hugo ships with its own RSS 2.0 template that requires almost no configuration, or you can create your own RSS templates.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+keywords: [rss, xml, templates]
+categories: [templates]
+menu:
+ docs:
+ parent: "templates"
+ weight: 150
+weight: 150
+sections_weight: 150
+draft: false
+toc: true
+---
+
+## RSS Template Lookup Order
+
+See [Template Lookup Order](/templates/lookup-order/) for the complete reference.
+
+{{% note "Hugo Ships with an RSS Template" %}}
+Hugo ships with its own [RSS 2.0 template](#the-embedded-rssxml). The embedded template will be sufficient for most use cases.
+{{% /note %}}
+
+RSS pages are of the type `Page` and have all the [page variables](/variables/page/) available to use in the templates.
+
+### Section RSS
+
+A [section’s][section] RSS will be rendered at `/<SECTION>/index.xml` (e.g., [https://spf13.com/project/index.xml](https://spf13.com/project/index.xml)).
+
+Hugo provides the ability for you to define any RSS type you wish and can have different RSS files for each section and taxonomy.
+
+## Lookup Order for RSS Templates
+
+The table below shows the RSS template lookup order for the different page kinds. The first listing shows the lookup order when running with a theme (`demoTheme`).
+
+{{< datatable-filtered "output" "layouts" "OutputFormat == RSS" "Example" "OutputFormat" "Suffix" "Template Lookup Order" >}}
+
+## Configure RSS
+
+By default, Hugo will create an unlimited number of RSS entries. You can limit the number of articles included in the built-in RSS templates by assigning a numeric value to `rssLimit:` field in your project's [`config` file][config].
+
+The following values will also be included in the RSS output if specified:
+
+{{< code-toggle file="config" >}}
+languageCode = "en-us"
+copyright = "This work is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License."
+
+[author]
+ name = "My Name Here"
+{{< /code-toggle >}}
+
+## The Embedded rss.xml
+
+This is the default RSS template that ships with Hugo:
+
+https://github.com/gohugoio/hugo/blob/master/tpl/tplimpl/embedded/templates/_default/rss.xml
+
+## Reference your RSS Feed in `<head>`
+
+In your `header.html` template, you can specify your RSS feed in your `<head></head>` tag using Hugo's [Output Formats][Output Formats] like this:
+
+```go-html-template
+{{ range .AlternativeOutputFormats -}}
+ {{ printf `<link rel="%s" type="%s" href="%s" title="%s" />` .Rel .MediaType.Type .Permalink $.Site.Title | safeHTML }}
+{{ end -}}
+```
+
+If you only want the RSS link, you can query the formats:
+
+```go-html-template
+{{ with .OutputFormats.Get "rss" -}}
+ {{ printf `<link rel="%s" type="%s" href="%s" title="%s" />` .Rel .MediaType.Type .Permalink $.Site.Title | safeHTML }}
+{{ end -}}
+```
+
+Either of the two snippets above will generate the below `link` tag on the site homepage for RSS output:
+
+```html
+<link rel="alternate" type="application/rss+xml" href="https://example.com/index.xml" title="Site Title">
+```
+
+_We are assuming `BaseURL` to be `https://example.com/` and `$.Site.Title` to be `"Site Title"` in this example._
+
+[config]: /getting-started/configuration/
+[embedded]: #the-embedded-rss-xml
+[RSS 2.0]: https://cyber.harvard.edu/rss/rss.html "RSS 2.0 Specification"
+[section]: /content-management/sections/
+[Output Formats]: /templates/output-formats/#link-to-output-formats
diff --git a/docs/content/en/templates/section-templates.md b/docs/content/en/templates/section-templates.md
new file mode 100644
index 000000000..a40e2a2d7
--- /dev/null
+++ b/docs/content/en/templates/section-templates.md
@@ -0,0 +1,116 @@
+---
+title: Section Page Templates
+linktitle: Section Templates
+description: Templates used for section pages are **lists** and therefore have all the variables and methods available to list pages.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [templates]
+keywords: [lists,sections,templates]
+menu:
+ docs:
+ parent: "templates"
+ weight: 40
+weight: 40
+sections_weight: 40
+draft: false
+aliases: [/templates/sections/]
+toc: true
+---
+
+## Add Content and Front Matter to Section Templates
+
+To effectively leverage section page templates, you should first understand Hugo's [content organization](/content-management/organization/) and, specifically, the purpose of `_index.md` for adding content and front matter to section and other list pages.
+
+## Section Template Lookup Order
+
+See [Template Lookup](/templates/lookup-order/).
+
+## Page Kinds
+
+Every `Page` in Hugo has a `.Kind` attribute.
+
+{{% page-kinds %}}
+
+## `.Site.GetPage` with Sections
+
+`Kind` can easily be combined with the [`where` function][where] in your templates to create kind-specific lists of content. This method is ideal for creating lists, but there are times where you may want to fetch just the index page of a single section via the section's path.
+
+The [`.GetPage` function][getpage] looks up an index page of a given `Kind` and `path`.
+
+You can call `.Site.GetPage` with two arguments: `kind` (one of the valid values
+of `Kind` from above) and `kind value`.
+
+Examples:
+
+- `{{ .Site.GetPage "section" "posts" }}`
+- `{{ .Site.GetPage "page" "search" }}`
+
+## Example: Creating a Default Section Template
+
+{{< code file="layouts/_default/section.html" download="section.html" >}}
+{{ define "main" }}
+ <main>
+ {{ .Content }}
+ <ul class="contents">
+ {{ range .Paginator.Pages }}
+ <li>{{.Title}}
+ <div>
+ {{ partial "summary.html" . }}
+ </div>
+ </li>
+ {{ end }}
+ </ul>
+ {{ partial "pagination.html" . }}
+ </main>
+{{ end }}
+{{< /code >}}
+
+### Example: Using `.Site.GetPage`
+
+The `.Site.GetPage` example that follows assumes the following project directory structure:
+
+```
+.
+└── content
+ ├── blog
+ │   ├── _index.md # "title: My Hugo Blog" in the front matter
+ │   ├── post-1.md
+ │   ├── post-2.md
+ │   └── post-3.md
+ └── events #Note there is no _index.md file in "events"
+ ├── event-1.md
+ └── event-2.md
+```
+
+`.Site.GetPage` will return `nil` if no `_index.md` page is found. Therefore, if `content/blog/_index.md` does not exist, the template will output the section name:
+
+```
+<h1>{{ with .Site.GetPage "section" "blog" }}{{ .Title }}{{ end }}</h1>
+```
+
+Since `blog` has a section index page with front matter at `content/blog/_index.md`, the above code will return the following result:
+
+```
+<h1>My Hugo Blog</h1>
+```
+
+If we try the same code with the `events` section, however, Hugo will default to the section title because there is no `content/events/_index.md` from which to pull content and front matter:
+
+```
+<h1>{{ with .Site.GetPage "section" "events" }}{{ .Title }}{{ end }}</h1>
+```
+
+Which then returns the following:
+
+```
+<h1>Events</h1>
+```
+
+
+[contentorg]: /content-management/organization/
+[getpage]: /functions/getpage/
+[lists]: /templates/lists/
+[lookup]: /templates/lookup-order/
+[where]: /functions/where/
+[sections]: /content-management/sections/
diff --git a/docs/content/en/templates/shortcode-templates.md b/docs/content/en/templates/shortcode-templates.md
new file mode 100644
index 000000000..487037bf0
--- /dev/null
+++ b/docs/content/en/templates/shortcode-templates.md
@@ -0,0 +1,418 @@
+---
+title: Create Your Own Shortcodes
+linktitle: Shortcode Templates
+description: You can extend Hugo's built-in shortcodes by creating your own using the same templating syntax as that for single and list pages.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [templates]
+keywords: [shortcodes,templates]
+menu:
+ docs:
+ parent: "templates"
+ weight: 100
+weight: 100
+sections_weight: 100
+draft: false
+aliases: []
+toc: true
+---
+
+Shortcodes are a means to consolidate templating into small, reusable snippets that you can embed directly inside of your content. In this sense, you can think of shortcodes as the intermediary between [page and list templates][templates] and [basic content files][].
+
+{{% note %}}
+Hugo also ships with built-in shortcodes for common use cases. (See [Content Management: Shortcodes](/content-management/shortcodes/).)
+{{% /note %}}
+
+## Create Custom Shortcodes
+
+Hugo's built-in shortcodes cover many common, but not all, use cases. Luckily, Hugo provides the ability to easily create custom shortcodes to meet your website's needs.
+
+{{< youtube Eu4zSaKOY4A >}}
+
+### File Location
+
+To create a shortcode, place an HTML template in the `layouts/shortcodes` directory of your [source organization][]. Consider the file name carefully since the shortcode name will mirror that of the file but without the `.html` extension. For example, `layouts/shortcodes/myshortcode.html` will be called with either `{{</* myshortcode /*/>}}` or `{{%/* myshortcode /*/%}}` depending on the type of parameters you choose.
+
+You can organize your shortcodes in subfolders, e.g. in `layouts/shortcodes/boxes`. These shortcodes would then be accessible with their relative path, e.g:
+
+```
+{{</* boxes/square */>}}
+```
+
+Note the forward slash.
+
+### Shortcode Template Lookup Order
+
+Shortcode templates have a simple [lookup order][]:
+
+1. `/layouts/shortcodes/<SHORTCODE>.html`
+2. `/themes/<THEME>/layouts/shortcodes/<SHORTCODE>.html`
+
+### Positional vs Named Parameters
+
+You can create shortcodes using the following types of parameters:
+
+* Positional parameters
+* Named parameters
+* Positional *or* named parameters (i.e, "flexible")
+
+In shortcodes with positional parameters, the order of the parameters is important. If a shortcode has a single required value (e.g., the `youtube` shortcode below), positional parameters work very well and require less typing from content authors.
+
+For more complex layouts with multiple or optional parameters, named parameters work best. While less terse, named parameters require less memorization from a content author and can be added in a shortcode declaration in any order.
+
+Allowing both types of parameters (i.e., a "flexible" shortcode) is useful for complex layouts where you want to set default values that can be easily overridden by users.
+
+### Access Parameters
+
+All shortcode parameters can be accessed via the `.Get` method. Whether you pass a key (i.e., string) or a number to the `.Get` method depends on whether you are accessing a named or positional parameter, respectively.
+
+To access a parameter by name, use the `.Get` method followed by the named parameter as a quoted string:
+
+```
+{{ .Get "class" }}
+```
+
+To access a parameter by position, use the `.Get` followed by a numeric position, keeping in mind that positional parameters are zero-indexed:
+
+```
+{{ .Get 0 }}
+```
+
+For the second position, you would just use:
+
+```
+{{ .Get 1 }}
+```
+
+`with` is great when the output depends on a parameter being set:
+
+```
+{{ with .Get "class" }} class="{{ . }}"{{ end }}
+```
+
+`.Get` can also be used to check if a parameter has been provided. This is
+most helpful when the condition depends on either of the values, or both:
+
+```
+{{ if or (.Get "title") (.Get "alt") }} alt="{{ with .Get "alt" }}{{ . }}{{ else }}{{ .Get "title" }}{{ end }}"{{ end }}
+```
+
+#### `.Inner`
+
+If a closing shortcode is used, the `.Inner` variable will be populated with all of the content between the opening and closing shortcodes. If a closing shortcode is required, you can check the length of `.Inner` as an indicator of its existence.
+
+A shortcode with content declared via the `.Inner` variable can also be declared without the
+content and without the closing
+by using the self-closing syntax:
+
+```
+{{</* innershortcode /*/>}}
+```
+
+#### `.Params`
+
+The `.Params` variable in shortcodes contains the list parameters passed to shortcode for more complicated use cases. You can also access higher-scoped parameters with the following logic:
+
+`$.Params`
+: these are the parameters passed directly into the shortcode declaration (e.g., a YouTube video ID)
+
+`$.Page.Params`
+: refers to the page's params; the "page" in this case refers to the content file in which the shortcode is declared (e.g., a `shortcode_color` field in a content's front matter could be accessed via `$.Page.Params.shortcode_color`).
+
+`$.Page.Site.Params`
+: refers to global variables as defined in your [site's configuration file][config].
+
+#### `.IsNamedParams`
+
+The `.IsNamedParams` variable checks whether the shortcode declaration uses named parameters and returns a boolean value.
+
+For example, you could create an `image` shortcode that can take either a `src` named parameter or the first positional parameter, depending on the preference of the content's author. Let's assume the `image` shortcode is called as follows:
+
+```
+{{</* image src="images/my-image.jpg" */>}}
+```
+
+You could then include the following as part of your shortcode templating:
+
+```
+{{ if .IsNamedParams }}
+<img src="{{ .Get "src" }}" alt="">
+{{ else }}
+<img src="{{ .Get 0 }}" alt="">
+{{ end }}
+```
+
+See the [example Vimeo shortcode][vimeoexample] below for `.IsNamedParams` in action.
+
+{{% warning %}}
+While you can create shortcode templates that accept both positional and named parameters, you *cannot* declare shortcodes in content with a mix of parameter types. Therefore, a shortcode declared like `{{</* image src="images/my-image.jpg" "This is my alt text" */>}}` will return an error.
+{{% /warning %}}
+
+You can also use the variable `.Page` to access all the normal [page variables][pagevars].
+
+A shortcodes can also be nested. In a nested shortcode, you can access the parent shortcode context with [`.Parent` variable][shortcodesvars]. This can be very useful for inheritance of common shortcode parameters from the root.
+
+### Checking for Existence
+
+You can check if a specific shortcode is used on a page by calling `.HasShortcode` in that page template, providing the name of the shortcode. This is sometimes useful when you want to include specific scripts or styles in the header that are only used by that shortcode.
+
+## Custom Shortcode Examples
+
+The following are examples of the different types of shortcodes you can create via shortcode template files in `/layouts/shortcodes`.
+
+### Single-word Example: `year`
+
+Let's assume you would like to keep mentions of your copyright year current in your content files without having to continually review your markdown. Your goal is to be able to call the shortcode as follows:
+
+```
+{{</* year */>}}
+```
+
+{{< code file="/layouts/shortcodes/year.html" >}}
+{{ now.Format "2006" }}
+{{< /code >}}
+
+### Single Positional Example: `youtube`
+
+Embedded videos are a common addition to markdown content that can quickly become unsightly. The following is the code used by [Hugo's built-in YouTube shortcode][youtubeshortcode]:
+
+```
+{{</* youtube 09jf3ow9jfw */>}}
+```
+
+Would load the template at `/layouts/shortcodes/youtube.html`:
+
+{{< code file="/layouts/shortcodes/youtube.html" >}}
+<div class="embed video-player">
+<iframe class="youtube-player" type="text/html" width="640" height="385" src="https://www.youtube.com/embed/{{ index .Params 0 }}" allowfullscreen frameborder="0">
+</iframe>
+</div>
+{{< /code >}}
+
+{{< code file="youtube-embed.html" copy="false" >}}
+<div class="embed video-player">
+ <iframe class="youtube-player" type="text/html"
+ width="640" height="385"
+ src="https://www.youtube.com/embed/09jf3ow9jfw"
+ allowfullscreen frameborder="0">
+ </iframe>
+</div>
+{{< /code >}}
+
+### Single Named Example: `image`
+
+Let's say you want to create your own `img` shortcode rather than use Hugo's built-in [`figure` shortcode][figure]. Your goal is to be able to call the shortcode as follows in your content files:
+
+{{< code file="content-image.md" >}}
+{{</* img src="/media/spf13.jpg" title="Steve Francia" */>}}
+{{< /code >}}
+
+You have created the shortcode at `/layouts/shortcodes/img.html`, which loads the following shortcode template:
+
+{{< code file="/layouts/shortcodes/img.html" >}}
+<!-- image -->
+<figure {{ with .Get "class" }}class="{{.}}"{{ end }}>
+ {{ with .Get "link" }}<a href="{{ . }}">{{ end }}
+ <img src="{{ .Get "src" }}" {{ if or (.Get "alt") (.Get "caption") }}alt="{{ with .Get "alt" }}{{ . }}{{ else }}{{ .Get "caption" }}{{ end }}"{{ end }} />
+ {{ if .Get "link" }}</a>{{ end }}
+ {{ if or (or (.Get "title") (.Get "caption")) (.Get "attr") }}
+ <figcaption>{{ if isset .Params "title" }}
+ <h4>{{ .Get "title" }}</h4>{{ end }}
+ {{ if or (.Get "caption") (.Get "attr") }}<p>
+ {{ .Get "caption" }}
+ {{ with .Get "attrlink" }}<a href="{{ . }}"> {{ end }}
+ {{ .Get "attr" }}
+ {{ if .Get "attrlink" }}</a> {{ end }}
+ </p> {{ end }}
+ </figcaption>
+ {{ end }}
+</figure>
+<!-- image -->
+{{< /code >}}
+
+Would be rendered as:
+
+{{< code file="img-output.html" copy="false" >}}
+<figure>
+ <img src="/media/spf13.jpg" />
+ <figcaption>
+ <h4>Steve Francia</h4>
+ </figcaption>
+</figure>
+{{< /code >}}
+
+### Single Flexible Example: `vimeo`
+
+```
+{{</* vimeo 49718712 */>}}
+{{</* vimeo id="49718712" class="flex-video" */>}}
+```
+
+Would load the template found at `/layouts/shortcodes/vimeo.html`:
+
+{{< code file="/layouts/shortcodes/vimeo.html" >}}
+{{ if .IsNamedParams }}
+ <div class="{{ if .Get "class" }}{{ .Get "class" }}{{ else }}vimeo-container{{ end }}">
+ <iframe src="https://player.vimeo.com/video/{{ .Get "id" }}" allowfullscreen></iframe>
+ </div>
+{{ else }}
+ <div class="{{ if len .Params | eq 2 }}{{ .Get 1 }}{{ else }}vimeo-container{{ end }}">
+ <iframe src="https://player.vimeo.com/video/{{ .Get 0 }}" allowfullscreen></iframe>
+ </div>
+{{ end }}
+{{< /code >}}
+
+Would be rendered as:
+
+{{< code file="vimeo-iframes.html" copy="false" >}}
+<div class="vimeo-container">
+ <iframe src="https://player.vimeo.com/video/49718712" allowfullscreen></iframe>
+</div>
+<div class="flex-video">
+ <iframe src="https://player.vimeo.com/video/49718712" allowfullscreen></iframe>
+</div>
+{{< /code >}}
+
+### Paired Example: `highlight`
+
+The following is taken from `highlight`, which is a [built-in shortcode][] that ships with Hugo.
+
+{{< code file="highlight-example.md" >}}
+{{</* highlight html */>}}
+ <html>
+ <body> This HTML </body>
+ </html>
+{{</* /highlight */>}}
+{{< /code >}}
+
+The template for the `highlight` shortcode uses the following code, which is already included in Hugo:
+
+```
+{{ .Get 0 | highlight .Inner }}
+```
+
+The rendered output of the HTML example code block will be as follows:
+
+{{< code file="syntax-highlighted.html" copy="false" >}}
+<div class="highlight" style="background: #272822"><pre style="line-height: 125%"><span style="color: #f92672">&lt;html&gt;</span>
+ <span style="color: #f92672">&lt;body&gt;</span> This HTML <span style="color: #f92672">&lt;/body&gt;</span>
+<span style="color: #f92672">&lt;/html&gt;</span>
+</pre></div>
+{{< /code >}}
+
+### Nested Shortcode: Image Gallery
+
+Hugo's [`.Parent` shortcode variable][parent] returns a boolean value depending on whether the shortcode in question is called within the context of a *parent* shortcode. This provides an inheritance model for common shortcode parameters.
+
+The following example is contrived but demonstrates the concept. Assume you have a `gallery` shortcode that expects one named `class` parameter:
+
+{{< code file="layouts/shortcodes/gallery.html" >}}
+<div class="{{ .Get "class" }}">
+ {{ .Inner }}
+</div>
+{{< /code >}}
+
+You also have an `img` shortcode with a single named `src` parameter that you want to call inside of `gallery` and other shortcodes, so that the parent defines the context of each `img`:
+
+{{< code file="layouts/shortcodes/img.html" >}}
+{{- $src := .Get "src" -}}
+{{- with .Parent -}}
+ <img src="{{$src}}" class="{{ .Get "class" }}-image">
+{{- else -}}
+ <img src="{{$src}}">
+{{- end -}}
+{{< /code >}}
+
+You can then call your shortcode in your content as follows:
+
+```
+{{</* gallery class="content-gallery" */>}}
+ {{</* img src="/images/one.jpg" */>}}
+ {{</* img src="/images/two.jpg" */>}}
+{{</* /gallery */>}}
+{{</* img src="/images/three.jpg" */>}}
+```
+
+This will output the following HTML. Note how the first two `img` shortcodes inherit the `class` value of `content-gallery` set with the call to the parent `gallery`, whereas the third `img` only uses `src`:
+
+```
+<div class="content-gallery">
+ <img src="/images/one.jpg" class="content-gallery-image">
+ <img src="/images/two.jpg" class="content-gallery-image">
+</div>
+<img src="/images/three.jpg">
+```
+
+
+## Error Handling in Shortcodes
+
+Use the [errorf](/functions/errorf) template func and [.Position](/variables/shortcodes/) variable to get useful error messages in shortcodes:
+
+```bash
+{{ with .Get "name" }}
+{{ else }}
+{{ errorf "missing value for param 'name': %s" .Position }}
+{{ end }}
+```
+
+When the above fails, you will see an `ERROR` log similar to the below:
+
+```bash
+ERROR 2018/11/07 10:05:55 missing value for param name: "/Users/bep/dev/go/gohugoio/hugo/docs/content/en/variables/shortcodes.md:32:1"
+```
+
+## More Shortcode Examples
+
+More shortcode examples can be found in the [shortcodes directory for spf13.com][spfscs] and the [shortcodes directory for the Hugo docs][docsshortcodes].
+
+
+## Inline Shortcodes
+
+{{< new-in "0.52" >}}
+
+Since Hugo 0.52, you can implement your shortcodes inline -- e.g. where you use them in the content file. This can be useful for scripting that you only need in one place.
+
+This feature is disabled by default, but can be enabled in your site config:
+
+{{< code-toggle file="config">}}
+enableInlineShortcodes = true
+{{< /code-toggle >}}
+
+It is disabled by default for security reasons. The security model used by Hugo's template handling assumes that template authors are trusted, but that the content files are not, so the templates are injection-safe from malformed input data. But in most situations you have full control over the content, too, and then `enableInlineShortcodes = true` would be considered safe. But it's something to be aware of: It allows ad-hoc [Go Text templates](https://golang.org/pkg/text/template/) to be executed from the content files.
+
+And once enabled, you can do this in your content files:
+
+ ```go-text-template
+ {{</* time.inline */>}}{{ now }}{{</* /time.inline */>}}
+ ```
+
+The above will print the current date and time.
+
+ Note that an inline shortcode's inner content is parsed and executed as a Go text template with the same context as a regular shortcode template.
+
+This means that the current page can be accessed via `.Page.Title` etc. This also means that there are no concept of "nested inline shortcodes".
+
+The same inline shortcode can be reused later in the same content file, with different params if needed, using the self-closing syntax:
+
+ ```go-text-template
+{{</* time.inline /*/>}}
+```
+
+
+[basic content files]: /content-management/formats/ "See how Hugo leverages markdown--and other supported formats--to create content for your website."
+[built-in shortcode]: /content-management/shortcodes/
+[config]: /getting-started/configuration/ "Learn more about Hugo's built-in configuration variables as well as how to us your site's configuration file to include global key-values that can be used throughout your rendered website."
+[Content Management: Shortcodes]: /content-management/shortcodes/#using-hugo-s-built-in-shortcodes "Check this section if you are not familiar with the definition of what a shortcode is or if you are unfamiliar with how to use Hugo's built-in shortcodes in your content files."
+[source organization]: /getting-started/directory-structure/#directory-structure-explained "Learn how Hugo scaffolds new sites and what it expects to find in each of your directories."
+[docsshortcodes]: https://github.com/gohugoio/hugo/tree/master/docs/layouts/shortcodes "See the shortcode source directory for the documentation site you're currently reading."
+[figure]: /content-management/shortcodes/#figure
+[hugosc]: /content-management/shortcodes/#using-hugo-s-built-in-shortcodes
+[lookup order]: /templates/lookup-order/ "See the order in which Hugo traverses your template files to decide where and how to render your content at build time"
+[pagevars]: /variables/page/ "See which variables you can leverage in your templating for page vs list templates."
+[parent]: /variables/shortcodes/
+[shortcodesvars]: /variables/shortcodes/ "Certain variables are specific to shortcodes, although most .Page variables can be accessed within your shortcode template."
+[spfscs]: https://github.com/spf13/spf13.com/tree/master/layouts/shortcodes "See more examples of shortcodes by visiting the shortcode directory of the source for spf13.com, the blog of Hugo's creator, Steve Francia."
+[templates]: /templates/ "The templates section of the Hugo docs."
+[vimeoexample]: #single-flexible-example-vimeo
+[youtubeshortcode]: /content-management/shortcodes/#youtube "See how to use Hugo's built-in YouTube shortcode."
diff --git a/docs/content/en/templates/single-page-templates.md b/docs/content/en/templates/single-page-templates.md
new file mode 100644
index 000000000..55e267d38
--- /dev/null
+++ b/docs/content/en/templates/single-page-templates.md
@@ -0,0 +1,92 @@
+---
+title: Single Page Templates
+linktitle:
+description: The primary view of content in Hugo is the single view. Hugo will render every Markdown file provided with a corresponding single template.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-04-06
+categories: [templates]
+keywords: [page,templates]
+menu:
+ docs:
+ parent: "templates"
+ weight: 60
+weight: 60
+sections_weight: 60
+draft: false
+aliases: [/layout/content/]
+toc: true
+---
+
+## Single Page Template Lookup Order
+
+See [Template Lookup](/templates/lookup-order/).
+
+## Example Single Page Templates
+
+Content pages are of the type `page` and will therefore have all the [page variables][pagevars] and [site variables][] available to use in their templates.
+
+### `posts/single.html`
+
+This single page template makes use of Hugo [base templates][], the [`.Format` function][] for dates, the [`.WordCount` page variable][pagevars], and ranges through the single content's specific [taxonomies][pagetaxonomy]. [`with`][] is also used to check whether the taxonomies are set in the front matter.
+
+{{< code file="layouts/posts/single.html" download="single.html" >}}
+{{ define "main" }}
+<section id="main">
+ <h1 id="title">{{ .Title }}</h1>
+ <div>
+ <article id="content">
+ {{ .Content }}
+ </article>
+ </div>
+</section>
+<aside id="meta">
+ <div>
+ <section>
+ <h4 id="date"> {{ .Date.Format "Mon Jan 2, 2006" }} </h4>
+ <h5 id="wordcount"> {{ .WordCount }} Words </h5>
+ </section>
+ {{ with .Params.topics }}
+ <ul id="topics">
+ {{ range . }}
+ <li><a href="{{ "topics" | absURL}}{{ . | urlize }}">{{ . }}</a> </li>
+ {{ end }}
+ </ul>
+ {{ end }}
+ {{ with .Params.tags }}
+ <ul id="tags">
+ {{ range . }}
+ <li> <a href="{{ "tags" | absURL }}{{ . | urlize }}">{{ . }}</a> </li>
+ {{ end }}
+ </ul>
+ {{ end }}
+ </div>
+ <div>
+ {{ with .PrevInSection }}
+ <a class="previous" href="{{.Permalink}}"> {{.Title}}</a>
+ {{ end }}
+ {{ with .NextInSection }}
+ <a class="next" href="{{.Permalink}}"> {{.Title}}</a>
+ {{ end }}
+ </div>
+</aside>
+{{ end }}
+{{< /code >}}
+
+To easily generate new instances of a content type (e.g., new `.md` files in a section like `project/`) with preconfigured front matter, use [content archetypes][archetypes].
+
+[archetypes]: /content-management/archetypes/
+[base templates]: /templates/base/
+[config]: /getting-started/configuration/
+[content type]: /content-management/types/
+[directory structure]: /getting-started/directory-structure/
+[dry]: https://en.wikipedia.org/wiki/Don%27t_repeat_yourself
+[`.Format` function]: /functions/format/
+[front matter]: /content-management/front-matter/
+[pagetaxonomy]: /templates/taxonomy-templates/#displaying-a-single-piece-of-content-s-taxonomies
+[pagevars]: /variables/page/
+[partials]: /templates/partials/
+[section]: /content-management/sections/
+[site variables]: /variables/site/
+[spf13]: https://spf13.com/
+[`with`]: /functions/with/
diff --git a/docs/content/en/templates/sitemap-template.md b/docs/content/en/templates/sitemap-template.md
new file mode 100644
index 000000000..dee28fc3b
--- /dev/null
+++ b/docs/content/en/templates/sitemap-template.md
@@ -0,0 +1,106 @@
+---
+title: Sitemap Template
+# linktitle: Sitemap
+description: Hugo ships with a built-in template file observing the v0.9 of the Sitemap Protocol, but you can override this template if needed.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [templates]
+keywords: [sitemap, xml, templates]
+menu:
+ docs:
+ parent: "templates"
+ weight: 160
+weight: 160
+sections_weight: 160
+draft: false
+aliases: [/layout/sitemap/,/templates/sitemap/]
+toc: false
+---
+
+A single Sitemap template is used to generate the `sitemap.xml` file.
+Hugo automatically comes with this template file. *No work is needed on
+the users' part unless they want to customize `sitemap.xml`.*
+
+A sitemap is a `Page` and therefore has all the [page variables][pagevars] available to use in this template along with Sitemap-specific ones:
+
+`.Sitemap.ChangeFreq`
+: The page change frequency
+
+`.Sitemap.Priority`
+: The priority of the page
+
+`.Sitemap.Filename`
+: The sitemap filename
+
+If provided, Hugo will use `/layouts/sitemap.xml` instead of the internal `sitemap.xml` template that ships with Hugo.
+
+## Sitemap Templates
+
+Hugo has built-on Sitemap templates, but you can provide your own if needed, in either `layouts/sitemap.xml` or `layouts/_default/sitemap.xml`.
+
+For multilingual sites, we also create a Sitemap index. You can provide a custom layout for that in either `layouts/sitemapindex.xml` or `layouts/_default/sitemapindex.xml`.
+
+## Hugo’s sitemap.xml
+
+This template respects the version 0.9 of the [Sitemap Protocol](https://www.sitemaps.org/protocol.html).
+
+```xml
+{{ printf "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\" ?>" | safeHTML }}
+<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
+ xmlns:xhtml="http://www.w3.org/1999/xhtml">
+ {{ range .Data.Pages }}
+ <url>
+ <loc>{{ .Permalink }}</loc>{{ if not .Lastmod.IsZero }}
+ <lastmod>{{ safeHTML ( .Lastmod.Format "2006-01-02T15:04:05-07:00" ) }}</lastmod>{{ end }}{{ with .Sitemap.ChangeFreq }}
+ <changefreq>{{ . }}</changefreq>{{ end }}{{ if ge .Sitemap.Priority 0.0 }}
+ <priority>{{ .Sitemap.Priority }}</priority>{{ end }}{{ if .IsTranslated }}{{ range .Translations }}
+ <xhtml:link
+ rel="alternate"
+ hreflang="{{ .Lang }}"
+ href="{{ .Permalink }}"
+ />{{ end }}
+ <xhtml:link
+ rel="alternate"
+ hreflang="{{ .Lang }}"
+ href="{{ .Permalink }}"
+ />{{ end }}
+ </url>
+ {{ end }}
+</urlset>
+```
+
+## Hugo's sitemapindex.xml
+
+This is used to create a Sitemap index in multilingual mode:
+
+```xml
+{{ printf "<?xml version=\"1.0\" encoding=\"utf-8\" standalone=\"yes\" ?>" | safeHTML }}
+<sitemapindex xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
+ {{ range . }}
+ <sitemap>
+ <loc>{{ .SitemapAbsURL }}</loc>
+ {{ if not .LastChange.IsZero }}
+ <lastmod>{{ .LastChange.Format "2006-01-02T15:04:05-07:00" | safeHTML }}</lastmod>
+ {{ end }}
+ </sitemap>
+ {{ end }}
+</sitemapindex>
+```
+
+## Configure `sitemap.xml`
+
+Defaults for `<changefreq>`, `<priority>` and `filename` values can be set in the site's config file, e.g.:
+
+{{< code-toggle file="config" >}}
+[sitemap]
+ changefreq = "monthly"
+ priority = 0.5
+ filename = "sitemap.xml"
+{{</ code-toggle >}}
+
+The same fields can be specified in an individual content file's front matter in order to override the value assigned to that piece of content at render time.
+
+
+
+[pagevars]: /variables/page/
diff --git a/docs/content/en/templates/taxonomy-templates.md b/docs/content/en/templates/taxonomy-templates.md
new file mode 100644
index 000000000..a265b68d0
--- /dev/null
+++ b/docs/content/en/templates/taxonomy-templates.md
@@ -0,0 +1,341 @@
+---
+title: Taxonomy Templates
+# linktitle:
+description: Taxonomy templating includes taxonomy list pages, taxonomy terms pages, and using taxonomies in your single page templates.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [templates]
+keywords: [taxonomies,metadata,front matter,terms,templates]
+menu:
+ docs:
+ parent: "templates"
+ weight: 50
+weight: 50
+sections_weight: 50
+draft: false
+aliases: [/taxonomies/displaying/,/templates/terms/,/indexes/displaying/,/taxonomies/templates/,/indexes/ordering/, /templates/taxonomies/, /templates/taxonomy/]
+toc: true
+---
+
+<!-- NOTE! Check on https://github.com/gohugoio/hugo/issues/2826 for shifting of terms' pages to .Data.Pages AND
+https://discourse.gohugo.io/t/how-to-specify-category-slug/4856/15 for original discussion.-->
+
+Hugo includes support for user-defined groupings of content called **taxonomies**. Taxonomies are classifications that demonstrate logical relationships between content. See [Taxonomies under Content Management](/content-management/taxonomies) if you are unfamiliar with how Hugo leverages this powerful feature.
+
+Hugo provides multiple ways to use taxonomies throughout your project templates:
+
+* Order the way content associated with a taxonomy term is displayed in a [taxonomy list template](#taxonomy-list-template)
+* Order the way the terms for a taxonomy are displayed in a [taxonomy terms template](#taxonomy-terms-template)
+* List a single content's taxonomy terms within a [single page template][]
+
+## Taxonomy List Templates
+
+Taxonomy list page templates are lists and therefore have all the variables and methods available to [list pages][lists].
+
+### Taxonomy List Template Lookup Order
+
+See [Template Lookup](/templates/lookup-order/).
+
+## Taxonomy Terms Template
+
+### Taxonomy Terms Templates Lookup Order
+
+See [Template Lookup](/templates/lookup-order/).
+
+### Taxonomy Methods
+
+A Taxonomy is a `map[string]WeightedPages`.
+
+.Get(term)
+: Returns the WeightedPages for a term.
+
+.Count(term)
+: The number of pieces of content assigned to this term.
+
+.Alphabetical
+: Returns an OrderedTaxonomy (slice) ordered by Term.
+
+.ByCount
+: Returns an OrderedTaxonomy (slice) ordered by number of entries.
+
+.Reverse
+: Returns an OrderedTaxonomy (slice) in reverse order. Must be used with an OrderedTaxonomy.
+
+### OrderedTaxonomy
+
+Since Maps are unordered, an OrderedTaxonomy is a special structure that has a defined order.
+
+```go
+[]struct {
+ Name string
+ WeightedPages WeightedPages
+}
+```
+
+Each element of the slice has:
+
+.Term
+: The Term used.
+
+.WeightedPages
+: A slice of Weighted Pages.
+
+.Count
+: The number of pieces of content assigned to this term.
+
+.Pages
+: All Pages assigned to this term. All [list methods][renderlists] are available to this.
+
+## WeightedPages
+
+WeightedPages is simply a slice of WeightedPage.
+
+```go
+type WeightedPages []WeightedPage
+```
+
+.Count(term)
+: The number of pieces of content assigned to this term.
+
+.Pages
+: Returns a slice of pages, which then can be ordered using any of the [list methods][renderlists].
+
+## Displaying custom metadata in Taxonomy Terms Templates
+
+If you need to display custom metadata for each taxonomy term, you will need to create a page for that term at `/content/<TAXONOMY>/<TERM>/_index.md` and add your metadata in its front matter, [as explained in the taxonomies documentation](/content-management/taxonomies/#add-custom-meta-data-to-a-taxonomy-term). Based on the Actors taxonomy example shown there, within your taxonomy terms template, you may access your custom fields by iterating through the variable `.Pages` as such:
+
+```go-html-template
+<ul>
+ {{ range .Pages }}
+ <li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ {{ .Params.wikipedia }}
+ </li>
+ {{ end }}
+</ul>
+```
+
+<!-- Begin /taxonomies/ordering/ -->
+
+## Order Taxonomies
+
+Taxonomies can be ordered by either alphabetical key or by the number of content pieces assigned to that key.
+
+### Order Alphabetically Example
+
+```go-html-template
+<ul>
+ {{ range .Data.Terms.Alphabetical }}
+ <li><a href="{{ .Page.Permalink }}">{{ .Page.Title }}</a> {{ .Count }}</li>
+ {{ end }}
+</ul>
+```
+
+<!-- [See Also Taxonomy Lists](/templates/list/) -->
+
+## Order Content within Taxonomies
+
+Hugo uses both `date` and `weight` to order content within taxonomies.
+
+Each piece of content in Hugo can optionally be assigned a date. It can also be assigned a weight for each taxonomy it is assigned to.
+
+When iterating over content within taxonomies, the default sort is the same as that used for section and list pages: first by weight, then by date. This means that if the weights for two pieces of content are the same, then the more recent content will be displayed first.
+
+The default weight for any piece of content is 0. Zero means "does not have a weight", not "has a weight of numerical value zero".
+
+Weights of zero are thus treated specially: if two pages have unequal weights, and one of them is zero, then the zero-weighted page will always appear after the other one, regardless of the other's weight. Zero weights should thus be used with care: for example, if both positive and negative weights are used to extend a sequence in both directions, a zero-weighted page will appear not in the middle of the list, but at the end.
+
+### Assign Weight
+
+Content can be assigned weight for each taxonomy that it's assigned to.
+
+```
++++
+tags = [ "a", "b", "c" ]
+tags_weight = 22
+categories = ["d"]
+title = "foo"
+categories_weight = 44
++++
+Front Matter with weighted tags and categories
+```
+
+The convention is `taxonomyname_weight`.
+
+In the above example, this piece of content has a weight of 22 which applies to the sorting when rendering the pages assigned to the "a", "b" and "c" values of the 'tag' taxonomy.
+
+It has also been assigned the weight of 44 when rendering the 'd' category.
+
+With this the same piece of content can appear in different positions in different taxonomies.
+
+Currently taxonomies only support the default ordering of content which is weight -> date.
+
+<!-- Begin /taxonomies/templates/ -->
+
+There are two different templates that the use of taxonomies will require you to provide.
+
+Both templates are covered in detail in the templates section.
+
+A [list template](/templates/list/) is any template that will be used to render multiple pieces of content in a single html page. This template will be used to generate all the automatically created taxonomy pages.
+
+A [taxonomy terms template](/templates/terms/) is a template used to
+generate the list of terms for a given template.
+
+<!-- Begin /taxonomies/displaying/ -->
+
+There are four common ways you can display the data in your
+taxonomies in addition to the automatic taxonomy pages created by hugo
+using the [list templates](/templates/list/):
+
+1. For a given piece of content, you can list the terms attached
+2. For a given piece of content, you can list other content with the same
+ term
+3. You can list all terms for a taxonomy
+4. You can list all taxonomies (with their terms)
+
+## Display a Single Piece of Content's Taxonomies
+
+Within your content templates, you may wish to display the taxonomies that piece of content is assigned to.
+
+Because we are leveraging the front matter system to define taxonomies for content, the taxonomies assigned to each content piece are located in the usual place (i.e., `.Params.<TAXONOMYPLURAL>`).
+
+### Example: List Tags in a Single Page Template
+
+```go-html-template
+<ul>
+ {{ range (.GetTerms "tags") }}
+ <li><a href="{{ .Permalink }}">{{ .LinkTitle }}</a></li>
+ {{ end }}
+</ul>
+```
+
+If you want to list taxonomies inline, you will have to take care of optional plural endings in the title (if multiple taxonomies), as well as commas. Let's say we have a taxonomy "directors" such as `directors: [ "Joel Coen", "Ethan Coen" ]` in the TOML-format front matter.
+
+To list such taxonomies, use the following:
+
+### Example: Comma-delimit Tags in a Single Page Template
+
+```go-html-template
+{{ $taxo := "directors" }} <!-- Use the plural form here -->
+{{ with .Param $taxo }}
+ <strong>Director{{ if gt (len .) 1 }}s{{ end }}:</strong>
+ {{ range $index, $director := . }}
+ {{- if gt $index 0 }}, {{ end -}}
+ {{ with $.Site.GetPage (printf "/%s/%s" $taxo $director) -}}
+ <a href="{{ .Permalink }}">{{ $director }}</a>
+ {{- end -}}
+ {{- end -}}
+{{ end }}
+```
+
+Alternatively, you may use the [delimit template function][delimit] as a shortcut if the taxonomies should just be listed with a separator. See {{< gh 2143 >}} on GitHub for discussion.
+
+## List Content with the Same Taxonomy Term
+
+If you are using a taxonomy for something like a series of posts, you can list individual pages associated with the same taxonomy. This is also a quick and dirty method for showing related content:
+
+### Example: Showing Content in Same Series
+
+```go-html-template
+<ul>
+ {{ range .Site.Taxonomies.series.golang }}
+ <li><a href="{{ .Page.RelPermalink }}">{{ .Page.Title }}</a></li>
+ {{ end }}
+</ul>
+```
+
+## List All content in a Given taxonomy
+
+This would be very useful in a sidebar as “featured content”. You could even have different sections of “featured content” by assigning different terms to the content.
+
+### Example: Grouping "Featured" Content
+
+```go-html-template
+<section id="menu">
+ <ul>
+ {{ range $key, $taxonomy := .Site.Taxonomies.featured }}
+ <li>{{ $key }}</li>
+ <ul>
+ {{ range $taxonomy.Pages }}
+ <li hugo-nav="{{ .RelPermalink}}"><a href="{{ .Permalink}}">{{ .LinkTitle }}</a></li>
+ {{ end }}
+ </ul>
+ {{ end }}
+ </ul>
+</section>
+```
+
+## Render a Site's Taxonomies
+
+If you wish to display the list of all keys for your site's taxonomy, you can retrieve them from the [`.Site` variable][sitevars] available on every page.
+
+This may take the form of a tag cloud, a menu, or simply a list.
+
+The following example displays all terms in a site's tags taxonomy:
+
+### Example: List All Site Tags {#example-list-all-site-tags}
+
+```go-html-template
+<ul>
+ {{ range .Site.Taxonomies.tags }}
+ <li><a href="{{ .Page.Permalink }}">{{ .Page.Title }}</a> {{ .Count }}</li>
+ {{ end }}
+</ul>
+```
+
+### Example: List All Taxonomies, Terms, and Assigned Content
+
+This example will list all taxonomies and their terms, as well as all the content assigned to each of the terms.
+
+{{< code file="layouts/partials/all-taxonomies.html" download="all-taxonomies.html" download="all-taxonomies.html" >}}
+<section>
+ <ul id="all-taxonomies">
+ {{ range $taxonomy_term, $taxonomy := .Site.Taxonomies }}
+ {{ with $.Site.GetPage (printf "/%s" $taxonomy_term) }}
+ <li><a href="{{ .Permalink }}">{{ $taxonomy_term }}</a>
+ <ul>
+ {{ range $key, $value := $taxonomy }}
+ <li>{{ $key }}</li>
+ <ul>
+ {{ range $value.Pages }}
+ <li hugo-nav="{{ .RelPermalink}}">
+ <a href="{{ .Permalink}}">{{ .LinkTitle }}</a>
+ </li>
+ {{ end }}
+ </ul>
+ {{ end }}
+ </ul>
+ </li>
+ {{ end }}
+ {{ end }}
+ </ul>
+</section>
+{{< /code >}}
+
+## `.Site.GetPage` for Taxonomies
+
+Because taxonomies are lists, the [`.GetPage` function][getpage] can be used to get all the pages associated with a particular taxonomy term using a terse syntax. The following ranges over the full list of tags on your site and links to each of the individual taxonomy pages for each term without having to use the more fragile URL construction of the ["List All Site Tags" example above]({{< relref "#example-list-all-site-tags" >}}):
+
+{{< code file="links-to-all-tags.html" >}}
+{{ $taxo := "tags" }}
+<ul class="{{ $taxo }}">
+ {{ with ($.Site.GetPage (printf "/%s" $taxo)) }}
+ {{ range .Pages }}
+ <li><a href="{{ .Permalink }}">{{ .Title}}</a></li>
+ {{ end }}
+ {{ end }}
+</ul>
+{{< /code >}}
+
+<!-- TODO: ### `.Site.GetPage` Taxonomy List Example -->
+
+<!-- TODO: ### `.Site.GetPage` Taxonomy Terms Example -->
+
+
+[delimit]: /functions/delimit/
+[getpage]: /functions/getpage/
+[lists]: /templates/lists/
+[renderlists]: /templates/lists/
+[single page template]: /templates/single-page-templates/
+[sitevars]: /variables/site/
diff --git a/docs/content/en/templates/template-debugging.md b/docs/content/en/templates/template-debugging.md
new file mode 100644
index 000000000..fbe873827
--- /dev/null
+++ b/docs/content/en/templates/template-debugging.md
@@ -0,0 +1,76 @@
+---
+title: Template Debugging
+# linktitle: Template Debugging
+description: You can use Go templates' `printf` function to debug your Hugo templates. These snippets provide a quick and easy visualization of the variables available to you in different contexts.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [templates]
+keywords: [debugging,troubleshooting]
+menu:
+ docs:
+ parent: "templates"
+ weight: 180
+weight: 180
+sections_weight: 180
+draft: false
+aliases: []
+toc: false
+---
+
+Here are some snippets you can add to your template to answer some common questions.
+
+These snippets use the `printf` function available in all Go templates. This function is an alias to the Go function, [fmt.Printf](https://golang.org/pkg/fmt/).
+
+## What Variables are Available in this Context?
+
+You can use the template syntax, `$.`, to get the top-level template context from anywhere in your template. This will print out all the values under, `.Site`.
+
+```
+{{ printf "%#v" $.Site }}
+```
+
+This will print out the value of `.Permalink`:
+
+
+```
+{{ printf "%#v" .Permalink }}
+```
+
+
+This will print out a list of all the variables scoped to the current context
+(`.`, aka ["the dot"][tempintro]).
+
+
+```
+{{ printf "%#v" . }}
+```
+
+
+When developing a [homepage][], what does one of the pages you're looping through look like?
+
+```
+{{ range .Pages }}
+ {{/* The context, ".", is now each one of the pages as it goes through the loop */}}
+ {{ printf "%#v" . }}
+{{ end }}
+```
+
+## Why Am I Showing No Defined Variables?
+
+Check that you are passing variables in the `partial` function:
+
+```
+{{ partial "header" }}
+```
+
+This example will render the header partial, but the header partial will not have access to any contextual variables. You need to pass variables explicitly. For example, note the addition of ["the dot"][tempintro].
+
+```
+{{ partial "header" . }}
+```
+
+The dot (`.`) is considered fundamental to understanding Hugo templating. For more information, see [Introduction to Hugo Templating][tempintro].
+
+[homepage]: /templates/homepage/
+[tempintro]: /templates/introduction/
diff --git a/docs/content/en/templates/views.md b/docs/content/en/templates/views.md
new file mode 100644
index 000000000..87f66afe0
--- /dev/null
+++ b/docs/content/en/templates/views.md
@@ -0,0 +1,121 @@
+---
+title: Content View Templates
+# linktitle: Content Views
+description: Hugo can render alternative views of your content, which is especially useful in list and summary views.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [templates]
+keywords: [views]
+menu:
+ docs:
+ parent: "templates"
+ weight: 70
+weight: 70
+sections_weight: 70
+draft: false
+aliases: []
+toc: true
+---
+
+These alternative **content views** are especially useful in [list templates][lists].
+
+The following are common use cases for content views:
+
+* You want content of every type to be shown on the homepage but only with limited [summary views][summaries].
+* You only want a bulleted list of your content on a [taxonomy list page][taxonomylists]. Views make this very straightforward by delegating the rendering of each different type of content to the content itself.
+
+## Create a Content View
+
+To create a new view, create a template in each of your different content type directories with the view name. The following example contains an "li" view and a "summary" view for the `posts` and `project` content types. As you can see, these sit next to the [single content view][single] template, `single.html`. You can even provide a specific view for a given type and continue to use the `_default/single.html` for the primary view.
+
+```
+ ▾ layouts/
+ ▾ posts/
+ li.html
+ single.html
+ summary.html
+ ▾ project/
+ li.html
+ single.html
+ summary.html
+```
+
+Hugo also has support for a default content template to be used in the event that a specific content view template has not been provided for that type. Content views can also be defined in the `_default` directory and will work the same as list and single templates who eventually trickle down to the `_default` directory as a matter of the lookup order.
+
+
+```
+▾ layouts/
+ ▾ _default/
+ li.html
+ single.html
+ summary.html
+```
+
+## Which Template Will be Rendered?
+
+The following is the [lookup order][lookup] for content views:
+
+1. `/layouts/<TYPE>/<VIEW>.html`
+2. `/layouts/_default/<VIEW>.html`
+3. `/themes/<THEME>/layouts/<TYPE>/<VIEW>.html`
+4. `/themes/<THEME>/layouts/_default/<VIEW>.html`
+
+## Example: Content View Inside a List
+
+The following example demonstrates how to use content views inside of your [list templates][lists].
+
+### `list.html`
+
+In this example, `.Render` is passed into the template to call the [render function][render]. `.Render` is a special function that instructs content to render itself with the view template provided as the first argument. In this case, the template is going to render the `summary.html` view that follows:
+
+{{< code file="layouts/_default/list.html" download="list.html" >}}
+<main id="main">
+ <div>
+ <h1 id="title">{{ .Title }}</h1>
+ {{ range .Pages }}
+ {{ .Render "summary"}}
+ {{ end }}
+ </div>
+</main>
+{{< /code >}}
+
+### `summary.html`
+
+Hugo will pass the entire page object to the following `summary.html` view template. (See [Page Variables][pagevars] for a complete list.)
+
+{{< code file="layouts/_default/summary.html" download="summary.html" >}}
+<article class="post">
+ <header>
+ <h2><a href='{{ .Permalink }}'> {{ .Title }}</a> </h2>
+ <div class="post-meta">{{ .Date.Format "Mon, Jan 2, 2006" }} - {{ .FuzzyWordCount }} Words </div>
+ </header>
+ {{ .Summary }}
+ <footer>
+ <a href='{{ .Permalink }}'><nobr>Read more →</nobr></a>
+ </footer>
+</article>
+{{< /code >}}
+
+### `li.html`
+
+Continuing on the previous example, we can change our render function to use a smaller `li.html` view by changing the argument in the call to the `.Render` function (i.e., `{{ .Render "li" }}`).
+
+{{< code file="layouts/_default/li.html" download="li.html" >}}
+<li>
+ <a href="{{ .Permalink }}">{{ .Title }}</a>
+ <div class="meta">{{ .Date.Format "Mon, Jan 2, 2006" }}</div>
+</li>
+{{< /code >}}
+
+[lists]: /templates/lists/
+[lookup]: /templates/lookup-order/
+[pagevars]: /variables/page/
+[render]: /functions/render/
+[single]: /templates/single-page-templates/
+[spf]: https://spf13.com
+[spfsourceli]: https://github.com/spf13/spf13.com/blob/master/layouts/_default/li.html
+[spfsourcesection]: https://github.com/spf13/spf13.com/blob/master/layouts/_default/section.html
+[spfsourcesummary]: https://github.com/spf13/spf13.com/blob/master/layouts/_default/summary.html
+[summaries]: /content-management/summaries/
+[taxonomylists]: /templates/taxonomy-templates/
diff --git a/docs/content/en/tools/_index.md b/docs/content/en/tools/_index.md
new file mode 100644
index 000000000..a186ffb06
--- /dev/null
+++ b/docs/content/en/tools/_index.md
@@ -0,0 +1,24 @@
+---
+title: Developer Tools
+linktitle: Developer Tools Overview
+description: In addition to Hugo's powerful CLI, there is a large number of community-developed tool chains for Hugo developers.
+date: 2016-12-05
+publishdate: 2016-12-05
+lastmod: 2017-02-26
+categories: [developer tools]
+keywords: []
+menu:
+ docs:
+ parent: "tools"
+ weight: 01
+weight: 01
+sections_weight: 01
+draft: false
+---
+
+One of Hugo's greatest strengths is its passionate---and always evolving---developer community. With the exception of the `highlight` shortcode mentioned in [Syntax Highlighting][syntax], the tools and other projects featured in this section are offerings from both commercial services and open-source projects, many of which are developed by Hugo developers just like you.
+
+[See the popularity of Hugo compared with other static site generators.][staticgen]
+
+[staticgen]: https://staticgen.com
+[syntax]: /tools/syntax-highlighting/
diff --git a/docs/content/en/tools/editors.md b/docs/content/en/tools/editors.md
new file mode 100644
index 000000000..8da5fc2d7
--- /dev/null
+++ b/docs/content/en/tools/editors.md
@@ -0,0 +1,50 @@
+---
+title: Editor Plug-ins for Hugo
+linktitle: Editor Plug-ins
+description: The Hugo community uses a wide range of preferred tools and has developed plug-ins for some of the most popular text editors to help automate parts of your workflow.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [developer tools]
+keywords: [editor, plug-ins]
+menu:
+ docs:
+ parent: "tools"
+ weight: 50
+weight: 50
+sections_weight: 50
+draft: false
+aliases: []
+toc: false
+---
+
+The Hugo community uses a wide range of preferred tools and has developed plug-ins for some of the most popular text editors to help automate parts of your workflow.
+
+## Sublime Text
+
+* [Hugofy](https://github.com/akmittal/Hugofy). Hugofy is a plugin for Sublime Text 3 to make life easier to use Hugo static site generator.
+* [Hugo Snippets](https://packagecontrol.io/packages/Hugo%20Snippets). Hugo Snippets is a useful plugin for adding automatic snippets to Sublime Text 3.
+
+## Visual Studio Code
+
+* [Hugofy](https://marketplace.visualstudio.com/items?itemName=akmittal.hugofy). Hugofy is a plugin for Visual Studio Code to "make life easier" when developing with Hugo. The source code can be found [here](https://github.com/akmittal/hugofy-vscode).
+* [Hugo Helper](https://marketplace.visualstudio.com/items?itemName=rusnasonov.vscode-hugo). Hugo Helper is a plugin for Visual Studio Code that has some useful commands for Hugo. The source code can be found [here](https://github.com/rusnasonov/vscode-hugo).
+* [Hugo Language and Syntax Support](https://marketplace.visualstudio.com/items?itemName=budparr.language-hugo-vscode). Hugo Language and Syntax Support is a Visual Studio Code plugin for Hugo syntax highlighting and snippets. The source code can be found [here](https://github.com/budparr/language-hugo-vscode).
+* [Hugo Themer](https://marketplace.visualstudio.com/items?itemName=eliostruyf.vscode-hugo-themer). Hugo Themer is an extension to help you while developing themes. It allows you to easily navigate through your theme files.
+* [Front Matter](https://marketplace.visualstudio.com/items?itemName=eliostruyf.vscode-front-matter). Once you go for a static site, you need to think about how you are going to manage your articles. Front matter is a tool that helps you maintaining the metadata/front matter of your articles like: creation date, modified date, slug, tile, SEO check, and many more...
+
+## Emacs
+
+* [emacs-easy-hugo](https://github.com/masasam/emacs-easy-hugo). Emacs major mode for managing hugo blogs. Note that Hugo also supports [Org-mode][formats].
+* [ox-hugo.el](https://ox-hugo.scripter.co). Native Org-mode exporter that exports to Blackfriday Markdown with Hugo front-matter. `ox-hugo` supports two common Org blogging flows --- exporting multiple Org sub-trees in a single file to multiple Hugo posts, and exporting a single Org file to a single Hugo post. It also leverages the Org tag and property inheritance features. See [*Why ox-hugo?*](https://ox-hugo.scripter.co/doc/why-ox-hugo/) for more.
+
+## Vim
+
+* [Vim Hugo Helper](https://github.com/robertbasic/vim-hugo-helper). A small Vim plugin to help me with writing posts with Hugo.
+
+## Atom
+
+* [Hugofy](https://atom.io/packages/hugofy). A Hugo Static Website Generator package for Atom.
+* [language-hugo](https://atom.io/packages/language-hugo). Adds syntax highlighting to Hugo files.
+
+[formats]: /content-management/formats/
diff --git a/docs/content/en/tools/frontends.md b/docs/content/en/tools/frontends.md
new file mode 100644
index 000000000..1d1d7fae6
--- /dev/null
+++ b/docs/content/en/tools/frontends.md
@@ -0,0 +1,31 @@
+---
+title: Frontend Interfaces with Hugo
+linktitle: Frontends
+description: Do you prefer a graphical user interface over a text editor? Give these frontends a try.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [developer tools]
+keywords: [frontend,gui]
+menu:
+ docs:
+ parent: "tools"
+ weight: 40
+weight: 40
+sections_weight: 40
+draft: false
+aliases: []
+toc: false
+---
+
+* [enwrite](https://github.com/zzamboni/enwrite). Enwrite enables evernote-powered, statically generated blogs and websites. Now posting to your blog or updating your website is as easy as writing a new note in Evernote!
+* [Lipi](https://github.com/SohanChy/Lipi). Lipi is a native GUI frontend written in Java to manage your Hugo websites.
+* [Netlify CMS](https://netlifycms.org). Netlify CMS is an open source, serverless solution for managing Git based content in static sites, and it works on any platform that can host static sites. A [Hugo/Netlify CMS starter](https://github.com/netlify-templates/one-click-hugo-cms) is available to get new projects running quickly.
+* [Hokus CMS](https://github.com/julianoappelklein/hokus). Hokus CMS is an open source, multi-platform, easy to use, desktop application for Hugo. Build from simple to complex user interfaces for Hugo websites by choosing from a dozen ready-to-use components — all for free, with no vendor lock-in.
+
+
+## Commercial Services
+
+* [DATOCMS](https://www.datocms.com) DatoCMS is a fully customizable administrative area for your static websites. Use your favorite website generator, let your clients publish new content independently, and the host the site anywhere you like.
+* [Forestry.io](https://forestry.io/). Forestry is a git-backed CMS for Hugo, Gatsby, Jekyll and VuePress websites with support for GitHub, GitLab, Bitbucket and Azure Devops. Forestry provides a nice user interface to edit and model content for non technical editors. It supports S3, Cloudinary and Netlify Large Media integrations for storing media. Every time an update is made via the CMS, Forestry will commit changes back to your repo and vice-versa.
+
diff --git a/docs/content/en/tools/migrations.md b/docs/content/en/tools/migrations.md
new file mode 100644
index 000000000..d87bd4013
--- /dev/null
+++ b/docs/content/en/tools/migrations.md
@@ -0,0 +1,87 @@
+---
+title: Migrate to Hugo
+linktitle: Migrations
+description: A list of community-developed tools for migrating from your existing static site generator or content management system to Hugo.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+keywords: [migrations,jekyll,wordpress,drupal,ghost,contentful]
+menu:
+ docs:
+ parent: "tools"
+ weight: 10
+weight: 10
+sections_weight: 10
+draft: false
+aliases: [/developer-tools/migrations/,/developer-tools/migrated/]
+toc: true
+---
+
+This section highlights some projects around Hugo that are independently developed. These tools try to extend the functionality of our static site generator or help you to get started.
+
+{{% note %}}
+Do you know or maintain a similar project around Hugo? Feel free to open a [pull request](https://github.com/gohugoio/hugoDocs/pulls) on GitHub if you think it should be added.
+{{% /note %}}
+
+Take a look at this list of migration tools if you currently use other blogging tools like Jekyll or WordPress but intend to switch to Hugo instead. They'll take care to export your content into Hugo-friendly formats.
+
+## Jekyll
+
+Alternatively, you can use the new [Jekyll import command](/commands/hugo_import_jekyll/).
+
+- [JekyllToHugo](https://github.com/SenjinDarashiva/JekyllToHugo) - A Small script for converting Jekyll blog posts to a Hugo site.
+- [ConvertToHugo](https://github.com/coderzh/ConvertToHugo) - Convert your blog from Jekyll to Hugo.
+
+## Ghost
+
+- [ghostToHugo](https://github.com/jbarone/ghostToHugo) - Convert Ghost blog posts and export them to Hugo.
+
+## Octopress
+
+- [octohug](https://github.com/codebrane/octohug) - Octopress to Hugo migrator.
+
+## DokuWiki
+
+- [dokuwiki-to-hugo](https://github.com/wgroeneveld/dokuwiki-to-hugo) - Migrates your DokuWiki source pages from [DokuWiki syntax](https://www.dokuwiki.org/wiki:syntax) to Hugo Markdown syntax. Includes extra's like the TODO plugin. Written with extensibility in mind using python 3. Also generates a TOML header for each page. Designed to copypaste the wiki directory into your /content directory.
+
+## WordPress
+
+- [wordpress-to-hugo-exporter](https://github.com/SchumacherFM/wordpress-to-hugo-exporter) - A one-click WordPress plugin that converts all posts, pages, taxonomies, metadata, and settings to Markdown and YAML which can be dropped into Hugo. (Note: If you have trouble using this plugin, you can [export your site for Jekyll](https://wordpress.org/plugins/jekyll-exporter/) and use Hugo's built in Jekyll converter listed above.)
+- [exitwp-for-hugo](https://github.com/wooni005/exitwp-for-hugo) - A python script which works with the xml export from WordPress and converts WordPress pages and posts to Markdown and YAML for hugo.
+- [blog2md](https://github.com/palaniraja/blog2md) - Works with [exported xml](https://en.support.wordpress.com/export/) file of your free YOUR-TLD.wordpress.com website. It also saves approved comments to `YOUR-POST-NAME-comments.md` file along with posts.
+- [wordhugopress](https://github.com/nantipov/wordhugopress) - A small utility written in Java, exports the entire WordPress site from the database and resource (e.g. images) files stored locally or remotely. Therefore, migration from the backup files is possible. Supports merging of the multiple WordPress sites into a single Hugo one.
+
+## Medium
+
+- [medium2md](https://github.com/gautamdhameja/medium-2-md) - A simple Medium to Hugo exporter able to import stories in one command, including Front Matter.
+- [medium-to-hugo](https://github.com/bgadrian/medium-to-hugo) - CLI tool written in Go to export medium posts into a Hugo compatible Markdown format. Tags and images are included. All images will be downloaded locally and linked appropriately.
+
+## Tumblr
+
+- [tumblr-importr](https://github.com/carlmjohnson/tumblr-importr) - An importer that uses the Tumblr API to create a Hugo static site.
+- [tumblr2hugomarkdown](https://github.com/Wysie/tumblr2hugomarkdown) - Export all your Tumblr content to Hugo Markdown files with preserved original formatting.
+- [Tumblr to Hugo](https://github.com/jipiboily/tumblr-to-hugo) - A migration tool that converts each of your Tumblr posts to a content file with a proper title and path. Furthermore, "Tumblr to Hugo" creates a CSV file with the original URL and the new path on Hugo, to help you setup the redirections.
+
+## Drupal
+
+- [drupal2hugo](https://github.com/danapsimer/drupal2hugo) - Convert a Drupal site to Hugo.
+
+## Joomla
+
+- [hugojoomla](https://github.com/davetcc/hugojoomla) - This utility written in Java takes a Joomla database and converts all the content into Markdown files. It changes any URLs that are in Joomla's internal format and converts them to a suitable form.
+
+## Blogger
+
+- [blogimport](https://github.com/natefinch/blogimport) - A tool to import from Blogger posts to Hugo.
+- [blogger-to-hugo](https://pypi.org/project/blogger-to-hugo/) - Another tool to import Blogger posts to Hugo. It also downloads embedded images so they will be stored locally.
+- [blog2md](https://github.com/palaniraja/blog2md) - Works with [exported xml](https://support.google.com/blogger/answer/41387?hl=en) file of your YOUR-TLD.blogspot.com website. It also saves comments to `YOUR-POST-NAME-comments.md` file along with posts.
+- [BloggerToHugo](https://github.com/huanlin/blogger-to-hugo) - Yet another tool to import Blogger posts to Hugo. For Windows platform only, and .NET Framework 4.5 is required. See README.md before using this tool.
+
+## Contentful
+
+- [contentful2hugo](https://github.com/ArnoNuyts/contentful2hugo) - A tool to create content-files for Hugo from content on [Contentful](https://www.contentful.com/).
+
+
+## BlogML
+
+- [BlogML2Hugo](https://github.com/jijiechen/BlogML2Hugo) - A tool that helps you convert BlogML xml file to Hugo markdown files. Users need to take care of links to attachments and images by themselves. This helps the blogs that export BlogML files (e.g. BlogEngine.NET) transform to hugo sites easily.
diff --git a/docs/content/en/tools/other.md b/docs/content/en/tools/other.md
new file mode 100644
index 000000000..3afd7b96b
--- /dev/null
+++ b/docs/content/en/tools/other.md
@@ -0,0 +1,29 @@
+---
+title: Other Hugo Community Projects
+linktitle: Other Projects
+description: Some interesting projects developed by the Hugo community that don't quite fit into our other developer tool categories.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [developer tools]
+keywords: [frontend,gui]
+menu:
+ docs:
+ parent: "tools"
+ weight: 70
+weight: 70
+sections_weight: 70
+draft: false
+aliases: []
+toc: false
+---
+
+And for all the other small things around Hugo:
+
+* [hugo-gallery](https://github.com/icecreammatt/hugo-gallery) lets you create an image gallery for Hugo sites.
+* [flickr-hugo-embed](https://github.com/nikhilm/flickr-hugo-embed) prints shortcodes to embed a set of images from an album on Flickr into Hugo.
+* [hugo-openapispec-shortcode](https://github.com/tenfourty/hugo-openapispec-shortcode) A shortcode that allows you to include [Open API Spec](https://openapis.org) (formerly known as Swagger Spec) in a page.
+* [HugoPhotoSwipe](https://github.com/GjjvdBurg/HugoPhotoSwipe) makes it easy to create image galleries using PhotoSwipe.
+* [Hugo SFTP Upload](https://github.com/thomasmey/HugoSftpUpload) Syncs the local build of your Hugo website with your remote webserver via SFTP.
+* [Emacs Easy Hugo](https://github.com/masasam/emacs-easy-hugo) Emacs package for writing blog posts in markdown or org-mode and building your site with Hugo.
+* [JAMStack Themes](https://jamstackthemes.dev/ssg/hugo/). JAMStack themes is a collection of site themes filterable by static site generator and supported CMS to help build CMS-connected sites using Hugo (linking to Hugo-specific themes).
diff --git a/docs/content/en/tools/search.md b/docs/content/en/tools/search.md
new file mode 100644
index 000000000..dec87d72c
--- /dev/null
+++ b/docs/content/en/tools/search.md
@@ -0,0 +1,35 @@
+---
+title: Search for your Hugo Website
+linktitle: Search
+description: See some of the open-source and commercial search options for your newly created Hugo website.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-26
+categories: [developer tools]
+keywords: [search,tools]
+menu:
+ docs:
+ parent: "tools"
+ weight: 60
+weight: 60
+sections_weight: 60
+draft: false
+aliases: []
+toc: true
+---
+
+A static website with a dynamic search function? Yes, Hugo provides an alternative to embeddable scripts from Google or other search engines for static websites. Hugo allows you to provide your visitors with a custom search function by indexing your content files directly.
+
+* [GitHub Gist for Hugo Workflow](https://gist.github.com/sebz/efddfc8fdcb6b480f567). This gist contains a simple workflow to create a search index for your static website. It uses a simple Grunt script to index all your content files and [lunr.js](https://lunrjs.com/) to serve the search results.
+* [hugo-elasticsearch](https://www.npmjs.com/package/hugo-elasticsearch). Generate [Elasticsearch](https://www.elastic.co/guide/en/elasticsearch/reference/current/index.html) indexes for Hugo static sites by parsing front matter. Hugo-Elasticsearch will generate a newline delimited JSON (NDJSON) file that can be bulk uploaded into Elasticsearch using any one of the available [clients](https://www.elastic.co/guide/en/elasticsearch/client/index.html).
+* [hugo-lunr](https://www.npmjs.com/package/hugo-lunr). A simple way to add site search to your static Hugo site using [lunr.js](https://lunrjs.com/). Hugo-lunr will create an index file of any html and markdown documents in your Hugo project.
+* [hugo-lunr-zh](https://www.npmjs.com/package/hugo-lunr-zh). A bit like Hugo-lunr, but Hugo-lunr-zh can help you separate the Chinese keywords.
+* [Github Gist for Fuse.js integration](https://gist.github.com/eddiewebb/735feb48f50f0ddd65ae5606a1cb41ae). This gist demonstrates how to leverage Hugo's existing build time processing to generate a searchable JSON index used by [Fuse.js](https://fusejs.io/) on the client side. Although this gist uses Fuse.js for fuzzy matching, any client side search tool capable of reading JSON indexes will work. Does not require npm, grunt or other build-time tools except Hugo!
+* [hugo-search-index](https://www.npmjs.com/package/hugo-search-index). A library containing Gulp tasks and a prebuilt browser script that implements search. Gulp generates a search index from project markdown files.
+* [hugofastsearch](https://gist.github.com/cmod/5410eae147e4318164258742dd053993). A usability and speed update to "GitHub Gist for Fuse.js integration" — global, keyboard-optimized search.
+
+## Commercial Search Services
+
+* [Algolia](https://www.algolia.com/)'s Search API makes it easy to deliver a great search experience in your apps and websites. Algolia Search provides hosted full-text, numerical, faceted, and geolocalized search.
+* [Bonsai](https://www.bonsai.io) is a fully-managed hosted Elasticsearch service that is fast, reliable, and simple to set up. Easily ingest your docs from Hugo into Elasticsearch following [this guide from the docs](https://docs.bonsai.io/docs/hugo).
+* [ExpertRec](https://www.expertrec.com/) is a hosted search-as-a-service solution that is fast and scalable. Set-up and integration is extremely easy and takes only a few minutes. The search settings can be modified without coding using a dashboard.
diff --git a/docs/content/en/tools/starter-kits.md b/docs/content/en/tools/starter-kits.md
new file mode 100644
index 000000000..e4255f98e
--- /dev/null
+++ b/docs/content/en/tools/starter-kits.md
@@ -0,0 +1,45 @@
+---
+title: Starter Kits
+linktitle: Starter Kits
+description: A list of community-developed projects designed to help you get up and running with Hugo.
+date: 2017-02-22
+publishdate: 2017-02-01
+lastmod: 2018-08-11
+keywords: [starters,assets,pipeline]
+menu:
+ docs:
+ parent: "tools"
+ weight: 30
+weight: 30
+sections_weight: 30
+draft: false
+aliases: [/developer-tools/migrations/,/developer-tools/migrated/]
+toc: false
+---
+
+Know of a Hugo-related starter kit that isn't mentioned here? [Please add it to the list.][addkit]
+
+{{% note "Starter Kits are Not Maintained by the Hugo Team"%}}
+The following starter kits are developed by active members of the Hugo community. If you find yourself having issues with any of the projects, it's best to file an issue directly with the project's maintainer(s).
+{{% /note %}}
+
+* [Hugo Wrapper][hugow]. Hugo Wrapper is a POSIX-style shell script which acts as a wrapper to download and run Hugo binary for your platform. It can be executed in variety of [Operating Systems][hugow-test] and [Command Shells][hugow-test].
+* [Victor Hugo][]. Victor Hugo is a Hugo boilerplate for creating truly epic websites using Webpack as an asset pipeline. Victor Hugo uses post-css and Babel for CSS and JavaScript, respectively, and is actively maintained.
+* [GOHUGO AMP][]. GoHugo AMP is a starter theme that aims to make it easy to adopt [Google's AMP Project][amp]. The starter kit comes with 40+ shortcodes and partials plus automatic structured data. The project also includes a [separate site with extensive documentation][gohugodocs].
+* [Blaupause][]. Blaupause is a developer-friendly Hugo starter kit based on Gulp tasks. It comes ES6-ready with several helpers for SVG and fonts and basic structure for HTML, SCSS, and JavaScript.
+* [hugulp][]. hugulp is a tool to optimize the assets of a Hugo website. The main idea is to recreate the famous Ruby on Rails Asset Pipeline, which minifies, concatenates and fingerprints the assets used in your website.
+* [Atlas][]. Atlas is a Hugo boilerplate designed to speed up development with support for Netlify, Hugo Pipes, SCSS & more. It's actively maintained and contributions are always welcome.
+* [Hyas][]. Hyas is a Hugo starter helping you build modern websites that are secure, fast, and SEO-ready — by default. It is Netlify-ready (functions, redirects, headers) and comes with [documentation](https://gethyas.com/) to easily make it your own.
+
+
+[addkit]: https://github.com/gohugoio/hugo/edit/master/docs/content/en/tools/starter-kits.md
+[amp]: https://amp.dev
+[Blaupause]: https://github.com/fspoettel/blaupause
+[GOHUGO AMP]: https://github.com/wildhaber/gohugo-amp
+[gohugodocs]: https://gohugo-amp.gohugohq.com/
+[hugow]: https://github.com/khos2ow/hugo-wrapper
+[hugow-test]: https://github.com/khos2ow/hugo-wrapper#tested-on
+[hugulp]: https://github.com/jbrodriguez/hugulp
+[Victor Hugo]: https://github.com/netlify/victor-hugo
+[Atlas]: https://github.com/indigotree/atlas
+[Hyas]: https://github.com/h-enk/hyas
diff --git a/docs/content/en/troubleshooting/_index.md b/docs/content/en/troubleshooting/_index.md
new file mode 100644
index 000000000..3170dc7d8
--- /dev/null
+++ b/docs/content/en/troubleshooting/_index.md
@@ -0,0 +1,23 @@
+---
+title: Troubleshoot
+linktitle: Troubleshoot
+description: Frequently asked questions and known issues pulled from the Hugo Discuss forum.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+menu:
+ docs:
+ parent: "troubleshooting"
+ weight: 1
+weight: 1
+draft: false
+hidesectioncontents: false
+slug:
+aliases: [/troubleshooting/faqs/,/faqs/]
+toc: false
+notesforauthors:
+---
+
+The Troubleshooting section includes known issues, recent workarounds, and FAQs pulled from the [Hugo Discussion Forum][forum].
+
+[forum]: https://discourse.gohugo.io
diff --git a/docs/content/en/troubleshooting/build-performance.md b/docs/content/en/troubleshooting/build-performance.md
new file mode 100644
index 000000000..e0700f381
--- /dev/null
+++ b/docs/content/en/troubleshooting/build-performance.md
@@ -0,0 +1,101 @@
+---
+title: Build Performance
+linktitle: Build Performance
+description: An overview of features used for diagnosing and improving performance issues in site builds.
+date: 2017-03-12
+publishdate: 2017-03-12
+lastmod: 2017-03-12
+keywords: [performance, build]
+categories: [troubleshooting]
+menu:
+ docs:
+ parent: "troubleshooting"
+weight: 3
+slug:
+aliases: []
+toc: true
+---
+
+{{% note %}}
+The example site used below is from https://github.com/gohugoio/hugo/tree/master/examples/blog
+{{% /note %}}
+
+## Template Metrics
+
+Hugo is a very fast static site generator, but it is possible to write
+inefficient templates. Hugo's *template metrics* feature is extremely helpful
+in pinpointing which templates are executed most often and how long those
+executions take **in terms of CPU time**.
+
+| Metric Name | Description |
+|---------------------|-------------|
+| cumulative duration | The cumulative time spent executing a given template. |
+| average duration | The average time spent executing a given template. |
+| maximum duration | The maximum time a single execution took for a given template. |
+| count | The number of times a template was executed. |
+| template | The template name. |
+
+```
+▶ hugo --templateMetrics
+Started building sites ...
+
+Built site for language en:
+0 draft content
+0 future content
+0 expired content
+2 regular pages created
+22 other pages created
+0 non-page files copied
+0 paginator pages created
+4 tags created
+3 categories created
+total in 18 ms
+
+Template Metrics:
+
+ cumulative average maximum
+ duration duration duration count template
+ ---------- -------- -------- ----- --------
+ 6.419663ms 583.605µs 994.374µs 11 _internal/_default/rss.xml
+ 4.718511ms 1.572837ms 3.880742ms 3 indexes/category.html
+ 4.642666ms 2.321333ms 3.282842ms 2 posts/single.html
+ 4.364445ms 396.767µs 2.451372ms 11 partials/header.html
+ 2.346069ms 586.517µs 903.343µs 4 indexes/tag.html
+ 2.330919ms 211.901µs 2.281342ms 11 partials/header.includes.html
+ 1.238976ms 103.248µs 446.084µs 12 posts/li.html
+ 972.16µs 972.16µs 972.16µs 1 _internal/_default/sitemap.xml
+ 953.597µs 953.597µs 953.597µs 1 index.html
+ 822.263µs 822.263µs 822.263µs 1 indexes/post.html
+ 567.498µs 51.59µs 112.205µs 11 partials/navbar.html
+ 348.22µs 31.656µs 88.249µs 11 partials/meta.html
+ 346.782µs 173.391µs 276.176µs 2 posts/summary.html
+ 235.184µs 21.38µs 124.383µs 11 partials/footer.copyright.html
+ 132.003µs 12µs 117.999µs 11 partials/menu.html
+ 72.547µs 6.595µs 63.764µs 11 partials/footer.html
+```
+
+{{% note %}}
+**A Note About Parallelism**
+
+Hugo builds pages in parallel where multiple pages are generated
+simultaneously. Because of this parallelism, the sum of "cumulative duration"
+values is usually greater than the actual time it takes to build a site.
+{{% /note %}}
+
+
+## Cached Partials
+
+Some `partial` templates such as sidebars or menus are executed many times
+during a site build. Depending on the content within the `partial` template and
+the desired output, the template may benefit from caching to reduce the number
+of executions. The [`partialCached`][partialCached] template function provides
+caching capabilities for `partial` templates.
+
+{{% tip %}}
+Note that you can create cached variants of each `partial` by passing additional
+parameters to `partialCached` beyond the initial context. See the
+`partialCached` documentation for more details.
+{{% /tip %}}
+
+
+[partialCached]:{{< ref "/functions/partialCached.md" >}}
diff --git a/docs/content/en/troubleshooting/faq.md b/docs/content/en/troubleshooting/faq.md
new file mode 100644
index 000000000..6e90bd0d4
--- /dev/null
+++ b/docs/content/en/troubleshooting/faq.md
@@ -0,0 +1,58 @@
+---
+title: Frequently Asked Questions
+linktitle: FAQ
+description: Solutions to some common Hugo problems.
+date: 2018-02-10
+categories: [troubleshooting]
+menu:
+ docs:
+ parent: "troubleshooting"
+keywords: [faqs]
+weight: 2
+toc: true
+aliases: [/faq/]
+---
+
+{{% note %}}
+**Note:** The answers/solutions presented below are short, and may not be enough to solve your problem. Visit [Hugo Discourse](https://discourse.gohugo.io/) and use the search. It that does not help, start a new topic and ask your questions.
+{{% /note %}}
+
+## I can't see my content!
+
+Is your markdown file [in draft mode](https://gohugo.io/content-management/front-matter/#front-matter-variables)? When testing, run `hugo server` with the `-D` or `--buildDrafts` [switch](https://gohugo.io/getting-started/usage/#draft-future-and-expired-content).
+
+## Can I set configuration variables via OS environment?
+
+Yes you can! See [Configure with Environment Variables](/getting-started/configuration/#configure-with-environment-variables).
+
+## How do I schedule posts?
+
+1. Set `publishDate` in the page [Front Matter](/content-management/front-matter/) to a datetime in the future. If you want the creation and publication datetime to be the same, it's also sufficient to only set `date`[^date-hierarchy].
+2. Build and publish at intervals.
+
+How to automate the "publish at intervals" part depends on your situation:
+
+* If you deploy from your own PC/server, you can automate with [Cron](https://en.wikipedia.org/wiki/Cron) or similar.
+* If your site is hosted on a service similar to [Netlify](https://www.netlify.com/) you can use a service such as [ifttt](https://ifttt.com/date_and_time) to schedule the updates.
+
+Also see this Twitter thread:
+
+{{< tweet user="ChrisShort" id="962380712027590657" >}}
+
+[^date-hierarchy]: See [Configure Dates](https://gohugo.io/getting-started/configuration/#configure-dates) for the order in which the different date variables are complemented by each other when not explicitly set.
+
+## Can I use the latest Hugo version on Netlify?
+
+Yes you can! Read [this](/hosting-and-deployment/hosting-on-netlify/#configure-hugo-version-in-netlify).
+
+## I get "TOCSS ... this feature is not available in your current Hugo version"
+
+If you process `SCSS` or `SASS` to `CSS` in your Hugo project, you need the Hugo `extended` version, or else you may see this error message:
+
+```bash
+error: failed to transform resource: TOCSS: failed to transform "scss/main.scss" (text/x-scss): this feature is not available in your current Hugo version
+```
+
+We release two set of binaries for technical reasons. The extended version is not what you get by default for some installation methods. On the [release page](https://github.com/gohugoio/hugo/releases), look for archives with `extended` in the name. To build `hugo-extended`, use `go install --tags extended`
+
+To confirm, run `hugo version` and look for the word `extended`.
diff --git a/docs/content/en/variables/_index.md b/docs/content/en/variables/_index.md
new file mode 100644
index 000000000..382ee25d4
--- /dev/null
+++ b/docs/content/en/variables/_index.md
@@ -0,0 +1,23 @@
+---
+title: Variables and Params
+linktitle: Variables Overview
+description: Page-, file-, taxonomy-, and site-level variables and parameters available in templates.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [variables and params]
+keywords: [variables,params,values,globals]
+draft: false
+menu:
+ docs:
+ parent: "variables"
+ weight: 1
+weight: 01 #rem
+sections_weight: 01
+aliases: [/templates/variables/]
+toc: false
+---
+
+Hugo's templates are context aware and make a large number of values available to you as you're creating views for your website.
+
+[Go templates]: /templates/introduction/ "Understand context in Go templates by learning the language's fundamental templating functions."
diff --git a/docs/content/en/variables/files.md b/docs/content/en/variables/files.md
new file mode 100644
index 000000000..1769fa688
--- /dev/null
+++ b/docs/content/en/variables/files.md
@@ -0,0 +1,54 @@
+---
+title: File Variables
+linktitle:
+description: "You can access filesystem-related data for a content file in the `.File` variable."
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [variables and params]
+keywords: [files]
+draft: false
+menu:
+ docs:
+ parent: "variables"
+ weight: 40
+weight: 40
+sections_weight: 40
+aliases: [/variables/file-variables/]
+toc: false
+---
+
+{{% note "Rendering Local Files" %}}
+For information on creating shortcodes and templates that tap into Hugo's file-related feature set, see [Local File Templates](/templates/files/).
+{{% /note %}}
+
+The `.File` object contains the following fields:
+
+.File.Path
+: the original relative path of the page, relative to the content dir (e.g., `posts/foo.en.md`)
+
+.File.LogicalName
+: the name of the content file that represents a page (e.g., `foo.en.md`)
+
+.File.TranslationBaseName
+: the filename without extension or optional language identifier (e.g., `foo`)
+
+.File.ContentBaseName
+: is a either TranslationBaseName or name of containing folder if file is a leaf bundle.
+
+.File.BaseFileName
+: the filename without extension (e.g., `foo.en`)
+
+.File.Ext
+: the file extension of the content file (e.g., `md`); this can also be called using `.File.Extension` as well. Note that it is *only* the extension without `.`.
+
+.File.Lang
+: the language associated with the given file if Hugo's [Multilingual features][multilingual] are enabled (e.g., `en`)
+
+.File.Dir
+: given the path `content/posts/dir1/dir2/`, the relative directory path of the content file will be returned (e.g., `posts/dir1/dir2/`). Note that the path separator (`\` or `/`) could be dependent on the operating system.
+
+.File.UniqueID
+: the MD5-checksum of the content file's path.
+
+[Multilingual]: /content-management/multilingual/
diff --git a/docs/content/en/variables/git.md b/docs/content/en/variables/git.md
new file mode 100644
index 000000000..59ee9ac88
--- /dev/null
+++ b/docs/content/en/variables/git.md
@@ -0,0 +1,58 @@
+---
+title: Git Info Variables
+linktitle: Git Variables
+description: Get the last Git revision information for every content file.
+date: 2017-03-12
+publishdate: 2017-03-12
+lastmod: 2017-03-12
+categories: [variables and params]
+keywords: [git]
+draft: false
+menu:
+ docs:
+ parent: "variables"
+ weight: 70
+weight: 70
+sections_weight: 70
+aliases: [/extras/gitinfo/]
+toc: false
+wip: false
+---
+
+{{% note "`.GitInfo` Performance Considerations" %}}
+Hugo's Git integrations should be fairly performant but *can* increase your build time. This will depend on the size of your Git history.
+{{% /note %}}
+
+## `.GitInfo` Prerequisites
+
+1. The Hugo site must be in a Git-enabled directory.
+2. The Git executable must be installed and in your system `PATH`.
+3. The `.GitInfo` feature must be enabled in your Hugo project by passing `--enableGitInfo` flag on the command line or by setting `enableGitInfo` to `true` in your [site's configuration file][configuration].
+
+## The `.GitInfo` Object
+
+The `GitInfo` object contains the following fields:
+
+.AbbreviatedHash
+: the abbreviated commit hash (e.g., `866cbcc`)
+
+.AuthorName
+: the author's name, respecting `.mailmap`
+
+.AuthorEmail
+: the author's email address, respecting `.mailmap`
+
+.AuthorDate
+: the author date
+
+.Hash
+: the commit hash (e.g., `866cbccdab588b9908887ffd3b4f2667e94090c3`)
+
+.Subject
+: commit message subject (e.g., `tpl: Add custom index function`)
+
+## `.Lastmod`
+
+If the `.GitInfo` feature is enabled, `.Lastmod` (on `Page`) is fetched from Git i.e. `.GitInfo.AuthorDate`. This behaviour can be changed by adding your own [front matter configuration for dates](/getting-started/configuration/#configure-front-matter).
+
+[configuration]: /getting-started/configuration/
diff --git a/docs/content/en/variables/hugo.md b/docs/content/en/variables/hugo.md
new file mode 100644
index 000000000..7b1e6601f
--- /dev/null
+++ b/docs/content/en/variables/hugo.md
@@ -0,0 +1,49 @@
+---
+title: Hugo-specific Variables
+linktitle: Hugo Variables
+description: The `.Hugo` variable provides easy access to Hugo-related data.
+date: 2017-03-12
+publishdate: 2017-03-12
+lastmod: 2017-03-12
+categories: [variables and params]
+keywords: [hugo,generator]
+draft: false
+menu:
+ docs:
+ parent: "variables"
+ weight: 60
+weight: 60
+sections_weight: 60
+aliases: []
+toc: false
+wip: false
+---
+
+{{% warning "Deprecated" %}}
+Page's `.Hugo` is deprecated and will be removed in a future release. Use the global `hugo` function.
+For example: `hugo.Generator`.
+{{% /warning %}}
+
+It contains the following fields:
+
+.Hugo.Generator
+: `<meta>` tag for the version of Hugo that generated the site. `.Hugo.Generator` outputs a *complete* HTML tag; e.g. `<meta name="generator" content="Hugo 0.18" />`
+
+.Hugo.Version
+: the current version of the Hugo binary you are using e.g. `0.13-DEV`<br>
+
+.Hugo.Environment
+: the current running environment as defined through the `--environment` cli tag.
+
+.Hugo.CommitHash
+: the git commit hash of the current Hugo binary e.g. `0e8bed9ccffba0df554728b46c5bbf6d78ae5247`
+
+.Hugo.BuildDate
+: the compile date of the current Hugo binary formatted with RFC 3339 e.g. `2002-10-02T10:00:00-05:00`<br>
+
+
+
+{{% note "Use the Hugo Generator Tag" %}}
+We highly recommend using `.Hugo.Generator` in your website's `<head>`. `.Hugo.Generator` is included by default in all themes hosted on [themes.gohugo.io](https://themes.gohugo.io). The generator tag allows the Hugo team to track the usage and popularity of Hugo.
+{{% /note %}}
+
diff --git a/docs/content/en/variables/menus.md b/docs/content/en/variables/menus.md
new file mode 100644
index 000000000..9b8fe4d49
--- /dev/null
+++ b/docs/content/en/variables/menus.md
@@ -0,0 +1,128 @@
+---
+title: Menu Entry Properties
+linktitle: Menu Entry Properties
+description: A menu entry in a menu-template has specific variables and functions to make menu management easier.
+date: 2017-03-12
+publishdate: 2017-03-12
+lastmod: 2017-03-12
+categories: [variables and params]
+keywords: [menus]
+draft: false
+menu:
+ docs:
+ title: "variables defined by a menu entry"
+ parent: "variables"
+ weight: 50
+weight: 50
+sections_weight: 50
+aliases: [/variables/menu/]
+toc: false
+---
+
+A **menu entry** has the following properties available that can be used in a
+[menu template][menu-template].
+
+## Menu Entry Variables
+
+.Menu
+: _string_ <br />
+Name of the **menu** that contains this **menu entry**.
+
+.URL
+: _string_ <br />
+URL that the menu entry points to. The `url` key, if set for the menu entry,
+sets this value. If that key is not set, and if the menu entry is set in a page
+front-matter, this value defaults to the page's `.RelPermalink`.
+
+.Page
+: _\*Page_ <br />
+Reference to the [page object][page-object] associated with the menu entry. This
+will be non-nil if the menu entry is set via a page's front-matter and not via
+the site config.
+
+.PageRef {{< new-in "0.86.0" >}}
+: _string_ <br /> Can be set if defined in site config and the menu entry refers to a Page. [site.GetPage](/functions/getpage/) will be used to do the page lookup. If this is set, you don't need to set the `URL`.
+
+.Name
+: _string_ <br />
+Name of the menu entry. The `name` key, if set for the menu entry, sets
+this value. If that key is not set, and if the menu entry is set in a page
+front-matter, this value defaults to the page's `.LinkTitle`.
+
+.Identifier
+: _string_ <br />
+Value of the `identifier` key if set for the menu entry. This value must be
+unique for each menu entry. **It is necessary to set a unique identifier
+manually if two or more menu entries have the same `.Name`.**
+
+.Pre
+: _template.HTML_ <br />
+Value of the `pre` key if set for the menu entry. This value typically contains
+a string representing HTML.
+
+.Post
+: _template.HTML_ <br />
+Value of the `post` key if set for the menu entry. This value typically contains
+a string representing HTML.
+
+.Weight
+: _int_ <br />
+Value of the `weight` key if set for the menu entry. By default the entries in
+a menu are sorted ascending by their `weight`. If that key is not set, and if
+the menu entry is set in a page front-matter, this value defaults to the page's
+`.Weight`.
+
+.Parent
+: _string_ <br />
+Name (or Identifier if present) of this menu entry's parent **menu entry**. The
+`parent` key, if set for the menu entry, sets this value. If this key is set,
+this menu entry nests under that parent entry, else it nests directly under the
+`.Menu`.
+
+.Children
+: _Menu_ <br />
+This value is auto-populated by Hugo. It is a collection of children menu
+entries, if any, under the current menu entry.
+
+## Menu Entry Functions
+
+Menus also have the following functions available:
+
+.HasChildren
+: _boolean_ <br />
+Returns `true` if `.Children` is non-nil.
+
+.KeyName
+: _string_ <br />
+Returns the `.Identifier` if present, else returns the `.Name`.
+
+.IsEqual
+: _boolean_ <br />
+Returns `true` if the two compared menu entries represent the same menu entry.
+
+.IsSameResource
+: _boolean_ <br />
+Returns `true` if the two compared menu entries have the same `.URL`.
+
+.Title
+: _string_ <br />
+Link title, meant to be used in the `title` attribute of a menu entry's
+`<a>`-tags. Returns the menu entry's `title` key if set. Else, if the menu
+entry was created through a page's front-matter, it returns the page's
+`.LinkTitle`. Else, it just returns an empty string.
+
+## Other Menu-related Functions
+
+Additionally, here are some relevant methods available to menus on a page:
+
+.IsMenuCurrent
+: _(menu string, menuEntry *MenuEntry ) boolean_ <br />
+See [`.IsMenuCurrent` method](/functions/ismenucurrent/).
+
+.HasMenuCurrent
+: _(menu string, menuEntry *MenuEntry) boolean_ <br />
+See [`.HasMenuCurrent` method](/functions/hasmenucurrent/).
+
+
+[menu-template]: /templates/menu-templates/
+[page-object]: /variables/page/
diff --git a/docs/content/en/variables/page.md b/docs/content/en/variables/page.md
new file mode 100644
index 000000000..4ba4d3d91
--- /dev/null
+++ b/docs/content/en/variables/page.md
@@ -0,0 +1,307 @@
+---
+title: Page Variables
+linktitle:
+description: Page-level variables are defined in a content file's front matter, derived from the content's file location, or extracted from the content body itself.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [variables and params]
+keywords: [pages]
+draft: false
+menu:
+ docs:
+ title: "variables defined by a page"
+ parent: "variables"
+ weight: 20
+weight: 20
+sections_weight: 20
+aliases: []
+toc: true
+---
+
+The following is a list of page-level variables. Many of these will be defined in the front matter, derived from file location, or extracted from the content itself.
+
+{{% note "`.Scratch`" %}}
+See [`.Scratch`](/functions/scratch/) for page-scoped, writable variables.
+{{% /note %}}
+
+## Page Variables
+
+.AlternativeOutputFormats
+: contains all alternative formats for a given page; this variable is especially useful `link rel` list in your site's `<head>`. (See [Output Formats](/templates/output-formats/).)
+
+.Aliases
+: aliases of this page
+
+.Content
+: the content itself, defined below the front matter.
+
+.Data
+: the data specific to this type of page.
+
+.Date
+: the date associated with the page; `.Date` pulls from the `date` field in a content's front matter. See also `.ExpiryDate`, `.PublishDate`, and `.Lastmod`.
+
+.Description
+: the description for the page.
+
+.Dir
+: the path of the folder containing this content file. The path is relative to the `content` folder.
+
+.Draft
+: a boolean, `true` if the content is marked as a draft in the front matter.
+
+.ExpiryDate
+: the date on which the content is scheduled to expire; `.ExpiryDate` pulls from the `expirydate` field in a content's front matter. See also `.PublishDate`, `.Date`, and `.Lastmod`.
+
+.File
+: filesystem-related data for this content file. See also [File Variables][].
+
+.FuzzyWordCount
+: the approximate number of words in the content.
+
+.Hugo
+: see [Hugo Variables](/variables/hugo/).
+
+.IsHome
+: `true` in the context of the [homepage](/templates/homepage/).
+
+.IsNode
+: always `false` for regular content pages.
+
+.IsPage
+: always `true` for regular content pages.
+
+.IsSection
+: `true` if [`.Kind`](/templates/section-templates/#page-kinds) is `section`.
+
+.IsTranslated
+: `true` if there are translations to display.
+
+.Keywords
+: the meta keywords for the content.
+
+.Kind
+: the page's *kind*. Possible return values are `page`, `home`, `section`, `taxonomy`, or `term`. Note that there are also `RSS`, `sitemap`, `robotsTXT`, and `404` kinds, but these are only available during the rendering of each of these respective page's kind and therefore *not* available in any of the `Pages` collections.
+
+.Language
+: a language object that points to the language's definition in the site `config`. `.Language.Lang` gives you the language code.
+
+.Lastmod
+: the date the content was last modified. `.Lastmod` pulls from the `lastmod` field in a content's front matter.
+
+ - If `lastmod` is not set, and `.GitInfo` feature is disabled, the front matter `date` field will be used.
+ - If `lastmod` is not set, and `.GitInfo` feature is enabled, `.GitInfo.AuthorDate` will be used instead.
+
+See also `.ExpiryDate`, `.Date`, `.PublishDate`, and [`.GitInfo`][gitinfo].
+
+.LinkTitle
+: access when creating links to the content. If set, Hugo will use the `linktitle` from the front matter before `title`.
+
+.Next
+: Points up to the next [regular page](/variables/site/#site-pages) (sorted by Hugo's [default sort](/templates/lists#default-weight-date-linktitle-filepath)). Example: `{{with .Next}}{{.Permalink}}{{end}}`. Calling `.Next` from the first page returns `nil`.
+
+.NextInSection
+: Points up to the next [regular page](/variables/site/#site-pages) below the same top level section (e.g. in `/blog`)). Pages are sorted by Hugo's [default sort](/templates/lists#default-weight-date-linktitle-filepath). Example: `{{with .NextInSection}}{{.Permalink}}{{end}}`. Calling `.NextInSection` from the first page returns `nil`.
+
+.OutputFormats
+: contains all formats, including the current format, for a given page. Can be combined the with [`.Get` function](/functions/get/) to grab a specific format. (See [Output Formats](/templates/output-formats/).)
+
+.Pages
+: a collection of associated pages. This value will be `nil` within
+ the context of regular content pages. See [`.Pages`](#pages).
+
+.Permalink
+: the Permanent link for this page; see [Permalinks](/content-management/urls/)
+
+.Plain
+: the Page content stripped of HTML tags and presented as a string.
+
+.PlainWords
+: the slice of strings that results from splitting .Plain into words, as defined in Go's [strings.Fields](https://golang.org/pkg/strings/#Fields).
+
+.Prev
+: Points down to the previous [regular page](/variables/site/#site-pages) (sorted by Hugo's [default sort](/templates/lists#default-weight-date-linktitle-filepath)). Example: `{{if .Prev}}{{.Prev.Permalink}}{{end}}`. Calling `.Prev` from the last page returns `nil`.
+
+.PrevInSection
+: Points down to the previous [regular page](/variables/site/#site-pages) below the same top level section (e.g. `/blog`). Pages are sorted by Hugo's [default sort](/templates/lists#default-weight-date-linktitle-filepath). Example: `{{if .PrevInSection}}{{.PrevInSection.Permalink}}{{end}}`. Calling `.PrevInSection` from the last page returns `nil`.
+
+.PublishDate
+: the date on which the content was or will be published; `.Publishdate` pulls from the `publishdate` field in a content's front matter. See also `.ExpiryDate`, `.Date`, and `.Lastmod`.
+
+.RSSLink (deprecated)
+: link to the page's RSS feed. This is deprecated. You should instead do something like this: `{{ with .OutputFormats.Get "RSS" }}{{ .RelPermalink }}{{ end }}`.
+
+.RawContent
+: raw markdown content without the front matter. Useful with [remarkjs.com](
+https://remarkjs.com)
+
+.ReadingTime
+: the estimated time, in minutes, it takes to read the content.
+
+.Resources
+: resources such as images and CSS that are associated with this page
+
+.Ref
+: returns the permalink for a given reference (e.g., `.Ref "sample.md"`). `.Ref` does *not* handle in-page fragments correctly. See [Cross References](/content-management/cross-references/).
+
+.RelPermalink
+: the relative permanent link for this page.
+
+.RelRef
+: returns the relative permalink for a given reference (e.g., `RelRef
+"sample.md"`). `.RelRef` does *not* handle in-page fragments correctly. See [Cross References](/content-management/cross-references/).
+
+.Site
+: see [Site Variables](/variables/site/).
+
+.Sites
+: returns all sites (languages). A typical use case would be to link back to the main language: `<a href="{{ .Sites.First.Home.RelPermalink }}">...</a>`.
+
+.Sites.First
+: returns the site for the first language. If this is not a multilingual setup, it will return itself.
+
+.Summary
+: a generated summary of the content for easily showing a snippet in a summary view. The breakpoint can be set manually by inserting <code>&lt;!&#x2d;&#x2d;more&#x2d;&#x2d;&gt;</code> at the appropriate place in the content page, or the summary can be written independent of the page text. See [Content Summaries](/content-management/summaries/) for more details.
+
+.TableOfContents
+: the rendered [table of contents](/content-management/toc/) for the page.
+
+.Title
+: the title for this page.
+
+.Translations
+: a list of translated versions of the current page. See [Multilingual Mode](/content-management/multilingual/) for more information.
+
+.TranslationKey
+: the key used to map language translations of the current page. See [Multilingual Mode](/content-management/multilingual/) for more information.
+
+.Truncated
+: a boolean, `true` if the `.Summary` is truncated. Useful for showing a "Read more..." link only when necessary. See [Summaries](/content-management/summaries/) for more information.
+
+.Type
+: the [content type](/content-management/types/) of the content (e.g., `posts`).
+
+.UniqueID (deprecated)
+: the MD5-checksum of the content file's path. This variable is deprecated and will be removed, use `.File.UniqueID` instead.
+
+.Weight
+: assigned weight (in the front matter) to this content, used in sorting.
+
+.WordCount
+: the number of words in the content.
+
+## Section Variables and Methods
+
+Also see [Sections](/content-management/sections/).
+
+{{< readfile file="/content/en/readfiles/sectionvars.md" markdown="true" >}}
+
+## The `.Pages` Variable {#pages}
+
+`.Pages` is an alias to `.Data.Pages`. It is conventional to use the
+aliased form `.Pages`.
+
+### `.Pages` compared to `.Site.Pages`
+
+{{< getcontent path="readfiles/pages-vs-site-pages.md" >}}
+
+## Page-level Params
+
+Any other value defined in the front matter in a content file, including taxonomies, will be made available as part of the `.Params` variable.
+
+```
+---
+title: My First Post
+date: 2017-02-20T15:26:23-06:00
+categories: [one]
+tags: [two,three,four]
+```
+
+With the above front matter, the `tags` and `categories` taxonomies are accessible via the following:
+
+* `.Params.tags`
+* `.Params.categories`
+
+{{% note "Casing of Params" %}}
+Page-level `.Params` are *only* accessible in lowercase.
+{{% /note %}}
+
+The `.Params` variable is particularly useful for the introduction of user-defined front matter fields in content files. For example, a Hugo website on book reviews could have the following front matter in `/content/review/book01.md`:
+
+```
+---
+...
+affiliatelink: "http://www.my-book-link.here"
+recommendedby: "My Mother"
+...
+---
+```
+
+These fields would then be accessible to the `/themes/yourtheme/layouts/review/single.html` template through `.Params.affiliatelink` and `.Params.recommendedby`, respectively.
+
+Two common situations where this type of front matter field could be introduced is as a value of a certain attribute like `href=""` or by itself to be displayed as text to the website's visitors.
+
+{{< code file="/themes/yourtheme/layouts/review/single.html" >}}
+<h3><a href={{ printf "%s" $.Params.affiliatelink }}>Buy this book</a></h3>
+<p>It was recommended by {{ .Params.recommendedby }}.</p>
+{{< /code >}}
+
+This template would render as follows, assuming you've set [`uglyURLs`](/content-management/urls/) to `false` in your [site `config`](/getting-started/configuration/):
+
+{{< output file="yourbaseurl/review/book01/index.html" >}}
+<h3><a href="http://www.my-book-link.here">Buy this book</a></h3>
+<p>It was recommended by my Mother.</p>
+{{< /output >}}
+
+{{% note %}}
+See [Archetypes](/content-management/archetypes/) for consistency of `Params` across pieces of content.
+{{% /note %}}
+
+### The `.Param` Method
+
+In Hugo, you can declare params in individual pages and globally for your entire website. A common use case is to have a general value for the site param and a more specific value for some of the pages (i.e., a header image):
+
+```
+{{ $.Param "header_image" }}
+```
+
+The `.Param` method provides a way to resolve a single value according to it's definition in a page parameter (i.e. in the content's front matter) or a site parameter (i.e., in your `config`).
+
+### Access Nested Fields in Front Matter
+
+When front matter contains nested fields like the following:
+
+```
+---
+author:
+ given_name: John
+ family_name: Feminella
+ display_name: John Feminella
+---
+```
+`.Param` can access these fields by concatenating the field names together with a dot:
+
+```
+{{ $.Param "author.display_name" }}
+```
+
+If your front matter contains a top-level key that is ambiguous with a nested key, as in the following case:
+
+```
+---
+favorites.flavor: vanilla
+favorites:
+ flavor: chocolate
+---
+```
+
+The top-level key will be preferred. Therefore, the following method, when applied to the previous example, will print `vanilla` and not `chocolate`:
+
+```
+{{ $.Param "favorites.flavor" }}
+=> vanilla
+```
+
+[gitinfo]: /variables/git/
+[File Variables]: /variables/files/
diff --git a/docs/content/en/variables/pages.md b/docs/content/en/variables/pages.md
new file mode 100644
index 000000000..79d39a158
--- /dev/null
+++ b/docs/content/en/variables/pages.md
@@ -0,0 +1,30 @@
+---
+title: Pages Methods
+linktitle:
+description: Pages is the core page collection in Hugo and has many useful methods.
+date: 2019-10-20
+categories: [variables and params]
+keywords: [pages]
+draft: false
+menu:
+ docs:
+ title: "methods defined on a page collection"
+ parent: "variables"
+ weight: 21
+weight: 21
+sections_weight: 20
+aliases: [/pages]
+toc: true
+---
+
+Also see [List templates](/templates/lists) for an overview of sort methods.
+
+## .Next PAGE
+
+`.Next` and `.Prev` on `Pages` work similar to the methods with the same names on `.Page`, but are more flexible (and slightly slower) as they can be used on any page collection.
+
+`.Next` points **up** to the next page relative to the page sent in as the argument. Example: `{{with .Site.RegularPages.Next . }}{{.RelPermalink}}{{end}}`. Calling `.Next` with the first page in the collection returns `nil`.
+
+## .Prev PAGE
+
+`.Prev` points **down** to the previous page relative to the page sent in as the argument. Example: `{{with .Site.RegularPages.Prev . }}{{.RelPermalink}}{{end}}`. Calling `.Prev` with the last page in the collection returns `nil`. \ No newline at end of file
diff --git a/docs/content/en/variables/shortcodes.md b/docs/content/en/variables/shortcodes.md
new file mode 100644
index 000000000..7462deec7
--- /dev/null
+++ b/docs/content/en/variables/shortcodes.md
@@ -0,0 +1,48 @@
+---
+title: Shortcode Variables
+linktitle: Shortcode Variables
+description: Shortcodes can access page variables and also have their own specific built-in variables.
+date: 2017-03-12
+publishdate: 2017-03-12
+lastmod: 2017-03-12
+categories: [variables and params]
+keywords: [shortcodes]
+draft: false
+menu:
+ docs:
+ parent: "variables"
+ weight: 20
+weight: 20
+sections_weight: 20
+aliases: []
+toc: false
+---
+
+[Shortcodes][shortcodes] have access to parameters delimited in the shortcode declaration via [`.Get`][getfunction], page- and site-level variables, and also the following shortcode-specific fields:
+
+.Name
+: Shortcode name.
+
+.Ordinal
+: Zero-based ordinal in relation to its parent. If the parent is the page itself, this ordinal will represent the position of this shortcode in the page content.
+
+.Parent
+: provides access to the parent shortcode context in nested shortcodes. This can be very useful for inheritance of common shortcode parameters from the root.
+
+.Position
+: Contains [filename and position](https://godoc.org/github.com/gohugoio/hugo/common/text#Position) for the shortcode in a page. Note that this can be relatively expensive to calculate, and is meant for error reporting. See [Error Handling in Shortcodes](/templates/shortcode-templates/#error-handling-in-shortcodes).
+
+
+
+
+.IsNamedParams
+: boolean that returns `true` when the shortcode in question uses [named rather than positional parameters][shortcodes]
+
+.Inner
+: represents the content between the opening and closing shortcode tags when a [closing shortcode][markdownshortcode] is used
+
+[getfunction]: /functions/get/
+[markdownshortcode]: /content-management/shortcodes/#shortcodes-with-markdown
+[shortcodes]: /templates/shortcode-templates/
+
+
diff --git a/docs/content/en/variables/site.md b/docs/content/en/variables/site.md
new file mode 100644
index 000000000..bdfeb6527
--- /dev/null
+++ b/docs/content/en/variables/site.md
@@ -0,0 +1,135 @@
+---
+title: Site Variables
+linktitle: Site Variables
+description: Many, but not all, site-wide variables are defined in your site's configuration. However, Hugo provides a number of built-in variables for convenient access to global values in your templates.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [variables and params]
+keywords: [global,site]
+draft: false
+menu:
+ docs:
+ parent: "variables"
+ weight: 10
+weight: 10
+sections_weight: 10
+aliases: [/variables/site-variables/]
+toc: true
+---
+
+The following is a list of site-level (aka "global") variables. Many of these variables are defined in your site's [configuration file][config], whereas others are built into Hugo's core for convenient usage in your templates.
+
+## Get the Site object from a partial
+
+All the methods below, e.g. `.Site.RegularPages` can also be reached via the global [`site`](/functions/site/) function, e.g. `site.RegularPages`, which can be handy in partials where the `Page` object isn't easily available. {{< new-in "0.53" >}}.
+
+## Site Variables List
+
+.Site.AllPages
+: array of all pages, regardless of their translation.
+
+.Site.Author
+: a map of the authors as defined in the site configuration.
+
+.Site.BaseURL
+: the base URL for the site as defined in the site configuration.
+
+.Site.BuildDrafts
+: a boolean (default: `false`) to indicate whether to build drafts as defined in the site configuration.
+
+.Site.Copyright
+: a string representing the copyright of your website as defined in the site configuration.
+
+.Site.Data
+: custom data, see [Data Templates](/templates/data-templates/).
+
+.Site.DisqusShortname
+: a string representing the shortname of the Disqus shortcode as defined in the site configuration.
+
+.Site.GoogleAnalytics
+: a string representing your tracking code for Google Analytics as defined in the site configuration.
+
+.Site.Home
+: reference to the homepage's [page object](https://gohugo.io/variables/page/)
+
+.Site.IsMultiLingual
+: whether there are more than one language in this site. See [Multilingual](/content-management/multilingual/) for more information.
+
+.Site.IsServer
+: a boolean to indicate if the site is being served with Hugo's built-in server. See [`hugo server`](/commands/hugo_server/) for more information.
+
+.Site.Language.Lang
+: the language code of the current locale (e.g., `en`).
+
+.Site.Language.LanguageName
+: the full language name (e.g. `English`).
+
+.Site.Language.Weight
+: the weight that defines the order in the `.Site.Languages` list.
+
+.Site.Language
+: indicates the language currently being used to render the website. This object's attributes are set in site configurations' language definition.
+
+.Site.LanguageCode
+: a string representing the language tag as defined in the site configuration.
+
+.Site.LanguagePrefix
+: this can be used to prefix URLs to point to the correct language. It will even work when only one defined language. See also the functions [absLangURL](/functions/abslangurl/) and [relLangURL](/functions/rellangurl).
+
+.Site.Languages
+: an ordered list (ordered by defined weight) of languages.
+
+.Site.LastChange
+: a string representing the date/time of the most recent change to your site. This string is based on the [`date` variable in the front matter](/content-management/front-matter) of your content pages.
+
+.Site.Menus
+: all of the menus in the site.
+
+.Site.Pages
+: array of all content ordered by Date with the newest first. This array contains only the pages in the current language. See [`.Site.Pages`](#site-pages).
+
+.Site.RegularPages
+: a shortcut to the *regular* page collection. `.Site.RegularPages` is equivalent to `where .Site.Pages "Kind" "page"`. See [`.Site.Pages`](#site-pages).
+
+.Site.Sections
+: top-level directories of the site.
+
+.Site.Taxonomies
+: the [taxonomies](/taxonomies/usage/) for the entire site. Also see section [Use `.Site.Taxonomies` Outside of Taxonomy Templates](/variables/taxonomy/#use-sitetaxonomies-outside-of-taxonomy-templates).
+
+.Site.Title
+: a string representing the title of the site.
+
+## The `.Site.Params` Variable
+
+`.Site.Params` is a container holding the values from the `params` section of your site configuration.
+
+### Example: `.Site.Params`
+
+The following `config.[yaml|toml|json]` defines a site-wide param for `description`:
+
+{{< code-toggle file="config" >}}
+baseURL = "https://yoursite.example.com/"
+
+[params]
+ description = "Tesla's Awesome Hugo Site"
+ author = "Nikola Tesla"
+{{</ code-toggle >}}
+
+You can use `.Site.Params` in a [partial template](/templates/partials/) to call the default site description:
+
+{{< code file="layouts/partials/head.html" >}}
+<meta name="description" content="{{if .IsHome}}{{ $.Site.Params.description }}{{else}}{{.Description}}{{end}}" />
+{{< /code >}}
+
+## The `.Site.Pages` Variable {#site-pages}
+
+### `.Site.Pages` compared to `.Pages`
+
+{{< getcontent path="readfiles/pages-vs-site-pages.md" >}}
+
+
+
+
+[config]: /getting-started/configuration/
diff --git a/docs/content/en/variables/sitemap.md b/docs/content/en/variables/sitemap.md
new file mode 100644
index 000000000..dd926f2b3
--- /dev/null
+++ b/docs/content/en/variables/sitemap.md
@@ -0,0 +1,32 @@
+---
+title: Sitemap Variables
+linktitle: Sitemap Variables
+description:
+date: 2017-03-12
+publishdate: 2017-03-12
+lastmod: 2017-03-12
+categories: [variables and params]
+keywords: [sitemap]
+draft: false
+menu:
+ docs:
+ parent: "variables"
+ weight: 80
+weight: 80
+sections_weight: 80
+aliases: []
+toc: false
+---
+
+A sitemap is a `Page` and therefore has all the [page variables][pagevars] available to use sitemap templates. They also have the following sitemap-specific variables available to them:
+
+.Sitemap.ChangeFreq
+: the page change frequency
+
+.Sitemap.Priority
+: the priority of the page
+
+.Sitemap.Filename
+: the sitemap filename
+
+[pagevars]: /variables/page/ \ No newline at end of file
diff --git a/docs/content/en/variables/taxonomy.md b/docs/content/en/variables/taxonomy.md
new file mode 100644
index 000000000..5bcdffee5
--- /dev/null
+++ b/docs/content/en/variables/taxonomy.md
@@ -0,0 +1,84 @@
+---
+title: Taxonomy Variables
+linktitle:
+description: Taxonomy pages are of type `Page` and have all page-, site-, and list-level variables available to them. However, taxonomy terms templates have additional variables available to their templates.
+date: 2017-02-01
+publishdate: 2017-02-01
+lastmod: 2017-02-01
+categories: [variables and params]
+keywords: [taxonomies,terms]
+draft: false
+menu:
+ docs:
+ parent: "variables"
+ weight: 30
+weight: 30
+sections_weight: 30
+aliases: []
+toc: true
+---
+
+## Taxonomy Terms Page Variables
+
+[Taxonomy terms pages][taxonomytemplates] are of the type `Page` and have the following additional variables.
+
+For example, the following fields would be available in `layouts/_defaults/terms.html`, depending on how you organize your [taxonomy templates][taxonomytemplates]:
+
+.Data.Singular
+: The singular name of the taxonomy (e.g., `tags => tag`)
+
+.Data.Plural
+: The plural name of the taxonomy (e.g., `tags => tags`)
+
+.Data.Pages
+: The list of pages in the taxonomy
+
+.Data.Terms
+: The taxonomy itself
+
+.Data.Terms.Alphabetical
+: The taxonomy terms alphabetized
+
+.Data.Terms.ByCount
+: The Terms ordered by popularity
+
+Note that `.Data.Terms.Alphabetical` and `.Data.Terms.ByCount` can also be reversed:
+
+* `.Data.Terms.Alphabetical.Reverse`
+* `.Data.Terms.ByCount.Reverse`
+
+## Use `.Site.Taxonomies` Outside of Taxonomy Templates
+
+The `.Site.Taxonomies` variable holds all the taxonomies defined site-wide. `.Site.Taxonomies` is a map of the taxonomy name to a list of its values (e.g., `"tags" -> ["tag1", "tag2", "tag3"]`). Each value, though, is not a string but rather a *Taxonomy variable*.
+
+## The `.Taxonomy` Variable
+
+The `.Taxonomy` variable, available, for example, as `.Site.Taxonomies.tags`, contains the list of tags (values) and, for each tag, their corresponding content pages.
+
+### Example Usage of `.Site.Taxonomies`
+
+The following [partial template][partials] will list all your site's taxonomies, each of their keys, and all the content assigned to each of the keys. For more examples of how to order and render your taxonomies, see [Taxonomy Templates][taxonomytemplates].
+
+{{< code file="all-taxonomies-keys-and-pages.html" download="all-taxonomies-keys-and-pages.html" >}}
+<section>
+ <ul>
+ {{ range $taxonomyname, $taxonomy := .Site.Taxonomies }}
+ <li><a href="{{ "/" | relLangURL}}{{ $taxonomyname | urlize }}">{{ $taxonomyname }}</a>
+ <ul>
+ {{ range $key, $value := $taxonomy }}
+ <li> {{ $key }} </li>
+ <ul>
+ {{ range $value.Pages }}
+ <li><a href="{{ .Permalink}}"> {{ .LinkTitle }} </a> </li>
+ {{ end }}
+ </ul>
+ {{ end }}
+ </ul>
+ </li>
+ {{ end }}
+ </ul>
+</section>
+{{< /code >}}
+
+[partials]: /templates/partials/
+[taxonomytemplates]: /templates/taxonomy-templates/