All work

ENGINEERING CASE STUDY / REAL-TIME TOURNAMENT PLATFORM

Eid Cricket Fest

Eid Cricket Fest is my strongest backend systems project. It combines persistent tournament data with real-time scoring, authenticated APIs, database migrations, integration testing, health checks, and CI-oriented development.

01 / CONTEXT

The problem to solve.

Provide a unified platform for managing tournaments, teams, drafts, fixtures, live cricket scoring, scorecards, standings, awards, and player history while keeping live match clients synchronized.

Explore all 12 features
  • Tournament management
  • Teams and player drafts
  • Fixtures
  • Live cricket scoring
  • Scorecards
  • Standings
  • Awards
  • Player history
  • JWT-based authentication
  • Live WebSocket/STOMP updates
  • Swagger/OpenAPI in development
  • Health, readiness, and liveness endpoints

02 / UNDER THE SURFACE

A connected system.

01Next.jsMatch interface
02Spring BootAuthenticated API
03PostgreSQLTournament data
04WebSocket / STOMPRevision-aware updates
frontend
Next.js public frontend
backend
Spring Boot 4.1.1 / Java 25
database
PostgreSQL
database migrations
Flyway
realtime
WebSocket/STOMP
authentication
JWT
testing
Backend unit/integration testing with Testcontainers
containers
Docker
ci
GitHub Actions

03 / THE DETAILS MATTER

Engineering in practice.

  • Integration tests start PostgreSQL automatically through Testcontainers.
  • Live match updates are published on /topic/matches/{matchId}.
  • Live payloads carry inningsId and scoreRevision so clients can ignore stale messages.
  • Revision ordering resets when the current innings changes, reducing stale real-time state problems.
  • Backend exposes actuator health, readiness, and liveness endpoints.
  • Repository includes deployment notes and CI workflows.

04 / DECISIONS THAT COUNT

Working through the hard parts.

01

Real-time state consistency

Use WebSocket/STOMP payload revisions per innings so clients can reject stale score updates.

02

Repeatable database integration testing

Run integration tests against automatically provisioned PostgreSQL containers using Testcontainers.

03

Schema evolution

Use Flyway database migrations instead of relying on unmanaged schema changes.

NEXT IN THE NOTEBOOK

ShopyOnline

NEXT CHAPTER

Good things start
with a conversation.

Open to internships, junior engineering roles, and research opportunities.