MEDIUM story-quick-activity-registration-peer-mentor-008 5 pts
5
Story Points
Medium
Priority
Quick Activity Registration
Feature

User Story

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

Audience Summaries

This story directly addresses the documentation burden faced by peer mentors — particularly those with visual impairments served by Blindeforbundet and hearing-loss users supported by HLF — both of whom explicitly listed this as a SHOULD HAVE requirement. By reducing post-session note-taking effort by an estimated 60–70%, the organisation captures richer activity data with minimal friction. Higher-quality notes strengthen Bufdir reporting accuracy, which directly supports funding justification and organisational credibility. Retaining mentors who would otherwise abandon note-taking due to accessibility barriers also protects the volunteer base that underpins the programme's scale and reach.

This story has medium priority and moderate implementation complexity. It depends on story-quick-activity-registration-peer-mentor-004, so sequencing must be respected in sprint planning. Key delivery risks include device fragmentation: the speech recognition bridge must handle older Android devices gracefully by hiding the microphone button rather than failing. Norwegian language support is required at launch; the architecture must be extensible for future locales without rework.

Testing must cover real-time transcription preview, cancel/stop flows, and automatic cancellation on step dismissal. Accessibility validation with screen reader tools is essential given the Blindeforbundet user base. UAT should include representatives from both partner organisations.

Implementation requires a bridge component wrapping the device's native speech recognition API (Web Speech API on web views, SpeechRecognizer on Android, SFSpeechRecognizer on iOS). The bridge must emit partial result events to update the transcription preview field in real time using a reactive state binding. A capability detection check must run before rendering the notes step UI — if the device reports no speech recognition support, the microphone button must be conditionally excluded from the layout rather than disabled. The stop/cancel button must always be rendered when recording is active.

On step dismissal while recording is active, the component lifecycle hook must call `recognizer.cancel()` and release the microphone resource. Norwegian locale must be passed as the language hint to the recognition API. The notes field must accept the transcribed string as a regular editable text value post-insertion.

Acceptance Criteria

  • 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
  • Given the device does not support speech recognition (e.g. older Android), when I open the notes step, then the microphone button is hidden and only the keyboard input is shown
  • Given I tap Cancel during recording, when the recording stops, then no text is inserted and the notes field is unchanged
  • Given recording is active, when the notes step is dismissed without stopping, then the recording is automatically cancelled and the microphone is released

Business Value

Speech-to-text reduces the effort of post-session documentation by an estimated 60–70% for mentors who prefer verbal expression. Blindeforbundet users may have visual impairments that make typed input particularly burdensome. Capturing richer notes increases the quality of coordinator follow-up and Bufdir reporting, without adding friction to the core two-tap registration flow.