State machines and statecharts #
FicusJS provides a set of functions for extending components to use state machines and statecharts.
What is a state machine? #
A finite state machine is an alternative way of modeling program state; instead of defining independent variables, a machine is crafted specifically to handle what states are possible, and when a machine is a given state, what next state is allowed.
What are statecharts? #
Statecharts are the "bigger brother" of state machines, designed to overcome the limitations of state machines. A statechart is essentially a state machine that allows any state to include more machines, in a hierarchical fashion.
Find out more #
You can find out more about state machines and statecharts at https://statecharts.dev