A football scoreboard app built with .NET MAUI that can be controlled through Bluetooth LE. Great for little league games.
| Main Menu | Scoreboard | Referee Card |
|---|---|---|
![]() |
![]() |
![]() |
- LED-style scoreboard display with color-coded values (red game clock, amber play clock, green possession, yellow scores)
- Bluetooth LE connectivity — host a scoreboard on a tablet and control it from a phone
- Standalone mode for single-device use
- Floating referee card panel — swipe up for quick-tap score buttons (+1, +2, +3, +6, -1) per team
- Full screen timer for half time countdowns or play clock display
- Customizable game settings
- Team names
- Game & play clock durations
- Number of downs (configurable for little leagues)
- Max timeouts per team
- Default yards-to-go
- Save/load custom rule sets
- Team scores
- Game clock (period timer)
- Play clock
- Current quarter/period
- Current down
- Yards-to-go
- Timeouts remaining
- Ball possession indicator
| Library | Purpose | Documentation |
|---|---|---|
| CommunityToolkit.Mvvm | MVVM source generators (ObservableObject, RelayCommand) |
docs |
| Shiny.Maui.Controls | FloatingPanel, TableView, and UI controls | docs |
| Shiny.Maui.Shell | Shell navigation with DI-integrated page/viewmodel registration | docs |
| Shiny.BluetoothLE | BLE central/client for connecting to a hosted scoreboard | docs |
| Shiny.BluetoothLE.Hosting | BLE peripheral/server to host a scoreboard for remote control | docs |
The scoreboard screen is designed for tablets in landscape view. It sets up a Bluetooth LE host using Shiny.BluetoothLE.Hosting that allows a second device to connect and control the scoreboard clocks and scores remotely.
You can also control everything by tapping directly on the scoreboard — tap scores, clocks, quarter, down, or yards to change them. Swipe up on the Referee Card at the bottom for quick-add score buttons.


