Reactive Functional Programming becomes more and more recognised as a great way to build reliable and maintainable software. Functional programming paradigms such as Immutability and avoiding statefull objects are considered good practices and something to strive for.
That's great! However it is not always straightforward to apply those principles, let alone to create a whole architecture around them.
Refactoring from an existing code base we will see how we can craft a great architecture and simplify our presentation layer by pushing more concerns as part of our domain.