low complexity extracted Notifications Confidence: 100%
3
Components
4
Shared
0
User Stories
Yes
Analyzed

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 116
    Oppfølging av likepersoner: 40 % var ikke fornøyd med oppfølgingen i spørreundersøkelse. Scenariobaserte push-meldinger og kalendersynkronisering.

Analysis

Business Value

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.

Implementation Notes

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.

User Stories

No user stories have been generated for this feature yet.