Code Monkey home page Code Monkey logo

Comments (4)

surma avatar surma commented on June 17, 2024

That sounds amazing!

It would be great if this worked out of the box. I’m not sure everything you did was actually necessary, but I’d be happy to help sort this out. For example, I already wrote MessageChannelAdapter.ts to support string-based channels (like WebRTC data channels), so that could probably be re-used there. I am very conscious of Comlink’s size, so obviously I aim to add as little special cases to the core library as possible.

I have very little experience with React and React native, so I’d be super helpful if you opened a PR and gave me instructions on how to run a demo project of yours using Comlink. Then we can work through your changes and figure out which ones are necessary.

from comlink.

ronhe avatar ronhe commented on June 17, 2024

It took some more effort that expected, but I ended up wrapping comlinkjs with React-Native's WebView into a new package rn-webview-rpc that exports both a React WebViewRpc component, and a matching web endpoint. I hope you that find that OK.

After sorting out many React-Native problems, I think that there is one issue that should be addressed in the comlinkjs package:
Currently Comlink is provided either in ES6 or in UMD (or globally).
At the moment, ES6 dependencies are not supported by Create React App (read more about it here).
Also, UMD modules seems not to play nicely with WebPack: I've encountered a similar warning as in this thread.
Hence, to make it easier on fellow developers, I think that Comlink should be also provided in an ES5/commonJS format.

from comlink.

gpolyn avatar gpolyn commented on June 17, 2024

+1!

I've been trying to get clooney and now comlink to play nice with a create-react-app demo, but, so far, no joy.

from comlink.

ronhe avatar ronhe commented on June 17, 2024

Hey @gpolyn,
From my experience, you can make it work if you copy Comlink's es6 files (2 of them) to your src folder, so they get compiled.

from comlink.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.