Peer Mentor Profiles
Feature Detail
Description
This feature provides dedicated profile views for peer mentors, distinct from general contacts, reflecting their specific role attributes such as certification status, active assignment count, availability, and organisational affiliation. The peer mentor card widget offers a compact summary for use in lists and search results, while the full detail screen exposes all relevant profile information. Status indicators show whether a peer mentor is active, paused, or uncertified, enabling coordinators to make informed assignment decisions at a glance. This feature supports the role-specific views required across all partner organisations.
Analysis
Peer mentors are the primary service delivery resource in all partner organisations, and coordinators need reliable, up-to-date profile information to assign work effectively and monitor volunteer health. Without a dedicated peer mentor profile view, coordinators must piece together information from multiple sources, increasing administrative overhead and the risk of assigning work to unavailable or uncertified volunteers. For HLF, where certification expiry automatically affects a peer mentor's visibility on the local association website, the profile must accurately reflect current certification status. For Blindeforbundet, the profile supports matching mentors to assignments based on skills and location, which is critical to service quality.
Peer mentor profiles are implemented as a specialised view layer on top of the contact data model, with additional fields sourced from the peer_mentors, certifications, and peer_mentor_availability tables in Supabase. The peer mentor card widget is a reusable Flutter widget accepting a PeerMentor domain model and rendering status badges with the unified entity colour system. The detail screen uses a tabbed layout separating profile info, assignment history, and certification status. Status computation (active, paused, expired) is handled in a Riverpod provider that combines availability and certification data with real-time Supabase subscriptions. Integration with the pause management feature ensures status is always current. All status badges must meet WCAG 2.2 AA contrast requirements.
Dependencies
Definition of Done
Components (4)
User Stories (9)
As a As a user
I want I want to navigate to a peer mentor's full profile directly from the contacts list, peer mentor list, and search results
So that So that I can transition from a high-level list view to a detailed profile in a single tap without losing my navigation context
- Given I am viewing a contacts list filtered to peer mentors, when I tap a peer mentor card, then I am navigated to that mentor's full profile detail screen
- Given I perform a search and a peer mentor appears in results, when I tap their card in the results, then I am navigated to their profile
- Given I am on a peer mentor's detail screen reached from a list, when I tap the back button, then I return to the same list at the same scroll position
- +2 more
As a As a user
I want I want to navigate to a peer mentor's full profile directly from the contacts list, peer mentor list, and search results
So that So that I can transition from a high-level list view to a detailed profile in a single tap without losing my navigation context
- Given I am viewing a contacts list filtered to peer mentors, when I tap a peer mentor card, then I am navigated to that mentor's full profile detail screen
- Given I perform a search and a peer mentor appears in results, when I tap their card in the results, then I am navigated to their profile
- Given I am on a peer mentor's detail screen reached from a list, when I tap the back button, then I return to the same list at the same scroll position
- +2 more
As a As a Coordinator
I want I want to view a peer mentor's assignment history tab showing past and current assignments with their statuses
So that So that I can understand the mentor's workload, track their engagement level, and identify mentors who may be under- or over-utilised
- Given I open a peer mentor's profile and tap the assignment history tab, then I see a chronological list of assignments with their current statuses
- Given a mentor has open assignments, when I view the history tab, then open assignments are visually distinguished from completed ones
- Given a mentor has reached an assignment count threshold (3rd or 15th), when I view the history tab, then the total assignment count is clearly displayed
- +2 more
As a As a Peer Mentor (Likeperson)
I want I want to view my own peer mentor profile including my certification status, availability, and organisational affiliation
So that So that I can verify my profile information is accurate and understand my current standing within the organisation
- Given I am logged in as a peer mentor, when I navigate to my profile screen, then I see my full peer mentor profile with status, assignment count, and affiliation displayed
- Given I am on my profile screen, when I tap the certification tab, then I see my current certification validity dates and any expiry warnings
- Given I am on my profile screen, when I tap the assignment history tab, then I see a list of my past and current assignments
- +2 more
As a As a user
I want I want the peer mentor's displayed status (active, paused, or expired) to always reflect the current state of both their availability and certification without requiring a manual refresh
So that So that I can trust the status shown on the profile and card is accurate at the moment I am viewing it, preventing decisions based on stale information
- Given a coordinator has a peer mentor's profile open, when that mentor's availability is paused in another session, then the status badge updates to 'Paused' within seconds without a manual refresh
- Given a peer mentor's certification expiry date passes, when either role views the profile or card, then the status updates to 'Expired' automatically
- Given a mentor transitions from paused back to active, when I am viewing their card in a list, then the status badge updates to 'Active' in real time
- +2 more
As a As a Coordinator
I want I want to see compact peer mentor cards in list views and search results that show status, availability, and key profile fields at a glance
So that So that I can quickly scan multiple mentors and identify the right candidate for an assignment without opening each full profile
- Given I am browsing a list of peer mentors, when cards are displayed, then each card shows the mentor's name, status badge, availability indicator, and assignment count
- Given a peer mentor is active, when I view their card, then the status badge uses the active colour consistent with the unified entity colour system
- Given a peer mentor is paused or has expired certification, when I view their card, then a distinct visual indicator differentiates them from active mentors
- +2 more
As a As a Coordinator
I want I want to open the certification tab on a peer mentor's profile and see their current certificates, expiry dates, and renewal status
So that So that I can confirm a mentor is eligible to take on new assignments before dispatching work, and proactively identify mentors approaching expiry
- Given I open a peer mentor's profile and tap the certification tab, then I see a list of all certificates with name, issue date, expiry date, and status
- Given a certificate expires within 30 days, when I view the certification tab, then a visual warning indicator is displayed adjacent to that certificate
- Given a certificate has already expired, when I view the certification tab, then the certificate is marked as expired and the overall profile status reflects this
- +2 more
As a As a user
I want I want the peer mentor's displayed status (active, paused, or expired) to always reflect the current state of both their availability and certification without requiring a manual refresh
So that So that I can trust the status shown on the profile and card is accurate at the moment I am viewing it, preventing decisions based on stale information
- Given a coordinator has a peer mentor's profile open, when that mentor's availability is paused in another session, then the status badge updates to 'Paused' within seconds without a manual refresh
- Given a peer mentor's certification expiry date passes, when either role views the profile or card, then the status updates to 'Expired' automatically
- Given a mentor transitions from paused back to active, when I am viewing their card in a list, then the status badge updates to 'Active' in real time
- +2 more
As a As a Coordinator
I want I want to view the full profile of any peer mentor in my organisational scope, including certification status, availability, and assignment history
So that So that I can make informed decisions about which peer mentor to assign to a contact or task without needing to consult multiple external sources
- Given I am a coordinator, when I open a peer mentor's profile, then I see all profile tabs: profile info, assignment history, and certification status
- Given a peer mentor has an expired certification, when I view their profile, then their status badge shows 'Expired' and the certification tab highlights the expiry date
- Given a peer mentor is currently paused, when I view their profile, then the availability status is prominently displayed with the pause start date
- +2 more