feat: add mentor portal at /mentor with profile, vouch requests, and … - #95
Merged
Merged
Conversation
…active vouches - Add /mentor route with RoleGuard for mentor role - Create MentorDashboard page with profile section showing reputation score, tier, and stats - Create useMentor hook for mentor data fetching - Add vouch requests list with accept/decline from Vouch.tsx - Add active vouches list with revoke confirmation dialog and vouch risk warning - Loading, error, and empty states for all sections - Update role.store.ts mentor route to /mentor - Update Dashboard.tsx redirect to /mentor - Update Navbar navigation link from Vouch to Mentor - Fix existing build errors by adding lucide-react type declarations Closes #PR_REFERENCE
Member
|
@Emeka-12 please fix conflict |
EmeditWeb
previously requested changes
Jul 29, 2026
EmeditWeb
left a comment
Member
There was a problem hiding this comment.
fix merge conflicts and we're good to merge it
10 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
This PR introduces the new
/mentorroute and protects it behind an authentication guard to ensure only authorized mentors can access the dashboard. It implementssrc/hooks/useMentor.tsalongside API extensions insrc/services/vouching.service.tsto manage profile data, reputation scores, and vouch workflows. The core UI component,MentorDashboard.tsx, features a comprehensive mentor profile overview, an interactive vouch request manager with accept/decline actions, and an active vouches tracker complete with repayment monitoring, risk warnings, and a revoke confirmation modal. Finally, all sections include robust loading, error, and empty states, with all changes passingnpm run buildandnpm testcleanly without reducing code coverage.Closes #64
What changed