A golf counter app for iOS and Apple Watch that helps golfers track their rounds and scores.
- iPhone App: Main interface for creating new rounds and viewing past results
- Apple Watch App: Companion app for on-the-go score tracking during rounds
- Round Types: Support for half rounds (9 holes) and full rounds (18 holes)
- Score Tracking: Count and track individual hole scores
- Watch Connectivity: Seamless data synchronization between iPhone and Apple Watch
- Past Results: View and review previous golf rounds
- Real-time Updates: Live score updates using The Composable Architecture
- SwiftUI: Modern declarative UI framework
- The Composable Architecture (TCA): State management and app architecture
- WatchConnectivity: Communication between iPhone and Apple Watch
- CommonModel: Shared Swift Package for data models between targets
WhitePanda/
├── WhitePanda/ # iPhone app
│ ├── Scenes/
│ │ ├── Home/ # Main home screen
│ │ ├── Result/ # Score results view
│ │ └── PastResults/ # Historical rounds
│ └── Models/
│ └── iPhoneConnecter.swift # Watch connectivity
├── WhitePanda Watch App/ # Apple Watch app
│ ├── Scenes/
│ │ ├── Initial/ # Watch app entry point
│ │ ├── Counter/ # Score counting interface
│ │ ├── Round/ # Round management
│ │ └── FreeCounter/ # Free counting mode
│ └── Models/
│ └── WatchConnecter.swift # iPhone connectivity
└── CommonModel/ # Shared Swift Package
└── Sources/
├── RoundModel.swift # Golf round data model
└── RoundType.swift # Round type definitions
- Xcode 15.3.0 or later
- iOS 17.0+
- watchOS 10.0+
- Swift 5.10+
- Clone the repository
- Open
WhitePanda.xcworkspacein Xcode - Build and run the project
- iPhone: Launch the app and tap "Create New Round" to start a new golf round
- Apple Watch: The companion app will automatically sync and provide score tracking functionality
- During Play: Use the Apple Watch app to quickly increment scores for each hole
- After Play: Review your completed round and total score on either device
Current version: 0.1.0
Private repository - All rights reserved