Real-time run tracking. An Apple Watch app streams GPS, heart rate, pace, and elevation data to a live web dashboard with a 3D map, stats, km splits, and cheers.
The web app (web/) is a Next.js app that displays a live 3D Mapbox map, real-time stats, km splits, and cheers. It uses Specific for infrastructure (PostgreSQL with Electric SQL sync).
- Specific:
curl -fsSL https://specific.dev/install.sh | sh - A Mapbox access token
- Google OAuth client ID and secret (for authentication)
cd web
npm install
specific devYou'll be prompted to enter your Mapbox token, Google OAuth credentials, and other config on first run. Specific handles the database, auth secrets, real-time sync, and dev server — all configured in specific.hcl.
cd web
specific deployNote that this requires a Specific account.
The watch app (watch/) tracks workouts using HealthKit and CoreLocation, streaming GPS coordinates, heart rate, pace, and elevation in real time to the web dashboard.
- Xcode
- Apple Watch (or simulator)
- Copy the example config files:
cd watch/LiveRun
cp Debug.xcconfig.example Debug.xcconfig
cp Release.xcconfig.example Release.xcconfig-
Edit
Debug.xcconfigand setAPI_BASE_URLto thelocalhost:{PORT}URL printed byspecific devinweb/. -
Edit
Release.xcconfigand setAPI_BASE_URLto your production URL (available after runningspecific deployinweb/). -
Open
watch/LiveRun/LiveRun.xcodeprojin Xcode, select your Apple Watch target, and run.
