Skip to content

feat(blog): add tag archive pages, related posts, and per-tag RSS feeds - #137

Merged
truthixify merged 2 commits into
wraith-protocol:developfrom
Escelit:feat/blog-tag-archives-131
Aug 27, 2026
Merged

feat(blog): add tag archive pages, related posts, and per-tag RSS feeds#137
truthixify merged 2 commits into
wraith-protocol:developfrom
Escelit:feat/blog-tag-archives-131

Conversation

@Escelit

@Escelit Escelit commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

Closes #131

Summary

Implements #131 — triples internal linking surface on the blog via tag archives, related posts, and per-tag RSS feeds.

  • Tag archive route/blog/tag/:slug lists every post carrying that tag, most recent first, and links its per-tag feed.
  • Related posts block on single-post pages picks up to 3 posts by highest tag overlap, excluding the current post.
  • Per-tag RSSscripts/gen-rss.mjs now emits /feed/tag/:slug.xml for every tag alongside the global /feed.xml. Each blog post references a per-tag <link rel="alternate"> for each of its tags; the archive references its own.
  • Sitemap — both scripts/sitemap.ts (build) and scripts/gen-sitemap.mjs now include every /blog/tag/:slug URL.
  • Added two MDX posts so the (MDX-only) blog corpus has overlapping tags for the archive/related features to be real.

Test plan

  • pnpm format:check, pnpm lint:i18n, pnpm test:a11y, pnpm build all pass locally (CI build job steps).
  • src/__tests__/blog.test.tsx and src/__tests__/rss.test.ts cover tag resolution, related-posts overlap/exclusion, tag archive rendering, and per-tag feed generation.
  • Generated public/feed/tag/*.xml and sitemap.xml verified to include all 6 tag archives.

@vercel

vercel Bot commented Aug 25, 2026

Copy link
Copy Markdown

@Escelit is attempting to deploy a commit to the truthixify's projects Team on Vercel.

A member of the Team first needs to authorize it.

@drips-wave

drips-wave Bot commented Aug 25, 2026

Copy link
Copy Markdown

@Escelit Great news! 🎉 Based on an automated assessment of this PR, the linked Wave issue(s) no longer count against your application limits.

You can now already apply to more issues while waiting for a review of this PR. Keep up the great work! 🚀

Learn more about application limits

@truthixify

Copy link
Copy Markdown
Contributor

Thanks @Escelit. Conflicts on src/pages/Blog.tsx against #136, which landed reading-time and the TOC.

Suggest holding this one until #138 merges, then rebasing. I left the reasoning on #138: your three blog PRs all touch this file, so landing them in a fixed order means one rebase each instead of repeated ones.

@Escelit

Escelit commented Aug 27, 2026

Copy link
Copy Markdown
Contributor Author

Thanks @Escelit. Conflicts on src/pages/Blog.tsx against #136, which landed reading-time and the TOC.

Suggest holding this one until #138 merges, then rebasing. I left the reasoning on #138: your three blog PRs all touch this file, so landing them in a fixed order means one rebase each instead of repeated ones.

Successfully rebased on #136

@Escelit
Escelit force-pushed the feat/blog-tag-archives-131 branch from 3d44561 to a3a2a43 Compare August 27, 2026 16:08
@Escelit

Escelit commented Aug 27, 2026

Copy link
Copy Markdown
Contributor Author

The rebase is suceesfully done. Please review

@truthixify

Copy link
Copy Markdown
Contributor

Heads up: this went conflicted a few minutes ago because #146 (your author pages), which was first in the order we agreed landed on develop. It was mergeable right before that, so nothing is wrong with your work.

git fetch origin
git rebase origin/develop

and it should be good to go.

@truthixify
truthixify merged commit b842cab into wraith-protocol:develop Aug 27, 2026
3 of 4 checks passed
@truthixify

Copy link
Copy Markdown
Contributor

Merged, second of your three @Escelit. Per-tag feeds plus the sitemap picking up the tag archives means the internal linking actually compounds. #140 is last, and it will need one more rebase now that this has landed.

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.

Blog related posts, tag archive pages, per-tag RSS

2 participants