ViewModel Lifecycle allows you to track and observe Jetpack ViewModel's lifecycle changes.
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.
Kotlin Multiplatform Mobius implementation - A functional reactive framework for managing state evolution and side-effects.
Shuttle provides a modern, guarded way to pass large Serializable
objects with Intent objects or saving them in Bundle
objects to avoid app crashes.
Light library which provides kotlin field delegates aware of android lifecycle. Comfortable to avoid ugly lateinit
operator or to use releaseble/closeable resources.
MobX architecture pattern to Android written in Kotlin.
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.
Kelm simplifies management of complex app states and asynchronous tasks. Kelm is a Kotlin library based on the Elm Architecture and RxJava.
Vita is a light and simple library that helps you to share ViewModel
between fragments and activities, even you can create ViewModels
in application scope.
Inversion simplifies the ServiceLoader usage to retrieve all the implementations of a certain interface. Using Inversion it's easy to use the dependency inversion in a multi module project.
The library provides the means necessary to easily integrate the MVVM Architectural Pattern into your application; it includes the adaptations for the dagger 2 DI library, as well as the new Android Navigation Architecture Component one.
The library is accompanied by a comprehensive Demo Application that is built upon the MVVM and Clean Architecture concepts and utilizes such libraries as RxJava, Dagger2, Android Navigation Architecture Component, OkHttp, Retrofit, Room, Glide.
Knot
is a concise reactive state container library for Android applications written in Kotlin, which helps managing application state by reacting on events and performing asynchronous actions in a structured way.
ViewStateStore wraps a LiveData for deliver ViewStates to the UI.
Supported ViewState
types are:
It also supports Android's Paging.
Easy and intuitive architecture pattern library for Android by Naver Corp.
Krate is a predictable state container for Kotlin and RxJava. It brings order to the chaos by taking care of the data flow in your app. Krate is heavily inspired by This talk by Jake Wharton but also Flux and Redux.
Framework for the development of android applications by Surf studio. Contains modules and development standards with which you can build a quality application in a short time.
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.
AbstractMvp is a library that provides abstract components for MVP architecture realization, with problems solutions that are exist in classic MVP.
LifecycleMvp is implementation of MVP architecture with Android Architecture Components.
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:
This is an android framework for build complex application with different architectures (MVC ready/MVP/MVVM/MVI etc.). It's created on top of MVC pattern with powerful event system, dependency injection and property delegation, also it supports multi-core instances and animation changes between views.
A complete android componentization solution, powered by MVPArms.
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.
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(); });
A Reactive Android MVP Framework which is Slick to use, Inspired by MVI and Elm Architecture.
FireDroid is an architectural framework for Android apps that use Firebase services. The framework takes on the burden of integrating Firebase services to your app and helps you avoid boilerplate code.
Redux architecture pattern to Android writed in Kotlin
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:
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.
Slick is an Android library to create applications following the principles of Clean Architecture. Slick simplify using the Clean Architecture.