It is a layer-based architecture that allows a real disentangle of the UI components from the business logic.
The main components are: Action, UI,UIModel,ViewModels with Livedata, UseCase, Repository
The Action is the most innovative object of this architecture and simplify the communication between UI and Business Logic.
An Action can be created by using a Builder and follow this flow:
Utility to trigger action on Android lifecycle events. Contains implementation based on Android Architecture Components and own implementation with extended set of events for Activity and Fragment.
java lifebus.on(Lifecycle.Event.ON_STOP, () -> { holdMe.release(); });
Light library which provides kotlin field delegates aware of android lifecycle. Comfortable to avoid ugly lateinit
operator or to use releaseble/closeable resources.
LifecycleMvp is implementation of MVP architecture with Android Architecture Components.
LightCycle is an Android library that helps break logic out of Activity
and Fragment
classes into small, self-contained components called LightCycles.
A Framework that simplify developing MVVM Architecture and Material Design in Android with Kotlin language including useful Extensions and Sample Application. This Framework has some tools for Retrofit and OKHttp and Coroutine for calling REST API requests.
Dynamic Localization and Day/Night Theme & Meow Custom Widgets are another features.
Kotlin Multiplatform Mobius implementation - A functional reactive framework for managing state evolution and side-effects.
MobX architecture pattern to Android written in Kotlin.
A simple library that makes it easy to pair thin views with dedicated controllers, isolated from most of the vagaries of the Activity life cycle.
A Mosby based VIPER library for Android.
It allows you to create clean, modular, decoupled and easy to test apps with ease by providing you a neat toolkit for applying the VIPER architecture. It is shipped with the modules generator to relieve you from composing modules by hand and to speed up your development even more!
Android MVP architecture in Kotlin using Dagger2, RxJava2, Retrofit2.
This is simple Kotlin MVP demo. Here we are using following technologies:
The app has following packages:
A common Architecture for Android Applications developing based on MVP,integrates many Open Source Projects(like Dagger2, Rxjava, Retrofit... ), to make your developing quicker and easier.
This framework is designed to solve the traditional MVP class and interface too much, and Presenter and View communicate too complicated through the interface, reuse Presenter too much cost.
Unify activity and fragment life cycle for MVVM architecture.
ngAndroid is bringing angularjs type directives to android xml attributes.
Paginize is a light-weight application framework for Android.
An abstract application stack which facilitates:
Premo is a Kotlin Multiplatform library that helps to implement the Presentation Layer and share it on iOS, Android, Desktop and Web. Focus on writing logic instead of solving common and boring UI related issues: lifecycle, persistence, navigation, etc.
An architecture for Android as a replacement of MVC.
Quantum is a general purpose state management library designed for building easy, stable and thread safe Android applications. It was inspired by AirBnb's MvRx and tailored for building reliable ViewModels.
An easy, powerful, and flexible MVP/MVI library for Android apps. It uses the same principles as Mosby (Model-View-Intent) but made easier and it has a built-in mechanism to save and restore your view state.
Reduks is a redux-like implementation for kotlin apps, with this you can create, state, actions, reducers, stores and middlewares in an easy way.
Redux architecture pattern to Android writed in Kotlin
RIBs is the cross-platform architecture framework behind many mobile apps at Uber. The name RIBs is short of Router, Interactor and Builder, which are core components of this architecture. This framework is designed for mobile apps with a large number of engineers and nested states.
Rosie is an Android framework to create applications following the Clean Architecture.
Rosie divides your application in three layers, view, domain and repository. For each layer, Rosie provides plenty of classes that will make defining and separating these concerns much easier.
RxFlux is small light-weight framework that makes it easy to follow the Flux pattern with RxJava functionalities.
A way to MVVM using RxJava with new Android databinding.
This is a set of classes with a small, extensible API which provides basic abstractions for building your apps using VIPER architecture.
Scoop is a micro framework for building view based modular Android applications.