GolfFoundation is a Swift library for managing data types relating to golf. It is used as a building block of Golf Quartz, the Apple Watch (+ iPhone) app for golfers, and Golf Quartz Mapper, the course mapping app for Mac. The goal of this library is to let users of these apps freely use their data as well as enabling other apps to build upon this open representation and enable new uses.
Provided data types include:
GolfMap
: A general golf map representation that includes GPS information about tees and greens for each hole (and other elements) organised into hole groups. Also includes the capability of defining data variants for each hole such as 'winter green' or personalized aiming targets based on player distance.Course
: A selection of played holes derived from the golf map, typically a 18-hole subset.Game
: A record of multi-player per-hole scores as well as indivudual stroke locations (GPS) and overall statistics like number of putting strokes, hit fairways, and greens in regulation.
As well as a number of other supporting types.
Golf maps and game types support saving to/loading from JSON, which it makes it possible to post process the files generated by the Golf Quartz app. The open JSON format also enables processing them outside of the Swift development ecosystem.
More information about Golf Quartz can be found on Creaceed's website or on the App Store and Mac App Store.