A machine learning framework for iOS that records location and motion data and detects user activity types like walking, cycling, and transport modes.
LocoKit is a location, motion, and activity recording framework for iOS. It integrates Core Location and Core Motion data to provide filtered, smoothed samples and uses machine learning for accurate activity detection, enabling efficient, all-day recording with minimal battery impact.
iOS developers building fitness, travel, or life-logging applications that require continuous location and activity tracking. It is also suitable for developers needing high-level timeline items like Paths and Visits with better accuracy than Core Location's CLVisit.
Developers choose LocoKit for its unified approach to location and motion tracking, leveraging machine learning for precise activity detection (including specific transport types) while managing energy use to allow all-day recording without significant battery drain.
Location, motion, and activity recording framework for iOS
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Implements low-power sleep modes and automatic energy management, enabling all-day location tracking without significant battery drain, as highlighted in the README's features for energy use.
Uses machine learning to accurately classify activities like walking, running, and specific transport types such as car and train, offering improved detection over Core Motion.
Automatically produces human-readable Path and Visit items with higher accuracy and detail than Core Location's CLVisit, simplifying app logic for life-logging scenarios.
Combines Core Location and Core Motion data into filtered and smoothed LocomotionSamples, reducing the complexity of handling raw sensor inputs.
Background location monitoring requires additional configuration and understanding of iOS permissions, as indicated by the separate documentation linked for background monitoring.
Event observing relies on SwiftNotes for simplified code, adding an extra dependency that developers must manage if not already using it.
The framework focuses on local SQL storage, so implementing real-time cloud sync or server-based analysis requires additional development effort.