

Cycle.js: A fully reactive JavaScript framework for Human-Computer Interaction - lobo_tuerto
http://cycle.js.org/

======
delluminatus
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.

~~~
stardrive
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.

------
jasonhansel
I've been working on a similar project, though it's not nearly as complete as
Cycle:
[https://github.com/jasonhansel/flumen](https://github.com/jasonhansel/flumen)

