ReactiveX/rxjs


A reactive programming library for JavaScript

https://rxjs.dev

License: Apache-2.0

Language: TypeScript


RxJS Logo RxJS: Reactive Extensions For JavaScript

CircleCI npm version Join the chat at https://gitter.im/Reactive-Extensions/RxJS

RxJS 7 (alpha)

FOR 6.X PLEASE GO TO THE 6.x BRANCH

Reactive Extensions Library for JavaScript. This is a rewrite of Reactive-Extensions/RxJS and is the latest production-ready version of RxJS. This rewrite is meant to have better performance, better modularity, better debuggable call stacks, while staying mostly backwards compatible, with some breaking changes that reduce the API surface.

Apache 2.0 License

Versions In This Repository

  • master - This is all of the current, unreleased work, which is against v6 of RxJS right now
  • stable - This is the branch for the latest version you'd get if you do npm install rxjs

Important

By contributing or commenting on issues in this repository, whether you've read them or not, you're agreeing to the Contributor Code of Conduct. Much like traffic laws, ignorance doesn't grant you immunity.

Installation and Usage

ES6 via npm

npm install rxjs

It's recommended to pull in the Observable creation methods you need directly from 'rxjs' as shown below with range. And you can pull in any operator you need from one spot, under 'rxjs/operators'.

import { range } from 'rxjs';
import { map, filter } from 'rxjs/operators';

range(1, 200).pipe(
  filter(x => x % 2 === 1),
  map(x => x + x)
).subscribe(x => console.log(x));

CDN

For CDN, you can use unpkg:

https://unpkg.com/rxjs/bundles/rxjs.umd.min.js

The global namespace for rxjs is rxjs:

const { range } = rxjs;
const { map, filter } = rxjs.operators;

range(1, 200).pipe(
  filter(x => x % 2 === 1),
  map(x => x + x)
).subscribe(x => console.log(x));

Goals

  • Smaller overall bundles sizes
  • Provide better performance than preceding versions of RxJS
  • To model/follow the Observable Spec Proposal to the observable
  • Provide more modular file structure in a variety of formats
  • Provide more debuggable call stacks than preceding versions of RxJS

Building/Testing

  • npm run build_all - builds everything
  • npm test - runs tests
  • npm run test_no_cache - run test with ts-node set to false

Performance Tests

Run npm run build_perf or npm run perf to run the performance tests with protractor.

Run npm run perf_micro [operator] to run micro performance test benchmarking operator.

Adding documentation

We appreciate all contributions to the documentation of any type. All of the information needed to get the docs app up and running locally as well as how to contribute can be found in the documentation directory.

Project Statistics

Sourcerank 23
Repository Size 104 MB
Stars 19,669
Forks 2,019
Watchers 478
Open issues 363
Dependencies 2,528
Contributors 381
Tags 112
Created
Last updated
Last pushed

Top Contributors See all

Ben Lesh OJ Kwon André Staltz Jason Aden Nicholas Jamieson Paul Taylor Jay Phelps Tim Deschryver Luís Gabriel Lima Tetsuharu OHZEKI Mateusz Podlasin David Driscoll Dkosasih Jeff Cross Niklas W. Natalie Smith Rob Simpson Justin Woo Martin Sikora Tane Morgan

Packages Referencing this Repo

rxjs
Reactive Extensions for modern JavaScript
Latest release 6.5.3 - Updated - 19.7K stars
giots
Reactive Extensions for modern JavaScript
Latest release 1.0.1 - Updated - 19.7K stars
@sourcegraph/rxjs
Reactive Extensions for modern JavaScript
Latest release 5.4.2 - Updated - 19.7K stars
@jayphelps/rxjs
Reactive Extensions for modern JavaScript
Latest release 5.1.0 - Published - 19.7K stars
org.webjars.npm:reactivex__rxjs
WebJar for @reactivex/rxjs
Latest release 5.5.6 - Updated - 19.7K stars
@reactivex/rxjs
Reactive Extensions for modern JavaScript
Latest release 6.5.3 - Updated - 19.7K stars
org.webjars.npm:github-com-reactivex-rxjs
WebJar for @reactivex/rxjs
Latest release 5.0.0-alpha.7 - Published - 19.7K stars
org.webjars.npm:rxjs
WebJar for rxjs
Latest release 6.5.2 - Updated - 19.7K stars
rxjs-es
Reactive Extensions for modern JavaScript
Latest release 5.0.0-beta.12 - Updated - 19.7K stars
reactivex-rxjs
A reactive programming library for JavaScript
Latest release 6.5.2 - Published - 19.7K stars
rxjs-jk
Catch error when parsing json response and notify observer with thrown error.
Latest release 1.0.0-alpha.2 - Published - 19.7K stars
org.webjars.npm:rxjs-es
WebJar for rxjs-es
Latest release 5.0.0-beta.12 - Updated - 19.7K stars
@hausdorff/rxjs
Reactive Extensions for modern JavaScript
Latest release 5.5.6 - Published - 19.7K stars
rxjs-test
Reactive Extensions for modern JavaScript
Latest release 5.5.0-beta.0 - Published - 19.7K stars
test-rxjs5
Reactive Extensions Library for JavaScript. This is a rewrite of Reactive-Extensions/RxJS and is ...
This package is no longer available on NuGet
rxjs-ts
Reactive Extensions for modern JavaScript
Latest release 5.0.0-alpha.10 - Published - 19.7K stars
rxjs-es6
Reactive Extensions for modern JavaScript
Latest release 5.0.0-alpha.12 - Updated - 19.7K stars

Recent Tags See all

6.5.2 May 10, 2019
6.5.1 April 23, 2019
6.5.0 April 23, 2019
6.4.0 January 30, 2019
6.3.3 September 26, 2018
6.3.2 September 04, 2018
6.3.1 August 31, 2018
5.5.12 August 30, 2018
6.3.0 August 30, 2018
6.2.2 July 13, 2018
6.2.1 June 12, 2018
5.6.0-forward-compat.5 May 22, 2018
5.5.11 May 22, 2018
6.2.0 May 22, 2018
6.1.0 May 03, 2018

Interesting Forks See all

staltz/RxJSNext
A reactive programming library for JavaScript
TypeScript - Apache-2.0 - Last pushed - 9 stars - 2 forks
calidion/rxjs
rxjs中文翻译
TypeScript - Last pushed - 2 stars - 1 forks
jisaacks/RxJS
A reactive programming library for JavaScript
TypeScript - Last pushed - 2 stars
johnlindquist/rxjs
A reactive programming library for JavaScript
TypeScript - Updated - 1 stars
ladyleet/rxjs
A reactive programming library for JavaScript
TypeScript - Updated - 1 stars

Something wrong with this page? Make a suggestion

Last synced: 2019-09-05 02:45:31 UTC

Login to resync this repository