Skip to content

fix(blog): list the new post in /blog + add RSS/Atom feeds (EN + es + zh-CN) - #371

Merged
montfort merged 2 commits into
mainfrom
fix/blog-list-follow-up-post
Jul 18, 2026
Merged

fix(blog): list the new post in /blog + add RSS/Atom feeds (EN + es + zh-CN)#371
montfort merged 2 commits into
mainfrom
fix/blog-list-follow-up-post

Conversation

@montfort

@montfort montfort commented Jul 18, 2026

Copy link
Copy Markdown
Contributor

Summary

Two related fixes for blog discoverability, surfaced while verifying the #365 post (#370) went live.

1. The post wasn't listed in /blog

It rendered at its URL but was missing from the index in all three locales. The blog is a docs-instance (#340), so the listing is maintained by hand. Added the post, newest-first, to blogSidebars.ts and the three index.mdx landings.

2. The site had no RSS/Atom feed at all

/blog/rss.xml → 404; no feedOptions; nothing advertised in <head>. Docs-instances don't emit blog feeds — the migration dropped that capability. Added scripts/gen-feeds.ts (runs from postbuild): reads the published posts (EN + es + zh-CN), sorts newest-first, and writes per-locale RSS 2.0 + Atom 1.0:

/blog/{rss,atom}.xml        /es/blog/{rss,atom}.xml        /zh-CN/blog/{rss,atom}.xml

Autodiscovery <link rel="alternate"> tags added to headTags. CI regenerates them automatically (npm run buildpostbuild); build/ stays gitignored.

Verification

  • npm run build → exit 0, 0 broken links; post now in build/blog.html (+ es/zh-CN).
  • All 6 feeds well-formed XML; newest-first (this release's post is item 1); i18n feeds carry translated titles + locale-prefixed links; blog <head> advertises both feeds.
  • Sitemap was already correct (plugin auto-includes the post routes across all locales) — feeds are correctly not placed in the sitemap.

🤖 Generated with Claude Code

montfort and others added 2 commits July 18, 2026 14:13
…es + zh-CN)

The blog is a docs-instance (#340), so the /blog listing is maintained by hand —
not auto-generated. The published post rendered at its URL but was missing from
the index in all three locales. Add it to blogSidebars.ts (shared sidebar) and
to the three index.mdx landing pages, newest-first.

Build verified: post now appears in build/{,es/,zh-CN/}blog.html; 0 broken links.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The blog is a docs-plugin instance (#340), so Docusaurus emits no feed and the
site advertised none (/blog/rss.xml → 404). Add scripts/gen-feeds.ts, run from
`postbuild`, which reads the published posts (EN + es + zh-CN), sorts them
newest-first, and writes per-locale RSS 2.0 + Atom 1.0 into build/:
/blog/{rss,atom}.xml and /<locale>/blog/{rss,atom}.xml. Autodiscovery <link>
tags added to headTags. CI generates them automatically (npm run build →
postbuild); build/ stays gitignored.

Verified: all 6 feeds well-formed XML; newest-first (this release's post is
item 1); i18n feeds carry translated titles + locale-prefixed links; blog head
advertises both feeds. Sitemap already covered the post (plugin auto-includes
routes) — feeds are correctly not listed in the sitemap.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@montfort montfort changed the title fix(blog): list "What the follow-up took for granted" in /blog (EN + es + zh-CN) fix(blog): list the new post in /blog + add RSS/Atom feeds (EN + es + zh-CN) Jul 18, 2026
@montfort
montfort merged commit ea394a4 into main Jul 18, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant