The job
Match directors needed scoring that works in the office and on the range. Results, seasons, and a public portal are one product. The firing line is another problem: the network is not reliable, and the stage still has to be scored.
What it does
Organisations run matches, squadding, and seasons. Scores can be normalised so a match winner takes the match’s point value and everyone else scales against them, or kept as raw totals. A public portal publishes matches and results. Sponsors and fees sit with the organisation, not in a side spreadsheet.
How it runs
The web platform is Laravel. The range companion is Android: Kotlin, Jetpack Compose, and Room, with a scoring screen bundled in the app so a stage can keep going when the connection drops.