Commit graph

6 commits

Author SHA1 Message Date
fullsizemalt
5ffb428bb8 feat: Add gamification system
Backend:
- Add XP, level, streak fields to User model
- Add tier, category, xp_reward fields to Badge model
- Create gamification service with XP, levels, streaks, badge checking
- Add gamification router with level progress, leaderboard endpoints
- Define 16 badge types across attendance, ratings, social, milestones

Frontend:
- LevelProgressCard component with XP bar and streak display
- XPLeaderboard component showing top users
- Integrate level progress into profile page

Slug System:
- All entities now support slug-based URLs
- Performances use songslug-YYYY-MM-DD format
2025-12-21 18:58:42 -08:00
fullsizemalt
2e4e0b811d feat: User profile enhancements - chase songs and attendance stats
Backend:
- Add ChaseSong model for tracking songs users want to see
- New /chase router with CRUD for chase songs
- Profile stats endpoint with heady versions, debuts, etc.

Frontend:
- ChaseSongsList component with search, add, remove
- AttendanceSummary with auto-generated stats
- Updated profile page with new Overview tab content
2025-12-21 18:39:39 -08:00
fullsizemalt
c16fe559e0 feat: Add Admin Panel (Phase 2)
Backend:
- admin.py router with user management CRUD
- Platform stats endpoint
- Shows/Songs/Venues/Tours CRUD
- Protected by RoleChecker (admin only)

Frontend:
- /admin dashboard with stats cards
- Users tab with search and edit dialog
- Content tab with entity counts
- Role/ban/verification management
2025-12-21 13:50:52 -08:00
fullsizemalt
df586b7c4e feat: Hide leaderboards, add healthz endpoint and seed script 2025-12-21 03:41:23 -08:00
fullsizemalt
ffce34f948 feat: Add /shows/recent and /stats/top-songs API endpoints 2025-12-20 22:19:12 -08:00
fullsizemalt
f8b8ad7033 feat: Initial elmeg-demo with full-stack fandom archive platform 2025-12-19 22:01:29 -08:00