IPLFantasy
### 6.1 Admin Panel (`/admin`) **Access**: Admin only **Features**: - User list table with search/filter - Click user to open squad editor - Add/remove/update players in user's squad - View user stats (swaps used, total points) - Trigger manual score updates - Configure app settings (max swaps, scoring rules) **Components**: - `UserList.tsx` - `SquadEditor.tsx` - `PlayerForm.tsx` - `ConfigPanel.tsx` --- ### 6.2 User Dashboard (`/dashboard`) **Access**: Logged-in user (their own dashboard) **Layout**: ``` ┌────────────────────────────────────────────────────────┐ │ Total Points: 1234 | Last Match: +67 | Swaps: 3/5 │ ├─────────────────────────┬──────────────────────────────┤ │ FULL SQUAD (25) │ MY TEAM (12) │ │ [Scrollable List] │ [2 Rows of 6] │ │ │ │ │ Player Cards: │ Player Cards: │ │ ┌──────────────┐ │ ┌──────────────┐ │ │ │ [Image] │ │ │ [Image] │ │ │ │ Virat Kohli │ │ │ Virat Kohli │ │ │ │ RCB │ │ │ RCB │ │ │ │ [Add →] │ │ │ [Remove ×] │ │ │ └──────────────┘ │ └──────────────┘ │ │ │ │ │ │ [SAVE TEAM BUTTON] │ └─────────────────────────┴──────────────────────────────┘ ``` **Features**: - Drag & drop players between squad and team - Add/remove buttons as alternative to drag - Team composition validation: - Max 4 overseas players - Min 4 bowlers - At least 1 wicket keeper - Real-time validation feedback - Swap tracking and limit enforcement - Save team changes **Components**: - `Dashboard.tsx` - `SquadList.tsx` - `TeamGrid.tsx` - `PlayerCard.tsx` - `StatsCards.tsx` --- ### 6.3 Leaderboard (`/leaderboard`) **Access**: Public (all logged-in users) **Table Layout**: ``` Rank | Team Name | Total Points | Change -----|------------------------|--------------|-------- 1 | Kolkata Knight Riders | 2,345 | ↑ +89 2 | Mumbai Indians | 2,210 | ↓ -12 3 | Chennai Super Kings | 2,189 | ↑ +67 ... ``` **Features**: - Sortable columns - Search by team name - Highlight current user's team - Show change since last match - Auto-refresh every minute during live matches **Components**: - `Leaderboard.tsx` - `LeaderboardTable.tsx` - `TeamRow.tsx` --- ### 6.4 Team Scoreboard (`/teams/:userId`) **Access**: Public (all logged-in users) **Layout**: ``` Team Name: Kolkata Knight Riders Total Points: 2,345 12-Player Grid: ┌──────────────┬──────────────┬──────────────┐ │ [Player 1] │ [Player 2] │ [Player 3] │ │ Image │ Image │ Image │ │ Name │ Name │ Name │ │ IPL Team │ IPL Team │ IPL Team │ │ 234 pts │ 189 pts │ 156 pts │ │ │ │ │ │ ▼ Last 5 │ ▼ Last 5 │ ▼ Last 5 │ │ [Collapsed] │ [Collapsed] │ [Collapsed] │ └──────────────┴──────────────┴──────────────┘ Expanded Match History (when clicked): MI vs CSK: 60 [See Explanation ℹ️] CSK vs RCB: 45 [See Explanation ℹ️] ... Modal (when "See Explanation" clicked): ┌─────────────────────────────────────┐ │ Virat Kohli - MI vs CSK │ │ ───────────────────────────────── │ │ Batting: │ │ 67 runs × 1 = 67 │ │ 50+ bonus = 10 │ │ 4×6 = 8, 6×4 = 8 │ │ Strike Rate 145 = 5 │ │ │ │ Bowling: │ │ No bowling │ │ │ │ Total: 98 points │ └─────────────────────────────────────┘ ```