medium complexity extracted Statistics Confidence: 100%
3
Components
4
Shared
0
User Stories
Yes
Analyzed

Description

This feature provides peer mentors with a personal dashboard displaying their own activity history, contribution metrics, and impact over time. The statistics view shows logged activities, hours contributed, and trend data by week, month, or year. Volunteers get immediate visibility into their own work without coordinator access. The feature motivates ongoing engagement by making effort visible and quantifiable, directly addressing the invisible-volunteer problem raised across all four partner organizations in the source workshops.

Sources & reasoning

Line 322 explicitly lists personal and coordinator statistics as a Phase 1 MVP deliverable within the Fase 1 section heading at line 314. This maps to target_release MVP by ordinal position (first/launch phase). The feature addresses the cross-organization motivation problem and provides the data foundation for Phase 3 gamification.

  • docs/source/likeperson.md · line 322
    Enkel statistikkvisning per likeperson og per koordinator
  • docs/source/likeperson.md · line 314
    ### Fase 1 - MVP (alle organisasjoner, vår)

Analysis

Business Value

Peer mentors who cannot see the result of their own effort are less motivated to continue volunteering. All four partner organizations cited the need to make volunteer contributions visible as a core retention driver. Providing personal statistics in the mobile app closes this feedback loop without manual reporting or coordinator involvement. Higher volunteer retention lowers recruitment and onboarding costs and improves continuity of peer support. The feature also provides the underlying data layer for gamification features - Wrapped summaries and achievement badges - planned for Phase 3 of the roadmap.

Implementation Notes

The feature builds on ActivityRepository from the activity-registration area. StatisticsService aggregates raw records into summarized metrics (counts, durations, period breakdowns) and exposes them via the shared REST API. PersonalStatsScreen uses Riverpod providers with Drift-backed offline caching for last-known values. Charts use a Flutter charting library (e.g. fl_chart) with WCAG 2.2 AA compliant contrast ratios. The screen respects the organization labels system so terminology matches each tenant's vocabulary. Data is scoped strictly to the authenticated user - no cross-user record exposure at any layer.

User Stories

No user stories have been generated for this feature yet.