Wrapped Generation Service
Component Detail
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.
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.
-
docs/source/likeperson.md · line 46-47Tre 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
-
docs/source/likeperson.md · line 265-266Fase 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[]