Third Party JS / Node SDK - what's the short-term status?

Hi,

Firstly I perfectly understand that there’s no DOM in Fuse, nor does it claim to be NodeJS and support the multitude dependencies that node modules often call on.

But. I’ve read in a few places on the Slack channel and here that with luck 3rd party JS libs ‘should work as-is’.

I’m trying to demo Fuse with a view to rebuilding an existing app using it, but the lack of 3rd party support for any BAAS providers has me stumped. (with the notable exception of the soon-to-be-retired Parse…)

Over the weekend I attempted to get the .js sdks of Firebase or CloudBoost (https://github.com/CloudBoost/JavaScriptSDK) to work in Fuse without success. Also tried their respective npm equivalents via nfuse, but again, nothing doing. Cloudboost’s js sdk was calling on ‘navigator’ to determine the client-side browser being used, which I managed to hack around but didn’t get much further than that.

Both these providers offer REST alternatives to their sdks, so I could potentially wrap my Fuse calls and go down that route. However (a) that’s a bit frustrating when .js sdks already exist and (b) when it comes to realtime & offline sync, Cloudboost doesn’t support that via REST (need to use their SDK) and afaict it starts to get a whole lot more complicated with Firebase.

Can someone from Fuse give an indication of where we are with supporting 3rd party sdks atm & in the short term please? With a particular slant towards mobile backend providers, something I’d imagine many of us will need in our apps at some point. (Push, realtime, offline sync…).

Thanks,

Steve

Hey Steve, supporting 3rd party SDKs in general is difficult to answer, since we can’t implement the entire browser DOM or Node api’s as you say. But we are trying to figure out the most used frameworks and add what’s missing for them. Currently one of the missing things is proper support for FileReader, Blob, File, FormData and WebSockets. We also need to fix up some things in our existing polyfills. This is something we are constantly working on.

Adding support for a library like Firebase that is not open source, is difficult since we can’t know what they use from the DOM. We are working on getting official support but we can’t promise a date for when that will happen.

You can see bolav’s attempt at polyfilling firebase here and cbaggers start of a native wrapper here.

Thanks for the reply Anders. Perfectly understand the position.

Obviously Firebase is the poster-child of backend since Google acquired it and I have no problem with that, but https://www.cloudboost.io/ is open source via Github (https://github.com/cloudboost) and as well as delivering much (all?) that Firebase provides they even offer a Docker image to spin up & run on one’s own servers, AWS, Heroku etc.

I’d certainly encourage everyone more skilled than I to give it a look, having access to the source has to be an easier bet than Firebase and I’ll gladly step in as test lead. :wink:

Thanks again.

Steve

Would anyone mind seeing if they can get Fuse to work with this SDK from GameSparks?
https://docs2.gamesparks.com/sdk-center/javascript-sdk.html

It’s a fully featured BaaS and I would love to use it with Fuse. I am unfortunately not advanced enough.