Service Layer medium complexity backend
0
Dependencies
0
Dependents
1
Entities
0
Integrations

Description

Backend service that aggregates a peer mentor's raw activity log entries for the year and composes a personalized annual recap. Produces structured statistics and narrative text consumed by the Wrapped Screen.

Feature: Annual Summary (Wrapped)

wrapped-generation-service

Sources & reasoning

Wrapped is explicitly named in §2.2 as a shared need across three organizations and listed in Fase 3 (Growth & Engagement) deliverables, fixing both motivation and target_release.

  • Tre organisasjoner er inspirert av Spotify Wrapped og ønsker en funksjon som viser likepersonens bidrag over tid - «Din likepersonsårek». Målet er å gi frivillige stolthet og motivasjon
  • Fase 3 - Vekst og engasjement - Gamification / «Ditt likepersonsår» (Wrapped, badges, Advantage Calculator)

Responsibilities

  • Aggregate yearly totals for activities, hours, and contacts helped per mentor
  • Identify standout milestones and notable moments from activity data
  • Compose personalized narrative text for each recap card
  • Cache generated recaps to avoid recomputation on repeat views
  • Expose the recap payload via an API consumable by the Wrapped Screen

Interfaces

generateWrapped(mentorId, year): WrappedRecap
getWrapped(mentorId, year): WrappedRecap
computeMilestones(mentorId, year): Milestone[]

Related Data Entities (1)

Data entities managed by this component