Skip to content
/ kefir Public
forked from kefirjs/kefir

A Reactive Programming library for JavaScript

License

Notifications You must be signed in to change notification settings

32bitkid/kefir

 
 

Repository files navigation

Kefir

Kefir — is an Reactive Programming library for JavaScript inspired by Bacon.js and RxJS with focus on high performance and low memory usage.

For docs visit rpominov.github.io/kefir. See also Deprecated API docs.

Build Status Dependency Status devDependency Status Gitter

Run tests in your browser (gh-pages branch, i.e. last stable version)

Installation

Kefir available as NPM and Bower packages, as well as simple files download.

NPM

npm install kefir

Bower

bower install kefir

Download

See downloads section in the docs.

Also available on jsDelivr.

Browsers support

We don't support IE8 and below, aside from that Kefir should work in any browser.

The NPM package ships with Flow definitions. So you can do something like this if you use Flow:

// @flow

import Kefir from 'kefir'

function foo(numberStream: Kefir.Observable<number>) {
  numberStream.onValue(x => {
    // Flow knows x is a number here
  });
}

const s = Kefir.constant(5);
// Flow can automatically infer the type of values in the stream and determine
// that `s` is of type Kefir.Observable<number> here.
foo(s);

Development

To build all the things: /dist, docs, tests for browser, etc. run:

grunt
grunt bower # to also install bower packages which needed for docs

To run tests:

npm test

About

A Reactive Programming library for JavaScript

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • CoffeeScript 40.5%
  • JavaScript 37.9%
  • HTML 19.2%
  • CSS 2.4%