Skip to content

feat(roadmap): public /roadmap page from GitHub Projects - #23

Merged
phucbm merged 7 commits into
mainfrom
feat/roadmap-page
Jun 14, 2026
Merged

feat(roadmap): public /roadmap page from GitHub Projects#23
phucbm merged 7 commits into
mainfrom
feat/roadmap-page

Conversation

@phucbm

@phucbm phucbm commented Jun 14, 2026

Copy link
Copy Markdown
Member

Summary

  • Public /roadmap page at openwallet.vn/roadmap pulling live data from GitHub Projects v2
  • Generic OwRoadmap* components in owui/ — reusable for any public GitHub project
  • Kanban grid (3 cols) + Recently Completed section + changelog CTA at bottom
  • Column display labels decoupled from GitHub column names via columns + completedCol props
  • ISR revalidate: 3600 — cached, no cold-start risk
  • /roadmap command doc with all field/option IDs for gh CLI management
  • Footer link added

Components

Component Purpose
OwRoadmapCard Single item card with labels + draft badge
OwRoadmapColumn Column header + card list
OwRoadmapKanban Full board: kanban + completed grid + CTA

Test plan

  • Add items to GitHub project, verify they appear on /roadmap after ISR revalidation
  • Check GITHUB_TOKEN env var set in Vercel with read:project scope
  • Storybook: Roadmap UI/OwRoadmapKanban — With Items, Empty Board stories

🤖 Generated with Claude Code

- fetchGitHubProject() GraphQL util with ISR revalidate:3600
- OwRoadmapCard, OwRoadmapColumn, OwRoadmapKanban components in owui/
- Kanban grid layout + Recently Completed section + changelog CTA
- Column name/label mapping via props (flexible, not hardcoded)
- Storybook stories under Roadmap UI group
- /roadmap command doc with gh CLI field/option IDs
- ROUTES.roadmap + footer link

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@vercel

vercel Bot commented Jun 14, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
openwallet Error Error Jun 14, 2026 5:11am

phucbm and others added 6 commits June 14, 2026 11:41
- Fetch Shipped date field from GitHub Projects via GraphQL
- Add shippedDate to GithubProjectItem type
- Show OwBadge with IconCircleCheckFilled + formatted date on done cards
- Sort Done items latest-first in kanban

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- /roadmap now shows kanban (Todo/Planned/Future Ideas) + Recently
  Shipped timeline sourced from GH Projects Done items
- GH Projects is now SSOT: item body = changelog markdown bullets,
  Shipped date field drives timeline order
- Migrate 13 changelog entries from content/changelog.mdx to GH
  Projects draft issue bodies
- /changelog → /roadmap 301 redirect (next.config.ts)
- ROUTES.changelog updated to /roadmap; footer deduped
- New OwRoadmapChangelog component: date col + MDXRemote body,
  mirrors old changelog page layout, no TOC
- OwRoadmapKanban: remove Done grid + CTA block
- Delete app/(marketing)/changelog, lib/changelog.ts,
  content/changelog.mdx
- Merge /add-changelog + /roadmap commands → /roadmap-changelog

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- New story: Roadmap UI/OwRoadmapChangelog with 4 mock items + bodies
- Mock next-mdx-remote/rsc via Vite alias in .storybook/main.ts
  (RSC component can't run in Vite/client context)
- Mock renders source as styled plain text for visual preview

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
@phucbm
phucbm merged commit e37d608 into main Jun 14, 2026
2 of 3 checks passed
@phucbm
phucbm deleted the feat/roadmap-page branch June 14, 2026 05:10
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