UI driven state machine for Android & JVM that will exterminate your bugs.
EasyFlow is a simple and lightweight Finite State Machine for Java
With EasyFlow you can:
An observable Finite State Machine for Java.
Useful when you have a number of distinct states, with some optional state transitions, and associated actions.
For example, you may have states ON_CALL
and OFF_CALL
, with triggers START_CALL
and END_CALL
, with an assocoated action to print the call length when END_CALL
is received.
HAL is a non-deterministic finite-state machine for Android & JVM built with Coroutines and LiveData.
State Container for Kotlin and Android.
The name comes from cascade, a waterfall, which reflects the objective of the library to make flows easier with unidirectional data flow. Inspired by MVI or Model View Intent.
Supports
Yet, another light weight Java FSM library. This library follows the idea from Google AutoValue. It generates a subclass that handles states.
KStateMachine is a Kotlin DSL library for creating finite state machines (FSM) and hierarchical state machines (HSM).
TinyMachine is fun to use finite-state machine. It helps you to write compact and clearly structured code when used in event-driver programming. No deep if-else or switch-case statements, no static state transition tables, no complex, hard to understand models. Just clearly structured state handling and transition logic. This is what TinyMachine is.