Reactronic is a JavaScript library that provides transactionally reactive state management in a Web application. Transactional reactivity means that state changes are being made in an isolated data snapshot and then, once atomically committed, are consistently propagated to corresponding visual components for (re)rendering. All that is done in automatic, seamless, and fine-grained way.
Live demo is available here: https://nezaboodka.github.io/reactronic-demo/