canjs / can-stream-kefir

Stream values into and out of computes
https://canjs.com/doc/can-stream-kefir.html
MIT License
3 stars 2 forks source link

Create: Integration for rxJS #14

Closed frank-dspeed closed 7 years ago

frank-dspeed commented 7 years ago

This closes: https://github.com/canjs/canjs/issues/2927

https://github.com/Reactive-Extensions/RxJS#what-about-my-libraries

We need to be listed there as compatible to rx and also it will allow usage of rx inside of canjs projects

can-stream-rx should be created we can get some existing implamentation code from can-rx and also review that for updates inside of the canjs 2.x branches.

marshallswain commented 7 years ago

I don't know how similar the APIs are, but maybe we can make it so that you can pass a stream library to can-stream the same way that you do with feathers-reactive.

const feathers = require('feathers');
const reactive = require('feathers-reactive');
const RxJS = require('rxjs');

const app = feathers().configure(reactive(RxJS, options));
chasenlehara commented 7 years ago

That’d be pretty slick. You can see in the code where we explicitly use Kefir’s APIs. We depend on some parts of how Kefir works, like observables not subscribing to their sources until they have a listener, so I think we have to explicitly depend on the stream library.

justinbmeyer commented 7 years ago

Yeah, I think having separate packages is easier and more maintainable long term.

Can/will explain more later, but think about different parts of the same app that might want different stream libraries. This is what 3.0 is all about.

Sent from my iPhone

On Dec 22, 2016, at 5:56 PM, Chasen Le Hara notifications@github.com wrote:

That’d be pretty slick. You can see in the code where we explicitly use Kefir’s APIs. We depend on some parts of how Kefir works, like observables not subscribing to their sources until they have a listener, so I think we have to explicitly depend on the stream library.

— You are receiving this because you are subscribed to this thread. Reply to this email directly, view it on GitHub, or mute the thread.

justinbmeyer commented 7 years ago

Closing this issue but adding the help wanted label. If someone wants to help, create a can-stream-rx repo just like this one, but uses rxjs.

This is related: https://github.com/canjs/can-define-stream/issues/17

web-mech commented 7 years ago

https://github.com/web-mech/can-stream-rxjs

https://github.com/web-mech/can-define-stream-rxjs