How raihans-code/alkaran-bulls-tournament-client works
Alkaran Bulls is a React client for a cricket league, covering season selection, team and player management, live auctions, match viewing, standings, and administration. The main live workflow is a user selecting a season and bidding in its auction; administrators also record ball-by-ball scores, which feed match views and scoreboards. The route map and sampled auth, season, auction, and scoring code support the edges shown. Other feature pages are present in the tree, but their API wiring was not sampled, so it is left unspecified.
Main entry points: App.jsx Route application · api.js REST client · socket.js Realtime client · AuthContext.jsx Authentication state
Components 24
App and access
- Route application
src/App.jsx - Authentication state
src/context/AuthContext.jsx - Access guard
src/components/ProtectedRoute.jsx - Dashboards
src/pages/UserDashboard.jsx
Season and squads
- Season management
src/pages/Seasons.jsx - Season details
src/pages/SeasonDetail.jsx - Selected season
src/context/SeasonContext.jsx - Teams and rosters
src/pages/Teams.jsx - Player directory
src/pages/Players.jsx - Owner team
src/pages/MyTeam.jsx
Live auction
- Auction screen
src/pages/Auction.jsx - Auction state and bids
src/hooks/useAuction.js
Matches and scoring
- Match listings
src/pages/Matches.jsx - Match details
src/pages/MatchDetail.jsx - Scoring console
src/pages/admin/AdminScores.jsx - Live match polling
src/hooks/useLiveMatch.js - Match scoreboard
src/pages/Scoreboard.jsx - Points and history
src/pages/PointsTable.jsx
Client services
- REST client
src/services/api.js - Realtime client
src/services/socket.js
Other components
- League user
- Administrator
- Application backend
- Realtime server
Connections 28
- League user → Route application: opens
- Administrator → Route application: opens
- Route application → Authentication state: checks identity
- Route application → Access guard: guards routes
- Route application → Dashboards: routes to
- Route application → Season management: routes to
- Route application → Season details: routes to
- Route application → Teams and rosters: routes to
- Route application → Player directory: routes to
- Route application → Owner team: routes to
- Route application → Auction screen: routes to
- Route application → Match listings: routes to
- Route application → Match details: routes to
- Route application → Scoring console: routes to
- Route application → Match scoreboard: routes to
- Route application → Points and history: routes to
- Authentication state → REST client: authenticates
- Authentication state → Realtime client: resets connection
- Selected season → REST client: loads seasons
- Selected season → Realtime client: joins season
- Auction state and bids → REST client: polls state; fallback bids
- Auction state and bids → Realtime client: sends bids
- Auction screen → Auction state and bids: uses auction state
- Scoring console → REST client: records scoring
- Scoring console → Live match polling: loads live match
- Live match polling → REST client: polls match
- REST client → Application backend: REST requests
- Realtime client → Realtime server: realtime events