A faster and scalable flux library for iOS App - SwiftUI / UIKit
Fully documented and used in production at Eureka, Inc.
⭐️ If you like and interested in this, give it a star on this repo! We'd like to know developer's needs. ⭐️
- Swift 5.2 +
- iOS 10 +
- UIKit and SwiftUI
Verge is a performant flux based state management library for iOS.
Please see the website: https://vergegroup.github.io/Verge/
Recently, we could say the unidirectional data flow is a popular architecture such as flux.
It depends. The performance will be the worst depends on how it is used.
However, most of the cases, we don't know the app we're creating how it will grow and scales.
While the application is scaling up, the performance might decrease by getting complexity.
To keep performance, we need to tune it up with several approaches.
Considering the performance takes time from the beginning.
it will make us be annoying to use flux architecture.
Setting Verge up quickly, and tune-up when we need it.
Verge automatically tune-up and shows us what makes performance badly while development from Xcode's documentation.
For example, Verge provides these stuff to tune performance up.
- Derived (Similar to facebookexperimental/Recoil's Selector)
- ORM
We use an event as Activity
that won't be stored in the state.
This concept would help us to describe something that is not easy to describe as a state in the client application.
VergeStore
pod 'Verge/Store'
VergeORM
pod 'Verge/ORM'
VergeRx
pod 'Verge/Rx'
These are separated with subspecs in Podspec.
After installed, these are merged into single module as Verge
.
To use Verge in your code, define import decralation following.
import Verge
Verge supports also SwiftPM.
Verge is released under the MIT license.