- July 26, 2025
- Mins Read
Kommander is a Swift library to manage the task execution in different threads. Through the definition a simple but powerful concept, Kommand.
Inspired on the Java library Kommander from Wokdsem.
Kommander is available through CocoaPods. To install it, simply add the following line to your Podfile:
pod ‘Kommander’
For Swift 3 compatibility use:
pod ‘Kommander’, ‘~> 0.7’
For Swift 2 compatibility use:
pod ‘Kommander’, :git => ‘https://github.com/intelygenz/Kommander-iOS.git’, :tag => ‘0.3.0-swift2’
For Objective-C compatibility use:
pod ‘Kommander’, :git => ‘https://github.com/intelygenz/Kommander-iOS.git’, :tag => ‘0.2.3-objc’
github “intelygenz/Kommander-iOS”
dependencies: [
.package(url: “https://github.com/intelygenz/Kommander-iOS.git”)
]
Kommander().make {
// Your code here
}.execute()
Kommander().make {
// Your code here
}.execute(after: .seconds(2))
Kommander().make {
return “Your string”
}.success { yourString in
print(yourString)
}.execute()
Kommander().make {
throw CocoaError(.featureUnsupported)
}.error { error in
print(String(describing: error!))
}.execute()
Kommander().make {
throw MyError.error
}.error(MyError.self) { error in
// error is MyError type.
}.execute()
let kommand = Kommander().make { () -> Any? in
// Your code here
}.success { result in
// Your success handling here
}.error { error in
// Your error handling here
}.execute()
kommand.cancel()
kommand.retry()
let kommand = Kommander().make { () -> Any? in
// Your code here
}.error { error in
// Your error handling here
}.retry { error, executionCount in
return executionCount < 2
}.execute()
Kommander(deliverer: Dispatcher = .current, executor: Dispatcher = .default)
Kommander(deliverer: Dispatcher = .current, name: String, qos: QualityOfService = .default, maxConcurrentOperations: Int = .default)
Kommander.main
Kommander.current
Kommander.default
Kommander.userInteractive
Kommander.userInitiated
Kommander.utility
Kommander.background
CurrentDispatcher()
MainDispatcher()
Dispatcher(name: String, qos: QualityOfService = .default, maxConcurrentOperations: Int = .default)
Dispatcher.main
Dispatcher.current
Dispatcher.default
Dispatcher.userInteractive
Dispatcher.userInitiated
Dispatcher.utility
Dispatcher.background
NavigationKit is a lightweight library which makes SwiftUI navigation super easy to use. 💻 Installation 📦 Swift Package Manager Using Swift Package Manager, add ...
An alternative SwiftUI NavigationView implementing classic stack-based navigation giving also some more control on animations and programmatic navigation. NavigationStack Installation ...
With SwiftUI Router you can power your SwiftUI app with path-based routing. By utilizing a path-based system, navigation in your app becomes ...
This package takes SwiftUI's familiar and powerful NavigationStack API and gives it superpowers, allowing you to use the same API not just ...