Amber
Overview
Amber is flexible architecture based on Elm & Flux ideas and developed specifically for iOS. It separetes components of a module into six parts:
State: is plain struct responsible for holding all data based on which interface is drawn.
Actions: are events that can happen in module: button press, data loaded, etc.
Reducer: is class responsible for processing Actions and for initial setup.
Transitions: are types of transitions that can happen in module.
Router: is class responsible for processing Transitions
Store: holds reference to Reducer, Router and current State.
View: is plain mapping of the state into the user interface. It subscribes to current state and redraws itself accordingly to the new state. It also responsible for sending Actions and Transitions to the Store.
In depth explanation
To come soon..
Amber module for generamba
Here is amber module for Generamba
Example
You can check out simple example of Amber usage: TestProject
Installation
Amber is available through CocoaPods. To install it, simply add the following line to your Podfile:
pod 'Amber'
Author
Nikita Arkhipov, [email protected] Anvics
License
Amber is available under the MIT license. See the LICENSE file for more info.