I really like the idea behind Cycle.js, but I don't think it does a very good job explaining itself. The idea as I understand it is not very complicated, but the language is rather esoteric.
The main benefits of Cycle.js in my eyes are:
1. Emphasis on a single entry point for event handling instead of a million separate event handlers. This is similar to the idea of the "Dispatcher" in Flux -- it's a central handler that manages all user input. But the Flux dispatcher has a specific purpose, whereas the main Cycle handler is more generic (which is, in my opinion, preferable).
2. Use of reactive programming, which is an extremely powerful paradigm in asynchronous environments like the browser. It takes a while to wrap your head around reactive programming but once you do it's absolutely fantastic. The only concern I would have here is that Rx.js adds overhead that might be unnecessary in some cases. But then I guess you would just use a more lightweight framework., so it's not exactly a criticism of Cycle.
Agree that those two benefits alone are super, may I also add:
3. The MVI framework, it's a great way to structure apps, much beyond the lifecycle methods React throws at ya.
4. The driver architecture, which shows forward thinking. It's ready to render to DOM or any other target or sink with any backend.
It's also the right way to think about engineering. Not just with the component mindset but more importantly, with Human-Computer Interaction being the main driver, which reveals the flow and structure of an app if you follow it through.
The main benefits of Cycle.js in my eyes are:
1. Emphasis on a single entry point for event handling instead of a million separate event handlers. This is similar to the idea of the "Dispatcher" in Flux -- it's a central handler that manages all user input. But the Flux dispatcher has a specific purpose, whereas the main Cycle handler is more generic (which is, in my opinion, preferable).
2. Use of reactive programming, which is an extremely powerful paradigm in asynchronous environments like the browser. It takes a while to wrap your head around reactive programming but once you do it's absolutely fantastic. The only concern I would have here is that Rx.js adds overhead that might be unnecessary in some cases. But then I guess you would just use a more lightweight framework., so it's not exactly a criticism of Cycle.