fist-js (npm): An abstract finite state transducer for modelling UIs mainly but also applicable for many other things
Keywords: finite|state|transducer|machine|gui|mvc|mvp