Elmeg Platform Roadmap
Last Updated: 2025-12-27
Status: Production Ready ✅
Current State Summary
Elmeg is a fully functional platform for the Goose fan community to track shows, rate performances, write reviews, and engage with other fans. All core features are implemented and deployed.
✅ Completed Features
Core Platform
| Feature |
Description |
| Show Database |
Complete show history with venues, tours, setlists |
| Performance Tracking |
Individual song performances linked to shows |
| Song Library |
All songs with original artist info, cover tracking |
| Venue Database |
All venues with location data |
| Tour Management |
Tours with date ranges |
User System
| Feature |
Description |
| Registration |
Email/password with verification |
| Password Reset |
Secure token-based reset via email |
| Profile |
Username, display name, bio, avatar customization |
| Privacy Controls |
Public/private profile, leaderboard opt-out |
| Theme Persistence |
Light/dark mode synced to account |
| GDPR Data Export |
Download all personal data as JSON |
| Account Deletion |
Full data removal with email confirmation |
Social Features
| Feature |
Description |
| Reviews |
Blurb + full content + score for any entity |
| Ratings |
Granular scores for performances, shows, songs |
| Comments |
Threaded comments with @mentions |
| Reactions |
Like/love reactions on reviews/comments |
| Activity Feed |
"Living links" to reviewed content |
| Groups |
Create/join fan groups |
| Chase Songs |
Track songs you want to hear live |
| Attendance |
Mark shows you've attended |
Gamification
| Feature |
Description |
| XP System |
Earn XP for activities |
| Levels |
Level up based on XP |
| Badges |
Unlock achievements |
| Leaderboards |
Community rankings |
| Avatar Unlocks |
XP-gated avatar customization |
Rankings & Discovery
| Feature |
Description |
| Performance Rankings |
#X of Y versions, average ratings |
| Heady Badges |
Top-rated versions highlighted |
| Search |
Full-text search across all entities |
| Videos Page |
YouTube links for performances |
Email Notifications
| Feature |
Description |
| Verification |
Account email verification |
| Password Reset |
Secure reset emails |
| Reply Alerts |
Email when someone replies to your comment |
| Mention Alerts |
Email when you're @mentioned |
| Chase Alerts |
Email when a chased song is played |
| Weekly Digest |
Activity summary + community highlights |
Admin Tools
| Feature |
Description |
| User Management |
View/edit users, roles, verification |
| Content CRUD |
Shows, songs, venues, tours, performances |
| Platform Stats |
Dashboard with key metrics |
| Email Testing |
POST /api/admin/test-email |
| Digest Trigger |
POST /api/admin/send-weekly-digest |
| Link Import |
Bulk import external links |
🔄 Future Enhancements
Priority: High
| Feature |
Description |
Complexity |
| Automated Weekly Digest |
Add cron job to server to auto-send Sundays 9am UTC |
Low |
| Error Tracking |
Integrate Sentry for backend error monitoring |
Medium |
| Uptime Monitoring |
Set up UptimeRobot or similar |
Low |
Priority: Medium
| Feature |
Description |
Complexity |
| One-Click Unsubscribe |
Add token-based unsubscribe links in emails |
Medium |
| Email Templates |
Move to proper template engine (Jinja2) |
Medium |
| Rate Limiting |
Add request rate limiting to protect API |
Medium |
| API Caching |
Redis cache for frequently accessed data |
Medium |
| Image Uploads |
User profile pictures, venue photos |
High |
Priority: Low (Nice-to-Have)
| Feature |
Description |
Complexity |
| Social Auth |
Google/Discord OAuth login |
Medium |
| Two-Factor Auth |
TOTP-based 2FA |
High |
| Push Notifications |
Web push for real-time alerts |
High |
| Mobile App |
Native iOS/Android apps |
Very High |
| Dark Mode System |
Respect system preference by default |
Low |
| PWA |
Progressive web app for mobile |
Medium |
🧹 Technical Debt
| Item |
Description |
Priority |
Remove deprecated version |
docker-compose.yml version key |
Low |
| Clean unused files |
scripts/cron_weekly_digest.sh not used |
Low |
| Add test coverage |
No automated tests currently |
Medium |
| API Documentation |
OpenAPI docs exist but could be enhanced |
Low |
| Code comments |
Some complex functions need better docs |
Low |
🚀 Deployment Info
Container Stack
backend - FastAPI (Python 3.11)
frontend - Next.js 15
db - PostgreSQL 15
db-backup - Auto daily backups (7 days, 4 weeks, 6 months)
umami - Analytics
umami-db - Analytics database
Email
- Provider: Postal (self-hosted)
- SMTP: smtp.elmeg.xyz:25
- DNS: SPF, DKIM, DMARC configured
📝 Quick Reference: Key API Endpoints
User Preferences
GET /api/preferences/ # Get all preferences
PUT /api/preferences/ # Update preferences
Email Notifications (triggered automatically)
- Reply: When someone replies to your comment
- Mention: When you're @mentioned
- Chase: When a chased song is played (via import)
- Digest: Admin triggers
POST /api/admin/send-weekly-digest
GDPR/Privacy
GET /api/users/me/export # Download all your data
DELETE /api/users/me # Delete account (body: {"confirm_email": "..."})
Admin (requires admin role)
POST /api/admin/test-email?to_email=... # Test email config
POST /api/admin/send-weekly-digest # Trigger weekly digest
GET /api/admin/stats # Platform statistics
📅 Session History
Dec 27, 2025
- Fixed auth persistence (missing DB columns)
- Added performance rankings (#X of Y) with heady badges
- Theme persistence to backend
- GDPR data export + account deletion
- Email notifications (reply, mention, chase, digest)
- bugs.elmeg.xyz subdomain
- Admin email endpoints
Dec 26, 2025
- Launch readiness polish
- Favicon, robots.txt, sitemap
- SEO meta tags
Dec 24-25, 2025
- Umami analytics integration
- Database backup automation
- UI polish (border-radius, emojis removed)
Dec 22-23, 2025
- YouTube video integration
- Postal email setup
- Email verification working
🎯 Next Session Priorities
- Set up automated weekly digest cron (if desired)
- Test all notification flows end-to-end
- Consider error tracking (Sentry)
- Any user-reported bugs or requests
This document is the source of truth for Elmeg platform status and roadmap.