HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
gohugoio
hugo
Go2013–2026
gohugoio / hugo

hugo

The world’s fastest framework for building websites.

64Distinct people
72Mentions
1Explicit recommenders
90.5KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

The world’s fastest framework for building websites.

GitHub

Where it is used

What people are saying

My problem is the mirroring itself. I don't want, taking your example, /posts/post1 just because post1 is under posts. You can get around this with some SSGs but this doesn't…

alan_n used a recommendation phrase. One indexed comment matches. This is a phrase match, not a verdict.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

Mentioned in the same Hacker News threads. That is not proof they are substitutes.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 5:04:57 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year72 dated mentions

Observed mentions: 2013-08-05 22:35:31 UTC to 2026-05-24 23:04:04 UTC.

0369122013-01-01 00:00:00 UTC to 2014-01-01 00:00:00 UTC (exclusive): 2 mentions; 1 submissions, 1 comments20132014-01-01 00:00:00 UTC to 2015-01-01 00:00:00 UTC (exclusive): 1 mentions; 0 submissions, 1 comments2015-01-01 00:00:00 UTC to 2016-01-01 00:00:00 UTC (exclusive): 8 mentions; 2 submissions, 6 comments2016-01-01 00:00:00 UTC to 2017-01-01 00:00:00 UTC (exclusive): 7 mentions; 1 submissions, 6 comments2017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 11 mentions; 6 submissions, 5 comments2018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 9 mentions; 1 submissions, 8 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments20192020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 5 mentions; 0 submissions, 5 comments2021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 4 mentions; 0 submissions, 4 comments2022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 9 mentions; 1 submissions, 8 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 6 mentions; 1 submissions, 5 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 4 mentions; 3 submissions, 1 comments2025-01-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 2 mentions; 0 submissions, 2 comments2026-01-01 00:00:00 UTC to 2027-01-01 00:00:00 UTC (exclusive): 4 mentions; 0 submissions, 4 comments. Incomplete calendar period.2026*

* An incomplete calendar period is marked with an outlined bar. Its count is not directly comparable with a full period.

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20132013-01-01 00:00:00 UTC2014-01-01 00:00:00 UTC211
20142014-01-01 00:00:00 UTC2015-01-01 00:00:00 UTC101
20152015-01-01 00:00:00 UTC2016-01-01 00:00:00 UTC826
20162016-01-01 00:00:00 UTC2017-01-01 00:00:00 UTC716
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC1165
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC918
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC000
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC505
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC404
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC918
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC615
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC431
20252025-01-01 00:00:00 UTC2026-01-01 00:00:00 UTC202
2026 (partial)2026-01-01 00:00:00 UTC2027-01-01 00:00:00 UTC404

From the project README

An excerpt from the repository, fetched Nov 12, 2026.

Read the project’s introduction
A fast and flexible static site generator built with love by bep, spf13, and friends in Go. Website | Installation | Documentation | Support | Contributing | Mastodon Overview Hugo is a static site generator written in Go, optimized for speed and designed for flexibility. With its advanced templating system and fast asset pipelines, Hugo renders a complete site in seconds, often less. Due to its flexible framework, multilingual support, and powerful taxonomy system, Hugo is widely used to create: Corporate, government, nonprofit, education, news, event, and project sites Documentation sites Image portfolios Landing pages Business, professional, and personal blogs Resumes and CVs Use Hugo's embedded web server during development to instantly see changes to content, structure, behavior, and presentation. Then deploy the site to your host, or push changes to your Git provider for automated builds and deployment. Hugo's fast asset pipelines include: CSS Processing – Bundle, transform, minify, create source maps, perform SRI hashing, and integrate with PostCSS. Image processing – Convert, resize, crop, rotate, adjust colors, apply filters, overlay text and images, and extract metadata JavaScript bundling – Transpile TypeScript and JSX to JavaScript, bundle, tree shake, minify, create source maps, and perform SRI hashing. Sass processing – Transpile Sass to CSS, bundle, tree shake, minify, create source maps, perform SRI hashing, and integrate with PostCSS Tailwind CSS processing – Compile Tailwind CSS utility classes into standard CSS, bundle, tree shake, optimize, minify, perform SRI hashing, and integrate with PostCSS And with Hugo Modules, you can share content, assets, data, translations, themes, templates, and configuration with other projects via public or private Git repositories. See the features section of the documentation for a comprehensive summary of Hugo's capabilities. Sponsors       Editions Hugo is available in two editions. Use the standard edition unless you need additional features. Feature standard deploy Core features ✔️ ✔️ Direct cloud deployment (1) ❌ ✔️ (1) Deploy your site directly to a Google Cloud Storage bucket, an AWS S3 bucket, or an Azure Storage container. See details. Installation Install Hugo from a prebuilt binary, package manager, or package repository. Please see the installation instructions for your operating system: macOS Linux Windows DragonFly BSD, FreeBSD, NetBSD, and OpenBSD Build from source To build Hugo from source you must install: Git Go version 1.27.0 or later Standard edition To build and install the standard edition: CGO_ENABLED=0 go install github.com/gohugoio/hugo@latest Deploy edition To build and install the deploy edition: CGO_ENABLED=0 go install -tags withdeploy github.com/gohugoio/hugo@latest Documentation Hugo's documentation includes installation instructions, a quick start guide, conceptual explanations, reference information, and examples. Please submit documentation issues and pull requests to the documentation repository. Support Please do not use the issue queue for questions or troubleshooting. Unless you are certain that your issue is a software defect, use the forum. Hugo's forum is an active community of users and developers who answer questions, share knowledge, and provide examples. A quick search of over 20,000 topics will often answer your question. Please be sure to read about requesting help before asking your first question. Contributing You can contribute to the Hugo project by: Answering questions on the forum Improving the documentation Monitoring the issue queue Creating or improving themes Squashing bugs Please submit documentation issues and pull requests to the documentation repository. If you have an idea for an enhancement or new feature, create a new topic on the forum in the "Feature" category. This will help you to: Determine if the capability already exists Measure interest Refine the concept If there is sufficient interest, create a proposal. Do not submit a pull request until the project lead accepts the proposal. For a complete guide to contributing to Hugo, see the Contribution Guide. License For the Hugo source code, see LICENSE. We also bundle some libraries in binary/WASM form: libwebp, BSD-3-Clause license Katex, MIT license QuickJS, License
Read the full README on GitHub

What Hacker News says

72 sources
> So, advice: submit the binary you used to generate the site to source control. I know git isn't the best at binary files, but I promise you'll thank me at some point. No need for the entire binary. Just put `go run github.com/gohugoio/hugo@vX.Y.Z "$@"` into a `hugo.sh` script or similar that's in source control, and then run that script instead of the Hugo binary. You'll need Go installed, but it's incredibly backwards compatible, so updating to newer Go versions is very unlikely to break running the old Hugo version.
In Jeffgeerling.com has been migrated to Hugo
By biggest gripe with Hugo is it doesn't bubble up where problems are. I posted this last year: https://github.com/gohugoio/hugo/issues/12693#issuecomment-2... It makes troubleshooting really tedious. As for updating versions safely, I highly encourage anyone to write a little tooling to build your site with version A and version B into different directories and then diff them to make sure nothing unexpected changed. That is something I documented in a very long post where I went over converting my 500+ post Jekyll site to Hugo at https://nickjanetakis.com/blog/converting-my-500-page-blog-f.... If you search the page for "Updating Hugo Versions" you'll find the section.
In Sometimes Software Is Done, or Why Hugo Why (2024)
I have migrated from Jekyll to Hugo for my own website, but the whole Hugo project is just weird. It took me like a year to migrate my simple website because of all the different paper cuts that drained my will to work on it. You are only able to only use partials in HTML pages and shortcodes in Markdown pages. Why? They use 2 different syntax, so the best you can do is awkwardly wrap a partial in a shortcode. What's the point? They serve basically the same purpose. Want to set up RSS? Oh yeah, for some reason by default it will not show full content in your feed reader, instead only a small extract. The the only way to fix it is by making your own template[1]. But wait, why are we using RSS instead of Atom? Who knows, but if you want to use Atom, you have to use your template and insert some stuff to your config. Also don't look at the b
Read the rest
ug tracker, that thing is frustrates me to no end. You of course have the everyone's favourite Stalebot that you might have noticed in my previous link, but if you look at older issues, you will see the maintainer self-botting as a Stalebot[2][3] for some reason. You will also see the maintainer moving issues between milestones for years with no end in sight[4]. That's not a one-off, click on any issue. Changelogs can sometimes feel a bit, odd too: > but also a big shoutout to @dependabot[bot], […] for their ongoing contributions. And commit messages sometimes are just… a bit too long[5] (it is truncated by GitHub, you can append .patch to see the full message). Their documentation is awful to read too[6]. Oh and the templating engine? Yeah, not documented at all. Also the quick start guide will tell you to git clone some random theme, but I don't want my website to look like someone's, I want to write my own styles and have my own structure, but they don't really tell you anywhere how you should go about it. Because of it, I would search GitHub to sometimes find answers on how to do some stuff, but you would quickly find that most people had no idea how to actually use it. For example you can find a lot of people making opening and ending partials to have a common page layout instead of actually using the built-in Hugo layouts. So why have I bothered switching? i18n support, so far out of all SSG I tried, Hugo does it in the least painful way. [1]: https://github.com/gohugoio/hugo/issues/4071 [2]: https://github.com/gohugoio/hugo/issues/385#issuecomment-283... [3]: https://github.com/gohugoio/hugo/issues/1035#issuecomment-28... [4]: https://github.com/gohugoio/hugo/issues/448 [5]: https://github.com/gohugoio/hugo/commit/6dbde8d731f221b027c0... [6]: https://news.ycombinator.com/item?id=30527884
In Gojekyll: A fast, partially compatible Go clone of Jekyll
Hugo is not made for minimum viable blogs. Its advantage in performance only becomes important for bigger websites or blogs with thousands of articles. But especially for bigger websites it should be possible to auto-generate a good archive. However the developers of Hugo stubbornly refuse to fix this very important 8 year old issue: https://github.com/gohugoio/hugo/issues/448 That is quite unfortunate, because it makes Hugo "the worlds fastest framework for building huge websites without a useful archive".
In Minimum Viable Hugo

Showing the 15 most recent of 72 sources. Enable JavaScript to search and browse every indexed mention.

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.