Simple and easy haptic generation in iOS.
- iOS 13.0+ / macOS Catalyst 13.1+
- Swift 5.8+
Add SimpleHaptics to your project using Swift Package Manager:
-
In Xcode, select File → Add Package Dependencies...
-
Enter the repository URL:
https://github.com/notbd/SimpleHaptics.git -
Choose the version or branch you want to use
-
Click Add Package
Alternatively, add it to your Package.swift file:
dependencies: [
.package(url: "https://github.com/notbd/SimpleHaptics.git", from: "0.2.0")
]import SimpleHapticsgenerateTask(_:)is the most common way to quickly generate haptics in a synchronous context:
// in a synchronous context
SimpleHaptics.generateTask(.heavy)- The task can be cancelled if needed:
let hapticTask = SimpleHaptics.generateTask(.light)
// can be cancelled later if needed
hapticTask.cancel()- Alternatively, use
generate(_:)in an asynchronous context:
// in an async context
Task {
await SimpleHaptics.generate(.success)
}.selection- A gentle tap to indicate selection changes
.success- A positive confirmation feedback.warning- A warning or attention-drawing feedback.error- An error alert feedback
.light.medium.heavy.soft.rigid
- Quickly generate Success Feedback
func saveData() {
// ... save your data
// generate a success feedback after saving
SimpleHaptics.generateTask(.success)
}- Generate Haptic Feedback after a delay
var body: some View {
List {
// ... your list items
}
.onChange(of: loadStatus) {
Task {
try? await Task.sleep(nanoseconds: UInt64(0.1 * 1_000_000_000))
await SimpleHaptics.generate(.light)
}
}
}