It seems that Bare is also built on top of V8 and libuv, much like Node.js.<p><pre><code> Bare is built on top of https://github.com/holepunchto/libjs, which provides low-level bindings to V8 in an engine independent manner, and https://github.com/libuv/libuv, which provides an asynchronous I/O event loop. (from their README)
</code></pre>
Moreover, you actually need Node.js and npm to install and run it. You need another JavaScript runtime as a prerequisite to install this JavaScript runtime…<p><pre><code> npm i -g bare (also from their README)
</code></pre>
I don't get it – is it worth it to choose Bare over a more established and welly-maintained solution?
The marketing website is so confusing, and the name doesn't help.
There is nothing that node can't do in the few presented bullet points, so really I'm confused. Maybe it's the size of the runtime?
I somehow do not get it, quite possibly a knowledgegap on my side - is that another runtime such as bun? What's the difference?<p>Isn't the problem always just ios for cross platform - is bare running on iOS? Can you shed some light on this?
Some background context that might be useful for other readers wondering what they're looking at:<p>1. One of the core contributors on this is an individual who has essentially been the driving force for P2P applications in JS-land (the "hyper" stack, like hyperswarm and hyperdrive). See: <a href="https://github.com/mafintosh" rel="nofollow">https://github.com/mafintosh</a><p>See previous discussion on the "dat" protocol, built on top of the aforementioned (<a href="https://news.ycombinator.com/item?id=22909998">https://news.ycombinator.com/item?id=22909998</a>).<p>2. To that end, the target userbase is something like an "It-Just-Works P2P Developer". You want a cross-platform solution that allows you to host networked applications on your device, in JS.<p>I'm not very knowledgeable about this domain. I built a small "dat" application years ago.
What does this offer as an alternative to node? I’m looking at the supported platforms page and the list is essentially the same as the node ones… does it have a wasm target? An embedded target? What’s new here?
I found their GitHub repo more useful for technical details:<p><a href="https://github.com/holepunchto/pear/" rel="nofollow">https://github.com/holepunchto/pear/</a>
I have been developing with bare for a while now, normally our app takes 45 MB to run with Node but the same app runs 10 MB lower in Bare.<p>For 10 instances of our app, it is easily 10x10 = 100 MB of saving with Bare.