So far, we have taken a journey through managing complexity by efficiently handling and modeling asynchronous workflows in terms of streams of data. In particular, Chapter 4, Introduction to core.async, and Chapter 5, Creating Your Own CES Framework with core.async, explored what's involved in libraries that provide primitives and combinators for Compositional Event Systems (CES). We also built a simple ClojureScript application that made use of our framework.
One thing you might have noticed is that none of the examples so far have dealt with what happens to the data once we are ready to present it to our users. It's still an open question that we, as application developers, need to answer.
In this chapter, we will look at one way to handle Reactive User Interfaces in web applications using React[1], a modern JavaScript framework developed by Facebook...