trails/openspec/changes/changelog/proposal.md
Ullrich Schäfer 18e68bb176 Add public changelog with Atom feed and What's New indicator
- Changelog entries authored as markdown files in apps/journal/changelog/
  with YAML frontmatter, loaded via Vite import.meta.glob at build time
- /changelog list page with date, title, and preview
- /changelog/:slug detail page with full markdown rendering (react-markdown)
  and Open Graph meta tags for social sharing
- /changelog/feed.xml Atom feed with auto-discovery <link> tags
- "What's New" dot on nav bar using localStorage timestamp tracking
- Notification toggle: users can permanently disable/re-enable the indicator
- i18n strings for en and de
- Initial changelog entry covering the Phase 1 launch

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 13:49:52 +02:00

38 lines
1.4 KiB
Markdown

## Why
We ship features but nobody knows. There's no record of what changed, no way to
share progress, and no way for users to discover new features. A changelog
serves three audiences: existing users (what's new), potential users (the
project is alive and improving), and social followers (shareable updates).
## What Changes
- Add a `/changelog` page in the Journal showing dated entries with feature
descriptions
- Changelog entries stored as markdown files in the repo (not a database) —
low friction, version controlled, works with the PR workflow
- Each entry renders as a standalone shareable page (`/changelog/2026-03-25`)
with Open Graph meta tags for social previews
- A "What's New" badge/dot on the nav bar when there are entries the user
hasn't seen
- The changelog is public (no auth required) — it's part of the product's
public face
## Capabilities
### New Capabilities
- `changelog`: Public changelog with dated entries, shareable individual pages with OG tags, "what's new" indicator, RSS/Atom feed
### Modified Capabilities
(None)
## Impact
- **Files**: New routes (`/changelog`, `/changelog/:slug`, `/changelog/feed.xml`),
markdown entry files in `apps/journal/changelog/`, nav bar update
- **Dependencies**: A markdown renderer (could reuse `react-markdown` or render
at build time)
- **i18n**: Changelog entries written in English (primary audience), German
later if needed