Commit graph

1 commit

Author SHA1 Message Date
fullsizemalt
bc804a666b feat: Gamification sprint complete
XP System:
- XP now awarded for attendance (+25), ratings (+10), reviews (+50)
- First-time bonuses for first rating (+25) and first review (+50)
- Streak bonuses (+10 per day, capped at 7x)
- Badge awards automatically grant XP

User Titles & Flair System (Tracker-style):
- Level-based free titles: Rookie → Immortal
- Purchasable titles with XP: Jam Connoisseur, Setlist Savant, etc.
- Username colors purchasable with XP (6 colors + Rainbow)
- Emoji flairs purchasable with XP
- Early adopter perks: exclusive titles, colors, 10% XP bonus

New Fields on User:
- custom_title, title_color, flair
- is_early_adopter, is_supporter
- joined_at

Shop API Endpoints:
- GET /gamification/shop/titles
- POST /gamification/shop/titles/purchase
- GET/POST for colors and flairs
- GET /gamification/user/{id}/display
- GET /gamification/early-adopter-perks

Frontend:
- XP Leaderboard added to home page
- LevelProgressCard shows on profile
2025-12-21 19:21:20 -08:00