Deno Desktop

docs.deno.com

725 points by GeneralMaximus 9 hours ago


qudat - 5 minutes ago

> Bindings are not IPC. The Deno runtime and the rendering backend run as threads / processes inside the same address space (CEF) or coordinated process group (WebView). Calls go through in-process channels, and the backend dispatches them from its run loop. -- https://docs.deno.com/runtime/desktop/bindings/

I don't understand how the coordinated process group works. Doesn't that mean this multi-process mode it must be IPC?

leleat - 7 hours ago

> Shared CEF runtime across apps. Every app currently bundles its own CEF copy. A managed shared runtime would drop binary sizes to a few MB per app. On the roadmap.

This[0] sounds interesting. I am not familiar with CEF, so I wonder how the versioning works. When different apps require different versions of CEF, do we just essentially end up with the electron model where every app bundles their own browser (just slightly less bad). Or is there still an advantage to a "shared runtime" in that case?

[0]: https://docs.deno.com/runtime/desktop/comparison/

bobajeff - an hour ago

I'm happy to see this I see that this provides CEF, Webview and Raw * backbends but it would be nice if there was also a launch in browser option (like WebUI has). To me that has the best tradeoffs if you want to avoid the mess that is webkitgtk but still not ship (and be in charge of updating) a chromium engine with your app.

* https://docs.deno.com/runtime/desktop/backends/

sheept - 8 hours ago

I was wondering how this integrates with Deno's permission system, which is one of its biggest strengths especially for letting agents run amok on your device.

The CLI reference page[0] notes,

> The permissions you grant at compile time are baked into the compiled binary:

I think it would be nice if this could be surfaced to the user somehow, like letting the user know and decide which permissions they want to give access to.

[0]: https://docs.deno.com/runtime/reference/cli/desktop/#runtime...

- 41 minutes ago
[deleted]
40four - 2 hours ago

Deno continues to impress me. It’s honestly been quite a while since I started a new project without it. It has fully won my support over Node.js, the ecosystem has really matured nicely. I don’t know how often I’ll use this feature, but it’s really nice to have the option!

SpaceL10n - 2 hours ago

I think the last time I tried Deno for desktop it didn't allow for fullscreen webview apps. that was a showstopper for our kiosk apps. I'll have to revisit that issue and see if it's resolved now. I'm glad to see Deno continuing to march on.

solarkraft - 8 hours ago

This is a smart thing to ship. For me it would totally be a consideration when deciding on a platform to use.

jorisw - 8 hours ago

> Web technology is the most widely-known UI toolkit in the world.

Poor choice of words there IMHO.

The reason Electron apps get a lot of flak is because they are everything _but_ a UI toolkit. They consistently miss the mark in adopting UI patterns from their host OS.

Web tech is just web tech. Yes it will allow you to render a button, but even unstyled, the button won't necessarily look native to the OS, and will vary between browsers.