# Please enter a commit message to explain why this merge is necessary, # especially if it merges an updated upstream into a topic branch. # # Lines starting with '#' will be ignored, and an empty message aborts # the commit.
2.9 KiB
🚀 Elmeg Platform Expansion Spec
Moving from "Utility" to "Community"
1. Module: The "Social Loop" (Interactions & Notifications)
Objective: Increase user retention by creating feedback loops.
A. "Likes" & Reactions
Problem: Users can only write text. No lightweight way to acknowledge others.
Solution: Implement a polymorphic Reaction system.
- Backend:
- Create
Reactionmodel (user_id,entity_type,entity_id,emoji). - API:
POST /react,DELETE /react.
- Create
- Frontend:
- Add "Heart" / "Like" button to Reviews and Comments.
- Display count next to the button.
B. Threaded Conversations
Problem: Comments are linear. Replies get lost. Solution: infinite nesting (or shallow nesting) for comments.
- Backend: Add
parent_idtoComment. - Frontend: "Reply" button reveals nested input. indent child comments.
C. The Notification Center
Problem: Users don't know when someone interacts with them. Solution: A centralized inbox for alerts.
- Triggers:
- User B replies to User A -> Notify User A.
- User B likes User A's review -> Notify User A.
- Backend:
GET /notifications(paginated),POST /notifications/{id}/read. - Frontend:
- Bell icon in header with red dot badge.
- Dropdown or dedicated page listing alerts.
- Clicking clears "unread" state and navigates to content.
2. Module: The "Safe Space" (Moderation)
Objective: Protect the community as it scales.
A. Reporting System
Problem: Bad actors can post spam/abuse. Solution: Crowd-sourced flagging.
- Frontend: "Flag" icon on every user-generated content (UGC).
- Modal: Select reason (Spam, Harassment, Spoiler).
- Backend:
POST /reports.
B. Admin Dashboard
Problem: Reports go into a black hole (database only). Solution: A UI for Moderators.
- Route:
/admin/reports(Protected: Role >= Moderator). - Features:
- List pending reports.
- "Resolve" (Delete Content + Warn User).
- "Dismiss" (False Alarm).
3. Module: The "Velvet Rope" (User Journey & Identity)
Objective: Make the user feel special and secure.
A. Onboarding Flow
Problem: Registration dumps user on the homepage with no direction. Solution: A "Welcome Wizard".
- Welcome: "Thanks for joining the flock!"
- Setup: Upload Avatar (or generate one).
- Taste: "Pick your favorite 3 shows" (seeds recommendation engine later).
B. Identity Verification
Problem: Anyone can sign up with fake emails. Solution: Email Verification (optional for MVP, maybe "Verified User" badge).
4. Proposed Execution Order
- Phase 1: Notifications & Reactions (High visibility, high engagement).
- Phase 2: Moderation (Essential before public launch).
- Phase 3: Deep User Journey (Polish).
Action Item: Does this spec cover the requested scope? Shall we begin with Phase 1 (Notifications)?