-
Roadmap & Feedback (major)
- Introduced a single unified
RoadmapBoardcomponent used on both user and admin views, controlled by a simpleeditablecapability flag. - User-facing page
/roadmap: read-only board with columns (New / In progress / On hold / Resolved), compact and list views, scrollable columns, and a modal “Submit feedback” button. - Admin mode on
/roadmap: ifprofile.role === 'superadmin', a header button toggles admin mode via?admin=1, enabling drag-and-drop, per-card menu (Move/In progress/On hold/Resolved/Delete), and a detail modal with status actions. - Removed redundant admin page;
/admin/roadmapnow redirects to/roadmap.
- Introduced a single unified
-
Feedback infrastructure
- Database: added
public.feedbacktable (kind, email, message, image_url, status, timestamps),profile.roleenum (user|admin|superadmin), andfeedback.statusenum (new|in_progress|resolved). - Later additions:
statusincludeson_hold, and feedback hastitle,author_name,author_email,author_avatarfor richer records. - API:
POST /api/feedback(create + notify),PATCH /api/feedback/[id](status updates),DELETE /api/feedback/[id](remove), plus form POST fallback. - Uploads: single image up to 5MB stored in Supabase
filesbucket; public preview supported. - Notifications: sends to
SUPPORT_EMAIL(falls back toRESEND_EMAIL).
- Database: added
-
UI & navigation
- New reusable
PageHeader(logo → projects, title, descriptor, right-side actions, theme/menu) used on/projects,/roadmap, and admin. - Menu avatar “Feedback” link now points to
/roadmap. - Consistent width and spacing with the top bar; columns use
max-h+ internal scroll.
- New reusable
-
Docs
- Expanded
docs/ui-and-component-guide.mdwith the newPageHeaderusage and the roadmap/feedback flow.
- Expanded