KStateMachine is a Kotlin DSL library for creating finite state machines (FSM) and hierarchical state machines (HSM).
EasyFlow is a simple and lightweight Finite State Machine for Java
With EasyFlow you can:
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.
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
UI driven state machine for Android & JVM that will exterminate your bugs.
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.
Yet, another light weight Java FSM library. This library follows the idea from Google AutoValue. It generates a subclass that handles states.