Codementor Events

How and why I built Cricket Scoring Application

Published May 23, 2019
How and why I built Cricket Scoring Application

About me

I am Sagar Podilapu, founder, CTO of Sidabs Labs, Bangalore, India. Ever since I was a kid, I was so attracted to the game of cricket. I have been playing cricket from the last 20 years. I wanted to learn a technology and I wanted to choose an application. That is when I felt to make an application that makes scoring easier while playing a game of cricket.

The problem I wanted to solve

Cricket scoring is one of the most complex of all games scoring. It has so many permutations and combinations that it becomes a tedious task for the scorer to do it on a paper. They have to do multiple manual calculations to calculate the net run rate, current run rate, the runs scored by each batsmen, the wickets taken by each bowler etc. Hence, I have decided to make a web app which can make the scoring with a click of a button.

What is Cricket Scoring Application?

CrikScore, the name I gave to the app, enables you to add a tournament, add a venue, add teams to the tournament, group teams randomly based on an algorithm. On the day of the match, the scorers can login, create match, add players and boom, can quick off scoring the match as it is going on. The app also gives a full scorecard, ball by ball score, graphs that can help visualise what is going on in the match.
Screen Shot 2019-05-20 at 10.21.41 AM.png

Tech stack

I used ReactJS as the frontend framework and used firebase for the backend. I never wanted to write an API as I am doing it alone. Also, having 2 tech stacks will only increase my effort and time, hence decided to stick with writing only React + Redux code. Firebase gives us the authentication, storage, real time database and cloud functions that can help us running our backend.

The process of building Cricket Scoring Application

It was a straightforward journey for me, I usually first writes all the code for UI, then logic and then storing in the firestore database. It took roughly 2 months to finish the entire app and I feel there i still lot more can be done.

Challenges I faced

As I explained, there was no challenge when it comes to the tech stack, but there were challenges in making the logic behind cricket scoring. As a process, the toughest job would be the JSON structure of the data you are supposed to store in the firestore. Once you get the structure right, you can then easily start developing the application. I had to redo the structure several times to get it right and finally I am happy that the app came really good.

Key learnings

Well, the key learnings are, don't panic when something goes wrong, focus when you are facing issues, always have a fresh perspective to a problem. Apart from that, I learned a lot about ReactJS, firebase cloud functions, firebase firestore structure and so on.

Tips and advice

Well, nothing is impossible when you are motivated, focussed and stubborn, when it comes to learning. Keep going for the impossible and one day you will make it possible.

Final thoughts and next steps

I am looking to expand the application and see if i can introduce IOT into the scoring. Since cricket is an on field game, including IOT makes it far more easier to score or display the score back.

Discover and read more posts from Sagar Podilapu
get started
post comments1Reply
ANKIT RAJ PRASAD
4 years ago

Is it open source? Would love to see the pattern implemented here.