The problem
College and corporate cricket tournaments are still scored on paper or in spreadsheet chaos: the scorer's notebook disagrees with the announced total, net run rate is computed by hand after midnight, and nobody watching from home knows the score. The scoring rules themselves are a great software problem — strike changes on odd runs and at over end, extras don't count as balls (except some), wickets reset the striker, NRR has a precise formula. This project encodes all of it in a scoring engine: ball-by-ball entry drives a live score, automatic strike rotation, bowler figures, partnership tracking, full scorecards for both innings, a Manhattan run graph, and a points table with NRR updated after every match. One undo tap fixes the inevitable mis-tap without corrupting the innings.
Enters every ball as an event.
Follow the working sequence
How it works
- The organizer creates a tournament, registers teams with player squads, and generates the fixture list.
- Before a match the scorer records the toss, the elected choice, and the playing elevens with batting order.
- Each ball is entered as an event (runs, extra type, wicket type); the engine appends it to the innings log.
- The engine replays the log to derive the live state: score, wickets, overs, striker/non-striker, bowler figures, partnerships and run rates.
- Live views — score header, this-over strip, Manhattan graph — render from the derived state and update on every ball.
- At innings/match end the engine finalizes scorecards, computes the result and margin, and updates the points table and NRR.
- Scorecards and the points table can be shared or printed; the event log keeps every ball auditable.
Tech stack:
- HTML, CSS and JavaScript (touch-first scorer UI)
- Node.js with Express (tournament API)
- SQLite (tournaments, matches, ball-by-ball event log)
- WebSocket live updates to viewer screens
- Event-sourced scoring engine (replayable innings log)
- Puppeteer (printable scorecard export)
- Docker (one-command deployment)
| Parameter | Value |
|---|---|
| Scoring model | Append-only ball event log; state derived by replay |
| Formats supported | T20 and limited-overs (configurable overs per innings) |
| NRR computation | Standard runs/overs formula, automatic per match |
| Live update latency | Under 1 second on local network (design target) |
| Undo depth | Full innings (any ball can be corrected) |
| Offline use | Scorer UI works offline; syncs when connected |
| Export | Printable scorecard, points table CSV |
Project features
- [Ball-by-ball entry] Big touch-friendly buttons for 0–6, wides, no-balls, byes, leg-byes and wickets, with batsman and bowler pickers per ball.
- [Automatic cricket logic] Strike rotation on odd runs and over completion, extras handling, bowler over limits, and innings break detection — the scorer never does arithmetic.
- [Live score and scorecards] Current score, required run rate in chases, full batting and bowling tables for both innings, fall of wickets.
- [Manhattan graph] Runs-per-over bar chart for each innings, with wicket overs highlighted.
- [Points table with NRR] Wins, losses, points and net run rate computed automatically from completed matches, sorted per tournament rules.
- [Tournament management] Create tournaments, register teams and players, generate fixtures, record toss and results.
- [Undo and corrections] Every ball is an event in an append-only log, so undo replays the innings correctly instead of patching numbers.
What is included
- Scoring engine source code with cricket-rules documentation
- Touch-friendly scorer UI and live viewer screens
- Tournament manager (teams, fixtures, points table)
- Database schema for tournaments, matches and ball events
- Sample tournament dataset for the viva demo
- Project report PDF (background, scoring-logic design, NRR math, methodology)
- PPT presentation for final review
- Viva Q&A preparation document (event sourcing, cricket rules encoding, NRR, offline sync)
Limitations & prerequisites
- DLS (rain-rule) calculations are not included — interrupted matches are recorded as decided by the organizer.
- Player statistics are match-level aggregates; career analytics across seasons is future scope.
- The engine implements standard limited-overs rules; unusual local rules need configuration.
- Live viewer screens need network access to the scoring device; the scorer itself works offline.
- Umpire decisions (no-ball calls, wide judgments) are entered by the scorer — the app does not adjudicate.
Frequently Asked Questions
How does undo work without corrupting the score?
Every ball is stored as an immutable event. Undo removes the last event and the engine replays the log from scratch, so the derived score, strike and overs are always consistent.
How is net run rate calculated?
Standard formula: (runs scored / overs faced) minus (runs conceded / overs bowled) across the tournament, with the usual handling of all-out innings counting full overs. It updates automatically after each match.
Can two people view the live score?
Yes — viewer screens connect over WebSocket and update within about a second of each ball on a local network.
Does it work without internet at the ground?
The scorer UI runs fully offline in the browser; results sync to the server and viewers when connectivity returns.
Which formats are supported?
Any limited-overs format with configurable overs per innings and bowler over limits — T20, 30-over and similar college formats.
Is this project suitable for a final-year project?
Yes — for Computer Science, IT and Web Development programs. Event-sourced state, real-time updates and a genuinely usable sports tool make it strong viva material. Suitable for B.E./B.Tech final-year projects in Computer Science, IT and Web Development.
Components & software requirements
- HTML, CSS and JavaScript (touch-first scorer UI)
- Node.js with Express (tournament API)
- SQLite (tournaments, matches, ball-by-ball event log)
- WebSocket live updates to viewer screens
- Event-sourced scoring engine (replayable innings log)
- Puppeteer (printable scorecard export)
- Docker (one-command deployment)
Delivery information
Built-to-order project. Delivery timeline is shared after order confirmation based on current queue.
Support terms
Complete documentation, setup guide, and viva preparation included. Support for setup and explanation provided.
Download free synopsis (PDF)
Enter your name and WhatsApp number — the synopsis PDF downloads immediately. We may send occasional project updates on WhatsApp; no spam.