pulse is a Swift package designed to efficiently debounce values.
import Pulse
let debouncer = Debouncer<Int>(duration: .milliseconds(200)) { value in
print(value)
}
debouncer.emit(1)
debouncer.emit(2)- iOS 16.0+ / macOS 13.0+ / watchOS 9.0+ / tvOS 16.0+ / visionOS 1.0+
- Xcode 16.0
- Swift 6.0
The Swift Package Manager is a tool for automating the distribution of Swift code and is integrated into the swift compiler. It is in early development, but pulse does support its use on supported platforms.
Once you have your Swift package set up, adding pulse as a dependency is as easy as adding it to the dependencies value of your Package.swift.
dependencies: [
.package(url: "https://github.com/space-code/pulse.git", .upToNextMajor(from: "1.0.0"))
]- If you found a bug, open an issue.
- If you have a feature request, open an issue.
- If you want to contribute, submit a pull request.
Bootstrapping development environment
make bootstrap
Please feel free to help out with this project! If you see something that could be made better or want a new feature, open up an issue or send a Pull Request!
Nikita Vasilev, [email protected]
pulse is available under the MIT license. See the LICENSE file for more info.