yagnikbarasiya2306@gmail.com

Case study · 02

Innings pro

An offline-first cricket scorer for Android and iOS built in Flutter. Set up a match, squads and toss, score every ball with one tap, check the full scorecard and share the result as an image — with no account and no signal needed. Everything is stored on the device in SQLite.

Role
Flutter developer — app, data layer and store release
Platform
Android & iOS app
Year
2026
Three InningsPro screens: the welcome screen, live ball-by-ball scoring and a match result

The challenge

Local cricket is scored on paper or in apps that need an account and a signal — often missing at the ground. The client wanted a scorer that opens and works anywhere, takes one tap per ball, and turns a finished match into a result worth sharing.

What I built

  1. 01

    Match setup wizard

    Create a match, pick the overs, add both squads (reusing saved teams), record the toss and officials — a step-by-step flow driven by GoRouter.

  2. 02

    Ball-by-ball scoring

    A scoring pad for runs, boundaries, wickets and extras, with the current over, batters, bowler figures and run rate always on screen, and undo for any ball.

  3. 03

    Scorecards and results

    Full batting and bowling cards per innings, built from the ball log, and a result screen with the margin, top scorer and best bowling figures.

  4. 04

    Shareable result card

    The result renders to an image off screen and shares to WhatsApp or anywhere else, with the match title, scores and standout performances.

  5. 05

    Offline by design

    Drift and SQLite are the single source of truth for matches, squads and balls. There is no server or sign-in; the only network traffic is consent-gated ads.

Screens

  • Live scoring screen showing 142 for 7 after 12.3 overs, current batters and bowler, and the scoring pad
    Ball-by-ball scoring
  • Scorecard with batting figures for Parkview Strikers, 170 for 7 in 13 overs
    Full scorecard
  • Result screen: three-wicket win for Parkview Strikers with 42 balls to spare, top score and best figures
    Match result
  • InningsPro welcome screen: Every ball in the book, with a start scoring button
    Welcome screen
  • Shareable result card for the Riverside Cup final: three-wicket win for Parkview Strikers, both scores, top score and best figures
    Shareable result card

    Tech stack

    • Flutter
    • Dart
    • Bloc
    • GoRouter
    • Drift
    • SQLite
    • Google Mobile Ads

    Outcome

    • Works entirely offline — no account, no API and no match data leaving the device.
    • Clean Flutter architecture with Bloc, GoRouter and custom lint rules that enforce the project’s conventions.
    • Unit, bloc, widget and migration tests, plus a device smoke test, run through one quality gate.

    Next case study

    Fifteen flowers

    Motion-led catalogue site

    Get in touch

    Open for freelance projects, contract roles and collaborations — mobile apps and full-stack products in particular. WhatsApp gets the fastest reply.

    Based in
    Rajkot, Gujarat, India
    Elsewhere