# MirrorMatch User Flows (MVP) ## Admin: create Group + invite users - Admin creates a Group (name + slug). - Admin enters an email address and role (ADMIN/MEMBER). - System emails an invite link: `/invite/`. - User clicks link, logs in, invite is redeemed, user becomes a member. ## User: create a Set - Select Group. - Create Set: - title/instructions (optional) - options (2–4) - photos (2–10) - For each photo: - upload image - choose correct option - set points (1–10) - Publish Set (status goes to OPEN). ## User: guessing - Set screen shows **two photos at a time** (as you requested): - UI shows a pair of target photos and asks the user to label each. - Order is randomized per viewer (left/right and per-row). - User selects an option for each photo and submits. - Server validates: - user is in the Group - Set is OPEN - user has not already guessed - user is not the uploader of that photo ## Reveal - If configured: auto-reveal when all Group members have guessed all photos. - Always allowed: admin/uploader can manually reveal. - Once revealed, UI shows: - correct labels per photo - who guessed what - points earned + leaderboard