Skip to content

pulse is a swift package designed to efficiently debounce values

License

Notifications You must be signed in to change notification settings

space-code/pulse

Repository files navigation

pulse

License Swift Compatibility Platform Compatibility CI

Description

pulse is a Swift package designed to efficiently debounce values.

Usage

import Pulse

let debouncer = Debouncer<Int>(duration: .milliseconds(200)) { value in 
    print(value)
}

debouncer.emit(1)
debouncer.emit(2)

Requirements

  • iOS 16.0+ / macOS 13.0+ / watchOS 9.0+ / tvOS 16.0+ / visionOS 1.0+
  • Xcode 16.0
  • Swift 6.0

Installation

Swift Package Manager

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"))
]

Communication

  • 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.

Contributing

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!

Author

Nikita Vasilev, [email protected]

License

pulse is available under the MIT license. See the LICENSE file for more info.

About

pulse is a swift package designed to efficiently debounce values

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published