-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Labels
Description
Overview
Implement non-punishing gamification with mastery-based achievements and titles.
Part of
Memoryloop v2 Pivot - Branch 014-goal-based-learning
Design Principles
- NO streak counters that reset
- NO daily requirements
- NO guilt-inducing notifications
- Achievements are retroactive (earn "Perfect Week" after the fact)
- Focus on mastery milestones, not frequency
Achievements (examples)
| Name | Trigger | Description |
|---|---|---|
| First Steps | Master 10 cards | Your learning journey begins |
| Century | Master 100 cards | Triple digits! |
| Perfect Week | Study 7 consecutive days | Retroactive, not streak |
| Deep Dive | 90% mastery on a goal | True understanding |
| Polymath | Complete 5 goals | Renaissance learner |
Titles/Ranks
Progress through titles based on total mastery:
- Novice (0-50 cards)
- Apprentice (51-200)
- Practitioner (201-500)
- Expert (501-1000)
- Master (1000+)
Database
achievementstable (definitions)user_achievementstable (earned achievements)user_titles- current title (calculated)
Components
components/achievements/AchievementCard.tsxcomponents/achievements/AchievementPopup.tsx- Celebration animationcomponents/achievements/TitleBadge.tsxcomponents/achievements/AchievementsGrid.tsx
Acceptance Criteria
- Achievements unlock at correct milestones
- Celebratory animation on unlock (confetti)
- Title updates automatically
- No punishing mechanics (SC-008)
- Achievements page shows all earned/available
Dependencies
- Issue [v2] Database Schema: Learning Goals and Skill Trees #220 (Database Schema)
- Issue [v2] Mastery Dashboard and Progress Visualization #224 (Dashboard)
Related Spec
See specs/014-goal-based-learning/spec.md - User Story 5