6 Racket Sport Scores w/ Match Analysis
· vv1.0.11
About
Web details: https://nioquant.com/racketscore
Guide: https://nioquant.com/racketscore/#guide
Self Hosting Docs (Docker): https://nioquant.com/racketscore/#selfhost
RacketScore is the most complete racket sports tracker available for Garmin watches:
- Compete in a padel tournament, grind through tennis sets, or play a casual game of pickleball - RacketScore handles the score, tracks your performance, and streams everything live to your phone or browser in real time
- No more shouting "what's the score?" across the court
- No more losing track of who's serving
- No more forgetting how you played last week
- RacketScore keeps everything on your wrist and in the cloud
Six Sports. One App.
Full scoring support for Padel, Tennis, Pickleball, Badminton, Squash, and Table Tennis, each with the correct rules, tiebreak logic, and game modes built in. Switch sports without switching apps.
Real-Time Multiplayer via ANT+
Host a match on your watch and instantly share the live score with every player on the court. Teammates and opponents see the score update on their own Garmin watches in real time over ANT+, no phone, no internet, no setup required. Everyone feels the vibration when a set is won.
Swing Analytics That Actually Mean Something
RacketScore uses your watch's accelerometer to detect every swing, forehands, backhands, smashes, and measures the G-Force and estimated Power output (in Watts) for each shot. See your average and peak power in the activity summary. Know if you're hitting harder than last week.
Live Web Dashboard
A self-hosted web dashboard streams live scores from your watch to any browser via WebSocket. Follow matches from the sideline, from home, or from anywhere. Live data is captured in real time during the match. Once the match ends, sync it manually to the dashboard for the full detailed breakdown with complete stats, point history, and performance trends.
Self-Hosted. Your Data Stays Yours.
The backend runs entirely on your own machine or home server via Docker. No subscriptions, no third-party cloud, no data sharing. Set it up once and it runs forever.
Pre-built Docker images are available on the GitHub Container Registry:
- API: https://ghcr.io/francudina/racketscore-api
- Web: https://ghcr.io/francudina/racketscore-web
- Self Hosting (Docker): https://nioquant.com/racketscore/#selfhost
Deep Stats & History
Every match is stored with full detail: set scores, point history, heart rate, calories, play time, serve win %, return win %, swing count, power trends, and more. Browse your match history, track performance over time, and compare sessions across devices and players.
Your Data, Always Safe
Full database snapshots can be created and restored directly from the dashboard. Device backups store every match uploaded from your Garmin watch and can be restored individually. Never lose a match, a stat, or a season of progress.
Built for Serious Players
Singles and doubles support. Golden Point mode for padel. Tiebreak configuration per match. Undo last point with a single gesture. Server tracking for Pickleball and other serve-based sports. Link your Garmin device to a player profile and track stats per player. Set weekly and monthly goals for matches played, win rate, play time, and more.
Watch Settings
RacketScore includes a settings menu on the watch to control how the app records, displays, and connects.
Cloud Sync:
Manage connection to your self-hosted server. Includes pairing with the server, manual sync of matches, live score broadcasting, and backup/restore of watch data.
Data Fields:
Customize the four match screen corner fields with stats.
Activity Recording:
Enable or disable saving matches as Garmin activities.
Point Reasons:
Optionally record why each point was won (winner, forced error, unforced error).
Clear App Data:
Reset all app data on the watch (matches, settings, stats). Bac
What's new
Version v1.0.11:
Web/Api:
- Save and Share buttons now always visible in the Share as Image dialog regardless of card format or size
Version v1.0.10:
- Live HR chart now shows instantaneous heart rate per point with running max/avg computed from received data
- Power chart shows last swing power per point with gradient area fill
- Swings per point chart switched to area style with smooth curve and no dots
- HR and Power charts visible on saved session timeline after syncing from watch
Version v1.0.9:
Live Scoreboard
- Score state labels (Deuce, Golden Point, Silver Point, Advantage, Tiebreak) now appear above the ":" separator
- Assign players to both team slots from the live scoreboard dropdown; selections persist and auto-populate the match page after watch sync
- Doubles pick P1 + P2 per side from the same edit dialog
Score Display
- Team names in the scoring table no longer truncate; doubles shows both players on separate lines
Bug Fixes
- Back button on the match summary screen now shows Save / Save & Continue / Discard instead of going directly to main menu
Version v1.0.8:
Change Server
- Change serving player mid-match from the in-game menu (long-press UP) or pause menu; syncs to paired watches and cloud
- Rotation order is preserved after the change
Bug Fixes
- 3rd set in best-of-3 showed raw counts (1, 2, 3) instead of 15, 30, 40 after a 1:1 split
- Super tiebreak: defaults to off, set score recorded correctly (e.g. 7:4), match ends after win, menu labels improved
- Removed "Resume Later" from the pause menu
New Devices
- Forerunner® 170 / 170 Music
- Forerunner® 70
Version v1.0.7:
Mobile Live Scoreboard
- Fullscreen scoreboard redesigned for portrait mode: scores stack vertically with team names above and below
- Landscape mode no longer cuts off scores on iPhone
- Pinch-to-zoom re-enabled in fullscreen view
Watch Pairing
- Pairing error messages are now more specific: "Add device in web app first" vs "Wrong password"
- Live sync stops retrying automatically when the server returns an auth error
- Changing the server URL now clears the paired state so re-pairing is required
- Clear All Data correctly resets the paired state while keeping the server address
Player Assignment
- Singles matches now allow assigning players to opponent slots (P3 and P4) in Player Statistics
Version v1.0.6:
- Server Config now shows the active server address, phone URL or IP depending on selected config source
Version v1.0.5:
- Server URL can now be configured from the Connect IQ app on your phone
- Supports full URLs including domain names, ideal for cloud-hosted setups
- Switch between phone and watch config source anytime from Settings - Cloud Sync - Server Config - URL Config
Version v1.0.4:
- Added HTTP/HTTPS protocol toggle in Settings - Cloud Sync - Server Config
- Fixes "Invalid URL" error when pairing with public internet servers