WebRx – Embracing the Observable

WebRx is a browser-based MVVM-Framework that combines functional-reactive programming with declarative Data-Binding, Templating, and Client-Side Routing.

The library is built on top of ReactiveX for Javascript (RxJs) which is a powerful set of libraries for processing and querying asynchronous data streams that can originate from diverse sources such as Http-Requests, Input-Events, Timers and much more.

Getting Started | Example | Twitter | G+ | Reddit

MVVM

Clean separation of concerns between your View-Layer and your Application-Logic by combining observable View-Models with Two-Way declarative Data-Binding

Components and Modules

Combine View-Models and View-Templates into self-contained, reusable chunks and package them into modules.

Client-Side Routing

Organize the parts of your interface into a state machine that maps Components onto pre-defined (optionally nested) regions of your page.

Features

  • Tested with IE9+, Firefox 5+, Chrome 5+, Safari 5+, Android Browser 4.0+, iOS Safari 5.0+
  • Documentation
  • Developed in TypeScript (just like Angular 2.0)
  • Declarative One-way and Two-way data binding with many built-in operators
  • Supports self-contained, reusable Components modeled after the upcoming Web-Components standard
  • Out-of-the-box support for Modules to facilitate code reuse and separation of concerns
  • State-based routing engine inspired by Angular’s UI-Router
  • No dependencies besides RxJS
  • Compact (~25Kb minified & compressed)

Support

Post your questions to Stack Overflow tagged with.webrx