Imported from server/TODO.md.
Kanban
- Column: Backlog
- Area: Server
📋 TODO - Achievements System (LOW PRIORITY)
Player achievement tracking and badges.
Task Breakdown:
1. Prisma Schema Updates
2. Achievement Definitions
| Key |
Name |
Description |
Trigger |
first_blood |
First Blood |
Win your first battle |
1st win |
streak_5 |
On Fire |
Win 5 battles in a row |
5 consecutive wins |
streak_10 |
Unstoppable |
Win 10 battles in a row |
10 consecutive wins |
streak_25 |
Legendary |
Win 25 battles in a row |
25 consecutive wins |
speed_demon |
Speed Demon |
Solve a problem in under 2 minutes |
Submit < 120s |
comeback_king |
Comeback King |
Win after opponent passed more tests first |
Win after trailing |
language_python |
Pythonista |
Win 10 battles using Python |
10 Python wins |
language_js |
JS Wizard |
Win 10 battles using JavaScript |
10 JS wins |
clan_champion |
Clan Champion |
Win 10 clan wars |
10 clan war wins |
contributor |
Problem Setter |
Contribute a problem that gets approved |
PR merged |
season_rank |
Seasonal Glory |
Finish a season in top 100 |
Season end |
3. Achievement Service
4. Achievement API
5. Integration
6. Tests
Imported from
server/TODO.md.Kanban
📋 TODO - Achievements System (LOW PRIORITY)
Player achievement tracking and badges.
Task Breakdown:
1. Prisma Schema Updates
Achievementmodel (id, key, name, description, icon, category)UserAchievementmodel (id, userId, achievementId, unlockedAt)2. Achievement Definitions
first_bloodstreak_5streak_10streak_25speed_demoncomeback_kinglanguage_pythonlanguage_jsclan_championcontributorseason_rank3. Achievement Service
achievements/modulecheckAndUnlock(userId, event)— Check triggers after battle completiongetUserAchievements(userId)— List unlocked achievementsgetAllAchievements()— List all available achievements4. Achievement API
GET /api/achievements— List all achievements (with unlock status for auth'd user)GET /api/users/:id/achievements— List user's unlocked achievements5. Integration
checkAndUnlock()after battle completionachievement.unlocked— Notify user of new achievement6. Tests