How th1salk/mora-cricket-stat-records works
Mora Cricket Stats is a team-records web app: visitors browse match, player, and statistical views, while administrators manage records and enter performances. The documented manual entry flow is complemented by a PDF/import workflow that extracts and reviews match data before publication. The map includes season-aware statistics, authentication, persistence, and the major documented product branches. Some routes and UI modules were not sampled, so their links are included only where the README or source index supports them; unsampled implementation details are not inferred.
Main entry points: models Domain models · api API routes · importActions.ts Import actions · queries Data queries
Components 21
Web experience
- Public pages
src/app - Stats views
src/app/stats - Career and records
src/app/career/page.tsx - Player profiles
src/app/players
Admin and entry
- Admin pages
src/app/admin - Manual entry
src/app/stats/enter/page.tsx - Import review
src/components/import/DraftReview.tsx - Import workflow
src/components/import/ImportClient.tsx - Import actions
src/lib/actions/importActions.ts - Import processing
src/lib/import
Cricket domain
- API routes
src/app/api - Data queries
src/lib/queries - Stats calculations
src/lib/stats - Season service
src/lib/seasonsServer.ts
Persistence and access
- Authentication
src/lib/auth.ts - Rate limiting
src/lib/rateLimit.ts - DB connection
src/lib/mongodb.ts - Domain models
src/models
Other components
- Visitor
- Administrator
- MongoDB
Connections 30
- Visitor → Public pages: browses
README.md - Visitor → Stats views: views stats
README.md - Visitor → Career and records: views career
README.md - Visitor → Player profiles: views profiles
README.md - Administrator → Admin pages: manages records
README.md - Administrator → Manual entry: enters performances
README.md - Administrator → Import workflow: imports scorecards
README.md - Import workflow → Import review: opens review
src/components/import/ImportClient.tsx - Import workflow → Import processing: uses processing
src/components/import/ImportClient.tsx - Import review → Import processing: checks publish readiness
src/components/import/DraftReview.tsx - Import review → Import actions: publishes draft
src/components/import/DraftReview.tsx - Import actions → Authentication: checks user
src/lib/actions/importActions.ts - Import actions → Rate limiting: checks limits
src/lib/actions/importActions.ts - Import actions → Import processing: validates and publishes
src/lib/actions/importActions.ts - Import actions → Domain models: writes records
src/lib/actions/importActions.ts - API routes → Authentication: guards mutations
src/app/api/matches/[id]/route.ts - API routes → Rate limiting: limits requests
src/app/api/matches/[id]/route.ts - API routes → Domain models: reads and writes
src/app/api/matches/[id]/route.ts - API routes → Season service: validates seasons
src/app/api/matches/[id]/route.ts - API routes → Data queries: requests statistics
src/app/api/stats/batting/route.ts - Data queries → Stats calculations: calculates summaries
src/lib/queries/stats.ts - Data queries → Season service: resolves season filter
src/lib/queries/stats.ts - Data queries → Domain models: loads match data
src/lib/queries/stats.ts - Season service → Domain models: reads seasons and matches
src/lib/seasonsServer.ts - Authentication → Domain models: reads sessions and users
src/lib/auth.ts - Rate limiting → Domain models: stores request counts
src/lib/rateLimit.ts - DB connection → MongoDB: connects
src/lib/mongodb.ts - Authentication → DB connection: connects database
src/lib/auth.ts - Data queries → DB connection: connects database
src/lib/queries/stats.ts - Domain models → MongoDB: persists records