Notification Settings
Feature Detail
Description
Notification Settings gives users fine-grained control over which notification types they receive and on which channels. The NotificationSettingsScreen exposes toggles for push, email, and SMS per event category, backed by NotificationPreferencesService persisting choices in NotificationPreferencesRepository. Preferences are synced to the backend so the NotificationDispatcher respects opt-outs server-side, ensuring no notifications are sent on disabled channels regardless of client state or platform delivery behaviour.
Sources & reasoning
Notification settings are a necessary companion to the push and scenario features documented at line 116. HLF's Phase 2 scenario-based notifications imply user control over alert frequency and channel. Blueprint marks this [v1.0], aligning with the Phase 2 placement in the source roadmap (→ v1.0).
-
docs/source/likeperson.md · line 116Oppfølging av likepersoner: 40 % var ikke fornøyd med oppfølgingen i spørreundersøkelse. Scenariobaserte push-meldinger og kalendersynkronisering.
Analysis
Respecting user communication preferences is a legal obligation under Norwegian electronic communication law and a trust requirement for volunteer platforms. Peer mentors overwhelmed by notifications are more likely to disable all alerts or disengage from the app entirely, degrading the platform's effectiveness. Granular settings allow users to stay informed about relevant events while filtering noise, increasing long-term retention. For organizations with less digitally confident peer mentors, accessible settings reduce the cognitive load of managing communications and prevent blanket opt-outs driven by notification fatigue.
NotificationSettingsScreen is a form screen backed by NotificationPreferencesService, which reads and writes to NotificationPreferencesRepository. Preferences are cached offline in Drift and synced to the backend on reconnect. NotificationDispatcher reads preferences server-side before dispatching, ensuring opt-outs are respected regardless of client state. The UI must meet WCAG 2.2 AA requirements: all toggles need visible labels, minimum 24×24px touch targets, and correct focus indicators. Defaults opt-in for critical events and opt-out for non-essential notification categories.
Components (7)
Shared Components
These components are reused across multiple features
User Stories
No user stories have been generated for this feature yet.