unidirectional-architecture-on-mobile
unidirectional-architecture-on-mobile copied to clipboard
Dive into :iphone: Unidirectional Architecture!
Unidirectional Architecture on :iphone:
Videos & books
- :clapper: Unidirectional data flow architectures and :page_facing_up: Unidirectional User Interface Architectures by Andre Staltz
- :bookmark_tabs: Reactive apps with Model-View-Intent by Hannes Dorfmann
- :clapper: Model-View-Intent for Android (Droidcon NYC 2017) and :page_facing_up: briefly by Benoît Quenaudon
- :clapper: Model View Intent, Embracing Reactive UI's (Droidcon NYC 2017) by Yousuf Haque
- :clapper: Simple MVI Architecture for Android (DevFestMN 2018) by Etienne Caron
- :books: Introducing Model-View-Intent (Android's Architecture Components book) by Mark Murphy
- :books: MVI-related chapters (Advanced Android App Architecture book) by raywenderlich.com
- :clapper: :page_facing_up: Driving View-State through data (Realm.io) by Matt Gallagher
- :clapper: :page_facing_up: Redux-ing UI bugs to Make Native Better (Realm.io) by Christina Lee & Brandon Kase
- :clapper: :page_facing_up: Modern RxSwift Architectures (Realm.io) by Krunoslav Zaher
- :clapper: :ru: Data-Driven View Controllers (DevFest Minsk 2017), Data-driven UI: безграничная власть (Mobius 2018) by Alexey Demedeckiy
- :clapper: Managing State with RxJava by Jake Wharton
Articles
- :page_facing_up: Unidirectional data flow on Android using Kotlin (Part 1, 2) by Cesar Valiente
- :page_facing_up: Flux Android Architecture Components using Kotlin by Lewis Rhine
- :page_facing_up: Uni-Directional Architecture on Android Using Realm (Realm.io) by Eric Maxwell
- :page_facing_up: How to make your Views a function of State in Kotlin
MVI
- :page_facing_up: MVI — another member of the MV* band
- :page_facing_up: From MVP to MVI — Model-View-Intent Journey
- :page_facing_up: Build Your own MVI Framework
- :page_facing_up: Android MVI explained in MVP terms
- :page_facing_up: Presenter as a Function: Reactive MVP for Android Using Kotlin Coroutines
- :page_facing_up: MVI beyond state reducers
- :page_facing_up: Building a system of reactive components with Kotlin
- :page_facing_up: Android MVI with Jetpack Compose
- :page_facing_up: Model-View-Intent & Data Binding
- :page_facing_up: Moving to Model-View-Intent (MVI) using ReactorKit on iOS
- :page_facing_up: Building MVI apps with Roxie
- :page_facing_up: :ru: MVIDroid: обзор новой библиотеки MVI (Model-View-Intent)
- :bookmark_tabs: Links related to MVI
Next steps
- :page_facing_up: RxJava & State: The Basics
- :page_facing_up: Grox: The Art of the State
- :page_facing_up: iOS Architecture: A State Container based approach
- :page_facing_up: Taming state in Android with Elm Architecture and Kotlin (Part 1, 2, 3) by Sergey Grekov
- :chart_with_upwards_trend: Elm lifecycle diagram
- :page_facing_up: RxRedux by Hannes Dorfmann
- :page_facing_up: Android.apply{ Redux }
- :page_facing_up: Reactive State Mutations via CQRS
- :page_facing_up: DiffUtil — performant one way data flow with RxJava and Kotlin
- :page_facing_up: Refactoring RecyclerView adapter to data binding
Libraries :books:
MVI
- :books: Mosby :fire: by Hannes Dorfmann
- :books: MVICore :fire: by Badoo Tech
- :books: MvRx :fire: by Airbnb
- :books: Reaktor :fire:
- :books: Kaskade
- :books: Vector
- :books: android-mvi
- :books: Reamp
Redux
- :books: RxRedux & CoRedux :fire: by Hannes Dorfmann
- :books: KUnidirectional :fire: by Cesar Valiente
- :books: Roxie :fire:
- :books: Suas-Android :fire:
- :books: redux-kotlin
- :books: RxRedux
- :books: reductor
- :books: Droidux
TEA/Elm-architecture
State machine
- :books: StateMachine :fire: by Tinder
- :books: Workflow :fire: by Square
- :books: RxFeedback
State container
Flux
- :books: Reark
- :books: Fluxxan
- :books: AndroidReactor
iOS
Redux
- :books: ReSwift :fire:
- :books: Katana :fire:
- :books: RxAutomaton
State machine
- :books: RxFeedback :fire:
- :books: Stateful
State container
Flux
- :books: ReactorKit :fire:
- :books: Reactor
- :books: RxState
Examples :file_folder:
Android
MVI
- :file_folder: MVI (general) :fire: by Kaushik Gopal
- :file_folder: MVI + ViewModel (AAC) :fire: by Benoît Quenaudon
- :file_folder: MVI + Clean Architecture + AAC (boilerplate)
- :file_folder: MVI + Clean Architecture (TODO app, advanced)
- :file_folder: MVI (sample app)
- :file_folder: MVI + RxPresenter
TEA/Elm-architecture
- :file_folder: Counter (simple)
- :file_folder: TEA/Litho, 1
- :file_folder: TEA/Litho, 2
- :file_folder: TEA + ViewModel (AAC)
- :file_folder: TEA + MVP
- :file_folder: TradingApp (advanced)
Flux
- :file_folder: Firebase Chat (advanced)
iOS
TODO