https://puter.com/app/half-life-c3j01ag3pyd
It looks like it's using a build of the below, hosted on GitHub.io:
https://puter.com/app/half-life-c3j01ag3pyd
It looks like it's using a build of the below, hosted on GitHub.io:
> […] your app will get a few things by default: […] An app directory in the user's cloud storage […] A key-value store in the user's space […]
> > Apps are sandboxed by default! Apps are not able to access any […]
https://docs.puter.com/security/
I guess that refers to the cloud storage/backend. Clientside apps seem to run as IFrames, so should be subjected to normal browser sandboxing (…and actually, I guess, multiprocessing too), with only explicit message-passing.
Honestly I think the developer API could have been better highlighted by this HN post. Puter's actually doing a bit more than the Desktop Environment mockup that's visually apparent, and not featuring that seems like a wasted opportunity to pick up some app developers.
I've seen many 'desktop in browser' type demos over the years, but never anything like this. This is impressive on so many levels.
https://kripken.github.io/misc-js-benchmarks/banana/index.ht...
https://wiki.mozilla.org/HTML5_Games/BananaBread
The Half Life "app" above actually just wraps an existing Emscripten port in an IFrame. Puter does provide an abstracted filesystem (and other "OS" features), but I don't think the app above uses that, so it's no different than if you went to `data:text/html,IntralexicalOS!<br><iframe src="https://pixelsuft.github.io/hl/" style="width:50%;height:50%">`.
But actually I think putting together such a simple technical concept that works this well is the impressive part, that hasn't been done before. You can now take any existing web build of any app, and by adding a couple calls to `puter.fs.write()`, deploy it to a familiar virtual workspace where you get multitasking, cloud storage, and interoperation with other apps, for free.