feat(wiki): recent changes feed and wiki activity page #670

Closed
opened 2026-06-21 06:33:31 +00:00 by jmiller · 0 comments
Owner

Summary

Add a "Recent changes" page showing all recent edits across the wiki, plus an RSS/Atom feed for wiki changes. Similar to Wikipedia's Special:RecentChanges.

Current State

  • Individual page revision history exists (?action=_revision)
  • No cross-page activity view showing all recent wiki edits
  • No RSS feed for wiki changes
  • Wiki changes don't appear in repo activity feeds

Design

Recent Changes Page

  • Route: GET /:owner/:repo/wiki?action=_recent
  • Shows the git log of the wiki repo (all files), displaying:
    • Page name (derived from filename)
    • Author and timestamp
    • Commit message (edit summary)
    • Diff size indicator (+/- lines)
    • Link to the page and to the specific revision diff
  • Paginated, filterable by date range
  • Button in wiki header bar next to "Pages" button

RSS/Atom Feed

  • Route: GET /:owner/:repo/wiki.rss and wiki.atom
  • Standard RSS/Atom feed of wiki changes
  • Each entry: page title, author, edit summary, link to diff
  • Enables external monitoring of wiki activity

Watch Notifications (stretch goal)

  • Users can "watch" specific wiki pages
  • Integrates with existing notification system (services/notify/)
  • Uses existing notify_service.NewWikiPage() and notify_service.EditWikiPage() — these already fire, just need per-page subscription

Files to Modify

File Change
routers/web/repo/wiki.go New WikiRecentChanges() handler, RSS feed handler
templates/repo/wiki/recent.tmpl New — recent changes page
templates/repo/wiki/view.tmpl Add "Recent changes" button to header
Router registration Add routes for _recent, .rss, .atom

Wikipedia Parity

Recent Changes is one of Wikipedia's most-visited pages — essential for wiki maintainers to monitor edits, catch errors, and stay informed about content evolution.

## Summary Add a "Recent changes" page showing all recent edits across the wiki, plus an RSS/Atom feed for wiki changes. Similar to Wikipedia's Special:RecentChanges. ## Current State - Individual page revision history exists (`?action=_revision`) - No cross-page activity view showing all recent wiki edits - No RSS feed for wiki changes - Wiki changes don't appear in repo activity feeds ## Design ### Recent Changes Page - **Route:** `GET /:owner/:repo/wiki?action=_recent` - Shows the git log of the wiki repo (all files), displaying: - Page name (derived from filename) - Author and timestamp - Commit message (edit summary) - Diff size indicator (+/- lines) - Link to the page and to the specific revision diff - Paginated, filterable by date range - Button in wiki header bar next to "Pages" button ### RSS/Atom Feed - **Route:** `GET /:owner/:repo/wiki.rss` and `wiki.atom` - Standard RSS/Atom feed of wiki changes - Each entry: page title, author, edit summary, link to diff - Enables external monitoring of wiki activity ### Watch Notifications (stretch goal) - Users can "watch" specific wiki pages - Integrates with existing notification system (`services/notify/`) - Uses existing `notify_service.NewWikiPage()` and `notify_service.EditWikiPage()` — these already fire, just need per-page subscription ### Files to Modify | File | Change | |------|--------| | `routers/web/repo/wiki.go` | New `WikiRecentChanges()` handler, RSS feed handler | | `templates/repo/wiki/recent.tmpl` | New — recent changes page | | `templates/repo/wiki/view.tmpl` | Add "Recent changes" button to header | | Router registration | Add routes for `_recent`, `.rss`, `.atom` | ## Wikipedia Parity Recent Changes is one of Wikipedia's most-visited pages — essential for wiki maintainers to monitor edits, catch errors, and stay informed about content evolution.
jmiller added the feature: wiki label 2026-06-21 06:33:31 +00:00
jmiller referenced this issue from a commit 2026-06-21 22:24:21 +00:00
Sign in to join this conversation.