Static site generators have quietly become one of the largest sources of new feed infrastructure on the open web — not through any coordinated push, but because RSS output ships as a near-default in the tools millions of developers now reach for first.
What Each Generator Actually Does
Hugo, the Go-based generator maintained by the Hugo authors and widely used for documentation and personal publishing, ships with a built-in RSS 2.0 template. No plugin required: run hugo, and an index.xml appears at the site root, serialising every content item in the default section. The built-in template has shipped with Hugo since its earliest releases and conforms to the RSS 2.0 specification. Publishers who want Atom instead, or who need to reshape item fields, override the template in their own layouts directory — Hugo's cascade means the override wins automatically.


Jekyll, the Ruby generator that GitHub Pages adopted as its native build tool, takes a plugin approach. The official jekyll-feed gem, maintained under the jekyll organisation on GitHub, generates an Atom feed at /feed.xml by default. Because GitHub Pages whitelists jekyll-feed as a safe plugin, any repository published through Pages gets an Atom feed without touching a server or CI pipeline. The practical consequence is that a substantial share of personal and project sites on the open web carry valid Atom output because their authors clicked "publish to GitHub Pages" and never thought about it again.
Eleventy, the JavaScript generator created by Zach Leatherman and stewarded independently, does not bundle a feed template by default — but its official starter projects and documentation provide a ready-made Atom or JSON Feed template that drops directly into a project's _includes folder. Because Eleventy's templating is format-agnostic, the same data pipeline that builds HTML pages builds the feed: no separate feed-generation pass, no synchronisation risk between post list and feed items.
From the record
Key facts by generator
- Hugobuilt-in RSS 2.0 template, ships at
index.xml, no plugin needed; override via layouts cascade - Jekyll
jekyll-feedgem produces Atom at/feed.xml; whitelisted on GitHub Pages, making it near-automatic for millions of repos - Eleventyno bundled feed template; official starter provides Atom or JSON Feed as a drop-in include
Why This Matters for the Feed Ecosystem
The shift toward static generation has expanded the feed-publishing base in a way that the newsletter pivot and platform consolidation have not reversed. A static site emits its feed from a file written at build time and served from a CDN — there is no database query, no plugin call at request time, no feed-specific server process to maintain. The feed is as durable as the HTML. For publishers who care about POSSE — treating the personal domain as canonical and syndicating outward — static generators are a natural fit: the feed is simply another build artifact, sitting beside index.html with the same caching headers and the same longevity.
None of this was announced. It accumulated: one repository, one default template, one GitHub Pages deploy at a time.



