Four Golf is small on purpose. Contributions that keep it that way are welcome.
- Bug fixes
- Accessibility improvements
- Legibility and layout improvements for the watch screen
- Small scoring improvements, with an issue opened for discussion first
- watchOS API improvements as the platform evolves
Four Golf's constraints are not gaps to fill — they are decisions. The following are out of scope:
- Analytics, tracking, or telemetry of any kind
- Advertising or sponsored placements
- Paid features, premium tiers, or paywalls
- Features designed to increase app opens or session length
- Social features beyond what is needed to play a round together
- GPS shot tracking, course mapping, or aerial views
- Anything that requires a server account or login
- Anything that breaks the app's ability to function without a network connection
For non-trivial changes, open an issue first and describe what you want to do and why. This avoids wasted effort if the change is out of scope.
For small bug fixes, a pull request without a prior issue is fine.
Fork the repo, make your changes on a branch, and open a pull request against main.
Match the style of the existing code. The project uses SwiftUI and follows standard Swift conventions. There is no SwiftLint configuration — if in doubt, look at how the surrounding code is written.
When filing a bug, include:
- Apple Watch model (e.g. Series 9, Ultra 2)
- watchOS version
- Scoring format in use (strokes or points, singles or team)
- What happened
- What you expected
A short reproduction is more useful than a long one.