A Swift library that simplifies generating haptic feedback vibrations on iOS devices.
TapticEngine is a Swift library that generates haptic feedback vibrations on iOS devices. It wraps Apple's native UIImpactFeedbackGenerator, UISelectionFeedbackGenerator, and UINotificationFeedbackGenerator to provide a simple API for adding tactile responses to apps. It solves the problem of verbose or complex haptic feedback implementation by offering straightforward methods for impact, selection, and notification vibrations.
iOS developers using Swift who want to enhance their app's user experience with haptic feedback without dealing with low-level APIs. It's particularly useful for those building interactive UI elements, games, or productivity apps on iOS 10+.
Developers choose TapticEngine because it simplifies haptic feedback with a clean, intuitive API that reduces boilerplate code. Its key advantage is seamless integration with iOS's Taptic Engine, offering reliable vibrations and preparation methods to minimize latency.
TapticEngine generates haptic feedback vibrations on iOS device.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Wraps Apple's UIImpactFeedbackGenerator, UISelectionFeedbackGenerator, and UINotificationFeedbackGenerator into concise methods like TapticEngine.impact.feedback(.light), reducing boilerplate code for common haptic needs.
Covers all standard iOS haptic feedback styles, including light, medium, heavy impacts, selection, and success/warning/error notifications, as shown in the README's usage examples.
Includes prepare() methods to warm up the Taptic Engine ahead of time, minimizing feedback delay as recommended by Apple's guidelines for smoother user interactions.
Supports installation via Carthage and CocoaPods, with clear instructions in the README, and is compatible with Swift 4.0+ and iOS 9+ (with graceful fallback on iOS 10+).
Exclusively designed for iOS, making it unsuitable for cross-platform or Android development without additional libraries, which limits its use in broader mobile projects.
Only provides access to Apple's predefined haptic styles; developers cannot create or modify vibration sequences for unique feedback needs, as admitted by the wrapping of native generators.
While compatible with iOS 9+, the library does nothing on this version, offering no haptic feedback, which could be a critical flaw for apps supporting older iOS versions.