Kovenant
The easy asynchronous library for Kotlin. With extensions for Android, RxJava, JavaFX and much more.
task { "world" } and task { "Hello" } success {
    println("${it.second} ${it.first}!")
} 
Please refer to the Kovenant site for API usage and more.
Getting started
Build against Kotlin: 1.0.3. Source and target compatibility is 1.6
Gradle
dependencies {
    compile 'nl.komponents.kovenant:kovenant:3.3.0'
} 
Maven
<dependency>
	<groupId>nl.komponents.kovenant</groupId>
	<artifactId>kovenant</artifactId>
	<version>3.3.0</version>
</dependency> 
Android Demo app
Checkout the Android Demo App on Github.
Artifacts
Kovenant has been structured in sub projects so you can cherry pick what you need.
| artifact | description | 
|---|---|
| kovenant | Container artifact that consists of kovenant-core,kovenant-combine,kovenant-jvmandkovenant-functional | 
| kovenant-core | The core of kovenant. Provides the API and default implementations | 
| kovenant-combine | Adds combine functionality that keep everything strongly typed | 
| kovenant-jvm | Support for converting between Executors and Dispatchers | 
| kovenant-ui | Support for UI frameworks that need UI work to operate on a specific process | 
| kovenant-rx | Add promise support to Rx | 
| kovenant-android | Extensions for Android specific needs | 
| kovenant-jfx | Extensions for JavaFX specific needs | 
| kovenant-disruptor | LMAX Disruptor work queues | 
| kovenant-progress | Progress configuration helper | 
| kovenant-functional | Functional Programming idiomatic additions | 
Issues
Issues are tracked in Youtrack
Release notes
See Changelog for release notes
Slack
Join the #kovenant channel on Kotlin Slack.
More Kotlin libraries
Check out Awesome Kotlin
 JarCasting
 JarCasting