rimmel icon indicating copy to clipboard operation
rimmel copied to clipboard

A Stream-Oriented UI library for the Rx.Observable Universe.

Rimmel.js

npm

Rimmel is a small, lightweight and fast UI library entirely built around the Observable and Observer patterns, where:

  • Input Events (sources) are Observables
  • Output (sinks) are Observers
  • Everything in between is your streams

Writing reactive streams is easier than you think: take an input, transform it, return it. If you need a crash-course on reactive streams, tailored for UI development, check this one out.

👋 Hello World 👋

The "Hello World" for reactive interfaces is the click counter: one button, you click it, he counts it.
This is how it works:

How RimmelJS Works

The click event is "sourced" into counter, which is an Observable Subject that takes Event objects and emits numbers.

The result is then "sinked" into the <span> element at the end.

How RimmelJS Works