Recombine
By ReSwift
SwiftState
Redux-Like unidirectional data flow for SwiftUI with a Redux-Saga-like side effect model (by palle-k)
Recombine | SwiftState | |
---|---|---|
7 | 2 | |
69 | 8 | |
- | - | |
3.4 | 0.0 | |
3 months ago | about 3 years ago | |
Swift | Swift | |
MIT License | MIT License |
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.
Recombine
Posts with mentions or reviews of Recombine.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-03-29.
-
SwiftUI architecture
Although I used MVVM-style architectures before, I’m now preferring the centralised store Redux-like architectures. However, The Composable Architecture feels too overbearing for me, and feels more like a framework than a library. I’d advise using more lightweight libraries like Recombine which are easily extensible if you need any additional functionality, or even making your very own store architecture to perfectly fit your needs.
-
My first app is now up on the App Store, Damage Calculator for Pokemon!
Yeah, app architecture in SwiftUI can be really difficult. I’d advise you check out this library - Recombine. It provides a really elegant and lightweight solution to app architecture which I really really enjoy.
-
A blogpost on MVVM Paradigm. Any feedback is appreciated :) Trying to learn swift and was intrigued with this architecture pattern :)
Nice article! I love MVVM, but I find it really hard to auto-discipline with it. In a larger app, I tend to get lost with it quite easily, resulting in spaghetti code where I don’t know what’s modifying what and why such thing isn’t working as it’s supposed to be. Recently, I’ve really been enjoying lightweight Redux-like libraries like Recombine (or direct implementations of it like in Swift with Majid’s articles - they incentivise (not force, unlike something like Swift Composable Architecture which can feel a little overbearing) well-structured and clear code. I’d love to hear your thoughts on it in a blog post!
-
Does everybody just not use MVVM or am I just missing something?
How is Swift Composable Architecture in terms of performance with bigger apps - on the Swift forums I’m always seeing posts about bad performance. Also, with The Composable Architecture, you have side effects in the reducer, which seems counterintuitive. What do you think of a library like ReCombine, which seems a bit cleaner and simpler? I’m interested in these Elm-inspired Redux architectures, but don’t want to jeopardise the user experience. And I still haven’t found one which cleanly integrates with SwiftUI’s Core Data.
- Recombine 1.0: An Elm architecture for SwiftUI
-
I just released version 1.0 of Recombine, a built-for-SwiftUI architecture based on Elm’s that takes type-safety to the max
I agree, I think lensing is a super cool feature – it also makes us want to structure our app state and actions even more (who would want to write @EnvironmentObject var lensedStore: SubStore, when you could write @EnvironmentObject var lensedStore: SubStore?). Lensed states are also required to be equatable in Recombine and discard unnecessary UI updates, so you alleviate SwiftUI's diffing and get those sweet performance benefits.
SwiftState
Posts with mentions or reviews of SwiftState.
We have used some of these posts to build our list of alternatives
and similar projects. The last one was on 2021-02-11.
-
I just released version 1.0 of Recombine, a built-for-SwiftUI architecture based on Elm’s that takes type-safety to the max
Interesting, I find your raw-refined dichotomy very elegant. Yes, I’d be happy to learn more about your framework compared to SCA. I’d also love you hear u/Duffmaaaann ‘s thoughts on Recombine, who’s made their ownunidirectional data flow library, but with a different take on side effects.
-
Concurrency and Combine – what does the future look like?
I've created an implementation of this exact pattern in Swift with the help of SwiftCoroutine some time ago. Here's the code, if anyone's interested: https://github.com/palle-k/SwiftState (don't use this in production though, SwiftCoroutine relies on continuations as run-time function calls, which is discouraged). Once async/await becomes available, I'll rework it.
What are some alternatives?
When comparing Recombine and SwiftState you can also consider the following projects:
swift-composable-architecture - A library for building applications in a consistent and understandable way, with composition, testing, and ergonomics in mind.
ReSwift - Unidirectional Data Flow in Swift - Inspired by Redux
swift-parsing - A library for turning nebulous data into well-structured data, with a focus on composition, performance, generality, and ergonomics.
Reactor - 🔄 Unidirectional data flow in Swift.
SwiftlySearch - A small, lightweight UISearchController wrapper for SwiftUI
ReduxUI - 💎 Redux like architecture for SwiftUI
Verge - 🟣 A robust Swift state-management framework designed for complex applications, featuring an integrated ORM for efficient data handling.