Quick Activity Registration
Feature Detail
Description
Core activity logging with the absolute minimum number of interaction steps. Peer mentors can record a completed activity in under two clicks using pre-filled default values: today's date, 30-minute duration, and the most recently used activity type. All defaults are overridable but never mandatory to change, ensuring that the most common case — a short, uncompensated session — requires almost no cognitive effort. The form surfaces only the fields required for the current registration context. NHF's Word-based manual workflow and HLF's 380-registrations-per-year use case both demonstrate that friction directly causes underreporting. The UI must feel closer to a check-in than a form, with a strong visual confirmation state so the peer mentor knows the record was saved.
Analysis
Eliminates the primary cause of underreporting across all four organisations. Every activity that gets logged represents validated output for Bufdir funding applications, internal KPIs, and peer mentor recognition. Even a 20% improvement in capture rate materially affects grant amounts and organisational accountability.
Use a bottom-sheet wizard pattern (already established in the codebase) with steps: activity type → date → duration → optional notes → confirm. Persist last-used values in local storage. Duration picker should offer preset chips (15 min, 30 min, 1 h, 2 h) before a free-entry fallback. Bloc/Cubit per wizard step. Supabase insert on final confirm with optimistic local state update.
Components (209)
Shared Components
These components are reused across multiple features
User Interface (59)
Service Layer (52)
Data Layer (33)
Infrastructure (54)
User Stories (20)
As a As a Peer Mentor (Likeperson)
I want to be warned if the activity I am about to register appears to be a duplicate of one already submitted
So that I avoid accidentally logging the same session twice, which would inflate statistics and complicate Bufdir reports
- Given I submit an activity of type 'Phone Call' on today's date for 30 minutes, and I already have a 'Phone Call' registration for today lasting 30 minutes, when I tap Confirm, then the duplicate warning bottom sheet appears before the record is saved
- Given the duplicate warning is shown, when I tap 'Submit Anyway', then a reason selector appears with options (e.g. 'Two separate calls', 'Correcting previous entry') before the submission proceeds
- Given the duplicate warning is shown, when I tap 'Cancel', then the bottom sheet closes and I am returned to the registration form with my data intact
- +2 more
As a As a Peer Mentor (Likeperson)
I want to optionally attach a photo or document (such as an event invitation or a screenshot) to an activity I am registering
So that I can provide supporting evidence for the activity, which NHF requires for Bufdir verification
- Given the registration confirmation view is shown, when I tap 'Add Attachment', then I can choose between 'Camera', 'Photo Library', and 'File' options
- Given I select a photo from the library, when the attachment is processed, then it is compressed to under 1 MB and a thumbnail preview is shown on the confirmation view
- Given I have attached two files, when I attempt to add a fourth, then an error message informs me the maximum of three attachments per registration has been reached
- +2 more
As a As a Peer Mentor (Likeperson)
I want to dictate my registration notes verbally after a session instead of typing them
So that I can complete documentation quickly and comfortably, especially when I have limited dexterity, poor lighting, or am on the move
- Given I am on the notes step, when I tap the microphone button, then a recording-state indicator becomes visible and the device's speech recognition service is activated
- Given speech recognition is active and I am speaking, when partial results are available, then the transcription preview field updates in real time with what has been recognised so far
- Given I finish speaking and tap Stop, when recognition completes, then the transcribed text is inserted into the notes field and I can edit it before proceeding
- +3 more
As a As a Coordinator
I want to be warned if the activity I am about to register appears to be a duplicate of one already submitted
So that I avoid accidentally logging the same session twice, which would inflate statistics and complicate Bufdir reports
- Given I submit an activity of type 'Phone Call' on today's date for 30 minutes, and I already have a 'Phone Call' registration for today lasting 30 minutes, when I tap Confirm, then the duplicate warning bottom sheet appears before the record is saved
- Given the duplicate warning is shown, when I tap 'Submit Anyway', then a reason selector appears with options (e.g. 'Two separate calls', 'Correcting previous entry') before the submission proceeds
- Given the duplicate warning is shown, when I tap 'Cancel', then the bottom sheet closes and I am returned to the registration form with my data intact
- +2 more
As a As a Coordinator
I want to optionally attach a photo or document (such as an event invitation or a screenshot) to an activity I am registering
So that I can provide supporting evidence for the activity, which NHF requires for Bufdir verification
- Given the registration confirmation view is shown, when I tap 'Add Attachment', then I can choose between 'Camera', 'Photo Library', and 'File' options
- Given I select a photo from the library, when the attachment is processed, then it is compressed to under 1 MB and a thumbnail preview is shown on the confirmation view
- Given I have attached two files, when I attempt to add a fourth, then an error message informs me the maximum of three attachments per registration has been reached
- +2 more
As a As a Coordinator
I want to dictate my registration notes verbally after a session instead of typing them
So that I can complete documentation quickly and comfortably, especially when I have limited dexterity, poor lighting, or am on the move
- Given I am on the notes step, when I tap the microphone button, then a recording-state indicator becomes visible and the device's speech recognition service is activated
- Given speech recognition is active and I am speaking, when partial results are available, then the transcription preview field updates in real time with what has been recognised so far
- Given I finish speaking and tap Stop, when recognition completes, then the transcribed text is inserted into the notes field and I can edit it before proceeding
- +3 more
As a As a Peer Mentor (Likeperson)
I want to optionally add a brief text note to my activity registration
So that I can capture relevant context for the coordinator or for my own records without this step being mandatory or slowing down the common case
- Given the notes step is visible, when I tap 'Skip', then I advance to the confirmation view without any note attached
- Given I type a note of up to 1000 characters, when I proceed, then the note is saved with the registration
- Given I attempt to type more than 1000 characters, when the limit is reached, then a character counter turns red and further input is blocked with an accessible error message
- +2 more
As a As a Peer Mentor (Likeperson)
I want to see a summary of how many activities I have registered this month and this year directly on my home screen
So that I feel recognised for my contributions and can easily verify that my registrations are being captured
- Given I am on the peer mentor home screen, when the screen loads, then I see at minimum three stat cards: 'This month', 'Total hours this month', and 'This year'
- Given I have registered 5 activities this month, when I view the home screen, then the 'This month' card displays 5
- Given I tap the 'This month' stat card, when it is tapped, then I am navigated to the personal statistics view filtered to the current month
- +2 more
As a As a Peer Mentor (Likeperson)
I want to easily change the date and duration from their defaults when I am registering an activity that happened earlier
So that I can accurately log sessions I completed yesterday or earlier in the week without being forced to use today's date
- Given the date step is open, when I view it, then today's date is selected and the 6 previous days are shown as tappable date chips for quick selection
- Given I tap a date chip for yesterday, when I proceed, then the registration uses that date without requiring me to open a full calendar
- Given I need a date older than 7 days, when I tap 'Pick another date', then a full calendar date picker opens allowing selection of any past date
- +3 more
As a As a Peer Mentor (Likeperson)
I want to view a list of my recently submitted activity registrations and correct one if I made a mistake
So that I can fix errors immediately after registration without needing to contact my coordinator
- Given I have just submitted a registration, when the confirmation view is shown, then an 'Edit this registration' button is visible
- Given I tap 'Edit this registration', when the edit view opens, then all fields (activity type, date, duration, notes) are pre-populated with the submitted values
- Given I correct the duration from 30 to 45 minutes and save, when I return to my activity list, then the entry shows 45 minutes and an 'edited' timestamp
- +2 more
As a As a Peer Mentor (Likeperson)
I want to complete an activity registration even when I have no internet connectivity
So that I can log sessions in low-connectivity environments (e.g. rural areas, basement venues) without losing my work
- Given my device is offline (airplane mode), when I complete the full registration flow and tap Confirm, then the activity is saved locally and a confirmation view is shown with a 'Saved offline — will sync when connected' message
- Given I have 3 pending offline registrations, when connectivity is restored, then all 3 are synced to Supabase within 60 seconds and the pending badges are removed
- Given a sync fails due to a server error, when the sync is retried, then it retries up to 3 times with exponential backoff before surfacing an error to the peer mentor
- +2 more
As a As a Coordinator
I want to optionally add a brief text note to my activity registration
So that I can capture relevant context for the coordinator or for my own records without this step being mandatory or slowing down the common case
- Given the notes step is visible, when I tap 'Skip', then I advance to the confirmation view without any note attached
- Given I type a note of up to 1000 characters, when I proceed, then the note is saved with the registration
- Given I attempt to type more than 1000 characters, when the limit is reached, then a character counter turns red and further input is blocked with an accessible error message
- +2 more
As a As a Coordinator
I want to see a summary of how many activities I have registered this month and this year directly on my home screen
So that I feel recognised for my contributions and can easily verify that my registrations are being captured
- Given I am on the peer mentor home screen, when the screen loads, then I see at minimum three stat cards: 'This month', 'Total hours this month', and 'This year'
- Given I have registered 5 activities this month, when I view the home screen, then the 'This month' card displays 5
- Given I tap the 'This month' stat card, when it is tapped, then I am navigated to the personal statistics view filtered to the current month
- +2 more
As a As a Coordinator
I want to easily change the date and duration from their defaults when I am registering an activity that happened earlier
So that I can accurately log sessions I completed yesterday or earlier in the week without being forced to use today's date
- Given the date step is open, when I view it, then today's date is selected and the 6 previous days are shown as tappable date chips for quick selection
- Given I tap a date chip for yesterday, when I proceed, then the registration uses that date without requiring me to open a full calendar
- Given I need a date older than 7 days, when I tap 'Pick another date', then a full calendar date picker opens allowing selection of any past date
- +3 more
As a As a Coordinator
I want to view a list of my recently submitted activity registrations and correct one if I made a mistake
So that I can fix errors immediately after registration without needing to contact my coordinator
- Given I have just submitted a registration, when the confirmation view is shown, then an 'Edit this registration' button is visible
- Given I tap 'Edit this registration', when the edit view opens, then all fields (activity type, date, duration, notes) are pre-populated with the submitted values
- Given I correct the duration from 30 to 45 minutes and save, when I return to my activity list, then the entry shows 45 minutes and an 'edited' timestamp
- +2 more
As a As a Coordinator
I want to complete an activity registration even when I have no internet connectivity
So that I can log sessions in low-connectivity environments (e.g. rural areas, basement venues) without losing my work
- Given my device is offline (airplane mode), when I complete the full registration flow and tap Confirm, then the activity is saved locally and a confirmation view is shown with a 'Saved offline — will sync when connected' message
- Given I have 3 pending offline registrations, when connectivity is restored, then all 3 are synced to Supabase within 60 seconds and the pending badges are removed
- Given a sync fails due to a server error, when the sync is retried, then it retries up to 3 times with exponential backoff before surfacing an error to the peer mentor
- +2 more
As a As a Peer Mentor (Likeperson)
I want to choose an activity type from a short, clearly labelled list that uses my organisation's own terminology
So that I always categorise my work correctly for Bufdir reporting without needing to understand technical codes or generic labels
- Given I belong to organisation HLF, when I open the activity type selection step, then I see activity type names exactly as defined by the HLF administrator, not generic codes
- Given the activity type list is loaded, when the list contains more than 8 items, then the most recently used 5 types appear at the top separated by a divider from the full list
- Given I select an activity type, when I proceed to the next step, then the selected type is stored in the registration preferences store as my new default
- +2 more
As a As a Peer Mentor (Likeperson)
I want to register a completed peer support activity using pre-filled default values with minimal taps
So that I can log my work immediately after a session without it feeling like an administrative burden, ensuring my contributions are counted
- Given I am logged in as a peer mentor, when I tap the Add button in the bottom navigation, then the activity registration bottom sheet opens immediately with today's date, 30-minute duration, and my most recently used activity type pre-filled
- Given the bottom sheet is open with correct defaults, when I tap Confirm without changing anything, then the activity is saved and a confirmation view appears within 2 seconds
- Given I have just submitted a registration, when the confirmation view is shown, then it displays the activity type, date, duration, and a success indicator
- +3 more
As a As a Coordinator
I want to choose an activity type from a short, clearly labelled list that uses my organisation's own terminology
So that I always categorise my work correctly for Bufdir reporting without needing to understand technical codes or generic labels
- Given I belong to organisation HLF, when I open the activity type selection step, then I see activity type names exactly as defined by the HLF administrator, not generic codes
- Given the activity type list is loaded, when the list contains more than 8 items, then the most recently used 5 types appear at the top separated by a divider from the full list
- Given I select an activity type, when I proceed to the next step, then the selected type is stored in the registration preferences store as my new default
- +2 more
As a As a Coordinator
I want to register a completed peer support activity using pre-filled default values with minimal taps
So that I can log my work immediately after a session without it feeling like an administrative burden, ensuring my contributions are counted
- Given I am logged in as a peer mentor, when I tap the Add button in the bottom navigation, then the activity registration bottom sheet opens immediately with today's date, 30-minute duration, and my most recently used activity type pre-filled
- Given the bottom sheet is open with correct defaults, when I tap Confirm without changing anything, then the activity is saved and a confirmation view appears within 2 seconds
- Given I have just submitted a registration, when the confirmation view is shown, then it displays the activity type, date, duration, and a success indicator
- +3 more