A Windows desktop bingo stage management application built with .NET 9, Windows Forms, and Blazor. Runs a local web UI inside a native window — no browser required.
Video Demo: https://youtu.be/kpMoYGRg14c
- Number board — click any of the 75 balls to call or uncall it; last called shown in a large strip with the nine most recent calls below
- Roll Random — picks a random uncalled number; when a win pattern is active it only rolls from columns still needed to complete the pattern
- Configurable win patterns — built-in templates (Traditional, X, T, Ring Around Free, Blackout) or draw a fully custom 5×5 pattern
- Traditional mode — automatically cycles the win-pattern display between diagonal, horizontal, and vertical lines every 3 seconds so players know any single line wins
- Reset — clears all called numbers and deals fresh virtual cards to any connected players; slides, sponsors, and settings are preserved
- Opens in a separate window — drag it to a second monitor or projector
- Animated ball reveal, full 5×15 called-number board, win-pattern mini card, and scrolling sponsor ticker
- Sponsor ticker is hidden when no sponsors are configured, and the board fills the full screen
- Fullscreen button (hides itself once active)
- Rich-text slides (bold, font size, bullet points, images) shown full-screen on the display before or between games
- Built-in slide templates (welcome, rules, prizes, break, etc.)
- Slides advance automatically every 30 seconds and loop
- QR codes on each slide — if the tunnel is active, a scannable "Get a bingo card" QR and/or a "View live" QR appear in the bottom-right corner of the slideshow overlay
- Cover screen with a Start Game button and an optional countdown timer (5 s – 1 min)
- Type a player's 24 card numbers to check instantly whether they have bingo under the active pattern
- Load by Card ID — if virtual cards are enabled, type the 6-character card ID to auto-fill the grid in one step
- Fireworks launch on the display automatically when a winner is confirmed
- One-click setup via Settings → Remote Sharing — downloads
cloudflared(~30 MB, one-time) and creates a publictrycloudflare.comURL with no port forwarding or router changes - Live display QR — shows a scannable code on the display screen so anyone in the room can follow the board on their phone
- Virtual bingo cards — players scan a QR code to get their own unique digital card (1 or 2 cards per device); cards are saved to the device and persist between sessions
- Caller PIN — a randomly generated 6-digit PIN protects the caller control page from remote access; the display and card pages are always public
- Tunnel state, PIN, and all options are remembered across restarts
- Enter one sponsor name per line, or paste an image URL (
.jpg/.jpeg/.png/.svg) to display a logo in the marquee - Show on live cards — optional setting to display the sponsor marquee at the bottom of players' virtual bingo cards
- Runs as a tray icon; double-click or use Open to bring the caller window to the front without opening a duplicate
- Reset State resets the current game from the tray menu
- Closing the caller window or choosing Exit from the tray shuts down all windows and the tunnel cleanly
- Checks GitHub Releases on startup; an update badge appears in the toolbar when a newer version is available
- Windows 10 or later (x64)
- No additional runtime required — the installer bundles everything
- An internet connection is required only if the Cloudflare Tunnel or update checker features are used
Download the latest BingoStage-Setup-*.exe from the Releases page and run it. The installer adds a Start Menu shortcut and an optional desktop icon.
dotnet publish BingoCaller.csproj # project file keeps its name -c Release -r win-x64 --self-contained true -p:PublishSingleFile=true -o publish
Push a tag in the format vYYYYMMDD.HHMM to trigger the GitHub Actions release workflow, which builds the app, packages an Inno Setup installer, and attaches it to a GitHub Release automatically.
git tag v20260603.1430
git push origin v20260603.1430
MIT — see LICENSE.