Need help with kefir?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

1.7K Stars 101 Forks MIT License 1.2K Commits 38 Opened issues


A Reactive Programming library for JavaScript

Services available


Need anything else?

Contributors list


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 See also Deprecated API docs.

GitHub license npm version Build Status Gitter


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


npm install kefir


bower install kefir


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) { 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 here. foo(s);


npm run prettify    # makes source code pretty (you must run it before a PR could be merged)
npm run build-js    # builds js bundlers
npm run test        # runs all the checks
npm run test-only   # runs only unit tests without other checks
npm run test-debug  # runs tests with a chrome inspector connected to the node process
npm run build-docs  # builds the documentation html file

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.