<h1 id="event-driven-programming">Event-Driven Programming</h1>
<p><strong>Context: <a href="../README.md">frontend-dev-bookmarks</a> / Architecture</strong></p>
<p>Event-driven programming is a programming paradigm in which the flow of the program is determined by events such as user actions, sensor outputs, or messages from other programs/threads.</p>
<p><a href="http://frontend.directory/"><img src="https://img.shields.io/badge/frontend-directory-blue.svg?style=flat-square" alt="frontend.directory" /></a> <a href="https://gitter.im/dypsilon/frontend-dev-bookmarks"><img src="https://img.shields.io/gitter/room/dypsilon/frontend-dev-bookmarks.svg?style=flat-square&maxAge=2592000" alt="Gitter" /></a> <a href="https://twitter.com/FrontendDir"><img src="https://img.shields.io/badge/follow-twitter-55acee.svg?style=flat-square" alt="Twitter" /></a></p>
<table style="width:58%;">
<colgroup>
<col style="width: 58%" />
</colgroup>
<tbody>
<tr class="odd">
<td>+ <strong><a href="https://github.com/millermedeiros/js-signals/wiki/Comparison-between-different-Observer-Pattern-implementations">Comparison Between Different Observer Pattern Implementations</a></strong>: The comparison below is just about the basic features of subscribing to an event type, dispatching and removing an event listener. + <strong><a href="https://otaqui.com/blog/1374/event-emitter-pub-sub-or-deferred-promises-which-should-you-choose/">Event Emitter, Pub Sub or Deferred Promises</a></strong>: In this post Pete Otaqui explores a little about how each pattern works with (very) basic implementations and looks at the reasons why you might choose one over another. + <strong>Implementations</strong>: Libraries, frameworks and tools that use Event-Driven Programming paradigm. + <strong><a href="https://baconjs.github.io/">Bacon.js</a></strong>: A small functional reactive programming lib for JavaScript. Turns your event spaghetti into clean and declarative feng shui bacon, by switching from imperative to functional. + <strong><a href="http://flightjs.github.io/">Flight</a></strong>: An event-driven web framework, from Twitter. + <strong><a href="http://thejacklawson.com/Mediator.js/">Mediator.js</a></strong>: Mediator is a simple class that allows you to register, unregister, and call subscriber methods to help event-based, asyncronous programming. + <strong><a href="https://github.com/postaljs/postal.js">Postal.js</a></strong>: Postal.js takes the familiar “eventing-style” paradigm and extends it by providing “broker” and subscriber implementations + <strong><a href="http://radio.uxder.com/">Radio.js</a></strong>: Radio.js is a small dependency-free publish/subscribe JavaScript library. Use it to implement the observer pattern in your code to help decouple your application architecture for greater maintainability. + <strong><a href="http://millermedeiros.github.io/js-signals/">js-signals</a></strong>: Custom Event/Messaging system for JavaScript. + <strong><a href="https://github.com/federico-lox/pubsub.js">pubsub.js</a></strong>: A tiny (~600 bytes when minified, ~300 bytes when gzip’d) and robust pubsub implementation.</td>
</tr>
</tbody>
</table>
<h1 id="license">License</h1>
<p><a rel="license" href="http://creativecommons.org/licenses/by/4.0/"><img alt="Creative Commons License" style="border-width:0" src="https://i.creativecommons.org/l/by/4.0/88x31.png" /></a><br />This work is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by/4.0/">Creative Commons Attribution 4.0 International License</a>.</p>
<p>Please provide a link back to this repository. This is not necessary for GitHub forks.</p>