redux-kotlin icon indicating copy to clipboard operation
redux-kotlin copied to clipboard

Object-oriented Redux implementation in Kotlin, highly compatible with Android.

redux-kotlin

Download Build Status

Object-oriented Redux implementation in Kotlin.

  • redux-kotlin is the base module, this is a pure Kotlin module that contains the basic functionality of Redux.
  • redux-kotlin-base-implementation contains basic implementations of a store and a asynchronous version of the store. Since the Kotlin Coroutines are still experimental I used java classes for the implementation. It includes the base module.
  • redux-kotlin-android-extensions contains useful extensions for Android. This module includes the previous module.
  • redux-kotlin-rx-extensions contains extensions to enable RxJava2 usage. This module does not include but requires the base module.

Example

A sample Android application showcasing an architecture combining Redux and the Clean Architecture principles using these libraries can be found here.

Download

The libraries are available on jcenter via Maven, Gradle or Ivy.

Gradle:

dependencies {
    implementation 'net.attilaszabo.redux:redux-kotlin:{latest_version}'
    implementation 'net.attilaszabo.redux:redux-kotlin-implementation:{latest_version}'
    implementation 'net.attilaszabo.redux:redux-kotlin-android-extensions:{latest_version}'
    implementation 'net.attilaszabo.redux:redux-kotlin-rx-extensions:{latest_version}'
}

License

Licensed under the Apache License, Version 2.0.