- FlowExt is a Kotlin Multiplatform library, that provides many operators and extensions to Kotlin Coroutines Flow.
- FlowExt provides a collection of operators, Flows and utilities for Flow, that are not provided by Kotlinx Coroutine themselves, but are common in other Reactive Frameworks (rxjs, RxJava, RxSwift, rxdart, ...) and standards.
Kotlinx Coroutines Flow Extensions. Extensions to the Kotlin Flow library. Kotlin Flow extensions. Multiplatform Kotlinx Coroutines Flow Extensions. Multiplatform Extensions to the Kotlin Flow library. Multiplatform Kotlin Flow extensions. RxJS Kotlin Coroutines Flow. RxSwift Kotlin Coroutines Flow. RxJava Kotlin Coroutines Flow. RxJS Kotlin Flow. RxSwift Kotlin Flow. RxJava Kotlin Flow. RxJS Coroutines Flow. RxSwift Coroutines Flow. RxJava Coroutines Flow.
Author: Petrus Nguyễn Thái Học
0.x release docs: https://hoc081098.github.io/FlowExt/docs/0.x
Snapshot docs: https://hoc081098.github.io/FlowExt/docs/latest
- Create
- Intermediate operators
bufferCount
concatWith
startWith
flatMapFirst
exhaustMap
flattenFirst
flatMapConcatEager
mapEager
flattenEager
exhaustAll
mapIndexed
mapTo
mapToUnit
materialize
dematerialize
raceWith
ambWith
retryWhenWithDelayStrategy
retryWhenWithExponentialBackoff
retryWithExponentialBackoff
takeUntil
throttleTime
withLatestFrom
- Similar to RxJS bufferCount
- Similar to RxJava buffer
- Similar to RxJS concat
- Similar to RxJava concat
- Similar to RxJS defer
- Similar to RxJava defer
- Similar to RxJS interval
- Similar to RxJS NEVER
- ReactiveX docs: http://reactivex.io/documentation/operators/amb.html
- Similar to RxJava amb .
- Similar to RxJS race
- ReactiveX docs: http://reactivex.io/documentation/operators/range.html
- Similar to RxJS range
- ReactiveX docs: http://reactivex.io/documentation/operators/timer.html
- Similar to RxJS timer
- Similar to RxJS concatWith
- Similar to RxJava concatWith
- Similar to RxJS startWith
- Similar to RxJava startWith
- Similar to RxJS exhaustMap
- Similar to RxSwift flatMapFirst
- Similar to RxJS exhaustAll
- Similar to RxJava concatMapEager
- Similar to RxJS mapTo
- Similar to RxJS materialize
- Similar to RxJava materialize
- Similar to RxJS dematerialize
- Similar to RxJava dematerialize
- ReactiveX docs: http://reactivex.io/documentation/operators/amb.html
- Similar to RxJava ambWith .
- Similar to RxJS raceWith
- ReactiveX docs: http://reactivex.io/documentation/operators/takeuntil.html
- Similar to RxJS takeUntil
- RxMarbles: https://rxmarbles.com/#withLatestFrom
- Similar to RxJS withLatestFrom
... and more, please check out Docs 0.x/Docs snapshot.
allprojects {
repositories {
...
mavenCentral()
}
}
implementation("io.github.hoc081098:FlowExt:0.3.0")
implementation("io.github.hoc081098:FlowExt-jvm:0.3.0")
implementation("io.github.hoc081098:FlowExt-iosx64:0.3.0")
implementation("io.github.hoc081098:FlowExt-iosarm64:0.3.0")
implementation("io.github.hoc081098:FlowExt-iosarm32:0.3.0")
implementation("io.github.hoc081098:FlowExt-watchosx86:0.3.0")
implementation("io.github.hoc081098:FlowExt-watchosx64:0.3.0")
implementation("io.github.hoc081098:FlowExt-watchosarm64:0.3.0")
implementation("io.github.hoc081098:FlowExt-watchosarm32:0.3.0")
implementation("io.github.hoc081098:FlowExt-tvosx64:0.3.0")
implementation("io.github.hoc081098:FlowExt-tvosxarm64:0.3.0")
implementation("io.github.hoc081098:FlowExt-macosx64:0.3.0")
implementation("io.github.hoc081098:FlowExt-mingwx64:0.3.0")
implementation("io.github.hoc081098:FlowExt-linuxx64:0.3.0")
Snapshots of the development version are available in Sonatype's snapshots repository.
- Kotlin
allprojects {
repositories {
...
maven(url = "https://s01.oss.sonatype.org/content/repositories/snapshots/")
}
}
dependencies {
implementation("io.github.hoc081098:FlowExt:0.4.0-SNAPSHOT")
}
- Groovy
allprojects {
repositories {
...
maven { url "https://s01.oss.sonatype.org/content/repositories/snapshots/" }
}
}
dependencies {
implementation("io.github.hoc081098:FlowExt:0.4.0-SNAPSHOT")
}
MIT License
Copyright (c) 2021-2022 Petrus Nguyễn Thái Học