CompleteRedux 2.0.0

CompleteRedux 2.0.0

Maintained by Hai Pham.



  • By
  • Hai Pham

CompleteRedux

License: MIT CocoaPods Build Status Coverage Status

Redux implementations for iOS clients.

Motivation

As much as I love RxSwift in development, it sometimes creates lots of noises and can prove challenging to unit-test. Having spent the past year as a React.js developer, I was looking forward to using Redux in iOS applications as well, but the current, most popular implementation of Redux is lacking in several key aspects as compared to the original redux/react-redux source:

  • View controllers still know too much - in React.js, we have the wonderful connect function that invokes mapState/DispatchToProps, but here we are stuck with calling store.dispatch(Action). The views are not supposed to know what actions to dispatch;
  • Subscription and unsubscription are still done manually with store.(un)subscribe(self) - if I do not want to use a singleton, what should I do?
  • Asynchronous work handling is still muddy. Over at React.js we run redux-saga or redux-thunk, but no such things exist here;

Main features

This library provides:

Documentation

For a deeper look into how this works, check out the full documentation, the sample app and some articles I wrote: