ReSwift
Unidirectional Data Flow in Swift - Inspired by Redux (by ReSwift)
RxSwift
Reactive Programming in Swift (by ReactiveX)
Our great sponsors
ReSwift | RxSwift | |
---|---|---|
6 | 9 | |
7,513 | 24,156 | |
0.2% | 0.3% | |
3.9 | 7.4 | |
4 days ago | 3 days ago | |
Swift | Swift | |
MIT License | NOASSERTION |
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
ReSwift
Posts with mentions or reviews of ReSwift.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-05-22.
-
Do I need third party library to manage state management in swiftUI?
Check this out: https://github.com/ReSwift/ReSwift
-
Cast for and against Redux
There are some great examples linked to the ReSwift GitHub page: https://github.com/ReSwift/ReSwift
-
Is MVVM the only architecture you’ve used when developing iOS app?
ReSwift is also pretty good!
-
Getting Started With Kotlin Multiplatform Mobile
ReduxKotlin There are a few ports of Redux for KMM. This one might be the best because it is thread safe, which is very nice. The only drawback that I don't love about it is that it doesn't have types for sevral aspacts that feel like they should have types. On the other-hand ReKotlin (which is a port of ReSwift) has a lot of the typing that ReduxKotlin is missing, but is missing the thread safety. It just depends on your use-case.
-
I wrote an article about Redux architecture for SwiftUI, you can achieve pretty amazing stuff using it. Below Hot Reload implemented in 30 minutes. More links in comments. It's worth at least getting familiar with this architecture :)
Great article OP! Im sure you've seen it in your travels, but Ive been using ReSwift and ReSwift-Thunk for async actions and I've had great success - Gonna look into your navigation solution as that was the one part I'm still missing!
-
Do we have Redux specialists here :D? I'm trying to figure out if I should use classes or structs for keeping the state
I recommend you checkout the code base of ReSwift
RxSwift
Posts with mentions or reviews of RxSwift.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2022-08-01.
- RxSwift – Reactive Extensions for Swift
- Reactive Programming in Swift
-
For UIKit apps, what is best practice for VC listening for updates from a service?
I use RxSwift/RxCocoa and The Binder Architecture. That way View Controllers always show the most recent data from the service.
- Rxswift - Reactive Programming in Swift
-
Awesome macOS Libraries List
RxSwift - Reactive Programming in Swift. Language: Swift.
-
Xcode double segue
I do this with RxSwift and my CLE library. Using those you can do something like this:
-
Anyone have a clever way of using third party packages in Swift Playgrounds?
I've tried going to RxSwift's source and copying the RxSwift folder into my playground file's Source folder but no dice, it complains about a source file not being found. I tried flattening all the files into one folder and had the same problem.
-
DispatchGroup in Swift
We have defined what async code is, and two basic issues we could have when working with it: running tasks serially and in parallel. For running tasks in parallel we saw that DispatchGroup can be a simple solution for that. I will recommend using a library for this though. What I taught you here is basic async knowledge, but in real world scenarios, this won't be this straightforward, so using a battle tested library is always an advantage when working in production. I personally recommend using Apple's Combine if you can (it is supported in iOS 13 and above) or using RxSwift otherwise Finally, I can't finish this article without mentioning async-await. With async-await, probably all of this discussion will be a thing of the past. It lets us write async code that can be written like sync code. You can see the proposal (already implemented and that will be released in the next version of swift) here, and even try it in your code following a tutorial like this one.
-
RxSwift - easy, yet not obvious, tips
I think this is the most important thing to understand with all your heart. All subjects, relays and operators might seem scary, especially with Rx-hermetic jargon. But simplifying it in your head to a simple collection will help you to understand all concepts easily. For me it was a sudden click. If you want to learn more, official docs are great source and emphasize this concept: https://github.com/ReactiveX/RxSwift/blob/main/Documentation/GettingStarted.md#observables-aka-sequences
What are some alternatives?
When comparing ReSwift and RxSwift you can also consider the following projects:
Katana - Swift Apps in a Swoosh! A modern framework for creating iOS apps, inspired by Redux.
PromiseKit - Promises for Swift & ObjC.
ReactorKit - A library for reactive and unidirectional Swift applications
Bond - A Swift binding framework
ReactiveCocoa - Cocoa framework and Obj-C dynamism bindings for ReactiveSwift.
ReactiveKit - A Swift Reactive Programming Kit
swift-composable-architecture - A library for building applications in a consistent and understandable way, with composition, testing, and ergonomics in mind.
ReactiveSwift - Streams of values over time
RxAlamofire - RxSwift wrapper around the elegant HTTP networking in Swift Alamofire
SwiftEventBus - A publish/subscribe EventBus optimized for iOS