Live data from Hacker News

Deno Desktop

docs.deno.com

281–290 of 418 posts

Re: Deno Desktop

#281
post #266
post #261

Earlier quoted context omitted.

The one which OS has to offer. Web is bad everywhere outside of the browser.

I want to have both linux and mac users (but maybe also android, ios, windows). You clearly see the issue.

[deleted]

Re: Deno Desktop

#282
post #66

> 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 sli…

In case anybody else wondered CEF is the Chromium embedded framework. https://github.com/chromiumembedded/cef

The biggest weakness of a framework like Tauri is the choice to target system webviews instead of bundling a browser runtime.

It seems great to be able to cut hundreds of megabytes out of your app installer, but the platform differences wind up being a complete and ongoing pain in the ass.

Tauri support on Windows is phenomenal.

Tauri on Mac runs into lots of WebKit/Safari issues, especially on older Mac machines that have an older engine that doesn't support modern web APIs. Your app can crash or be left non-functional. You'll find out about these runtime bugs in the wild randomly, and patching for some customers can take days, if not weeks.

Linux support is hellish, and it's best to not even try targeting Linux with Tauri.

Tauri is in the process of adding CEF support. It should probably become the default build target for all platforms.

Re: Deno Desktop

#283

I've decided on using a Clojure/Flutter hybrid that gets the best of all worlds. May integrate move from Bun to using Deno here https://codeberg.org/arik/clutter

Care to expand on what this solution is? What is Clojure bringing to Flutter in this case? Ty.

Re: Deno Desktop

#284

Earlier quoted context omitted.

In case anybody else wondered CEF is the Chromium embedded framework. https://github.com/chromiumembedded/cef

The biggest weakness of a framework like Tauri is the choice to target system webviews instead of bundling a browser runtime. It seems great to be able to cut hundreds of megabytes out of your app installer, but the platform differences wind up being a complete and ongoing pain in the ass. Tauri support on Windows is phenomenal. Tauri on Mac runs into lots of WebKit/Safari issues, especially on older Mac machines tha…

I use Wails which is Tauri but for Go and I don't have the kind of issues you're mentioning. Maybe that is a difference between Wails and Tauri but I don't think the system WebView is a significant factor.

Re: Deno Desktop

#285

Earlier quoted context omitted.

Depends on the region, no one where I work has an iPhone or a current Mac, so stuff gets tested on FF and Chrome, and Safari gets thoughts and prayers. We would test on Safari if it were simple, but alas.

Skipping testing on 15% of all devices to save $600? Sounds like a poor business decision.

15% of devices is not 15% of users. From my own experience having a web app that is 99% desktop windows users, why would I care about safari?

Re: Deno Desktop

#286
post #66

> 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 sli…

Just to let you know, CEF was used for Riot and League of Legends client as well [0]. The results haven't been nice, but I'm not aware if this was a problem with the CEF technology itself or other component/processes are to be blamed. [0]: https://www.riotgames.com/en/news/architecture-league-client...

I regularly install and uninstall the league client on Mac based on how I play that game (require fresh installs to raise the playing cost) and their client really sucks. Even freshly installing it, the client inhibits and hijacks mouse clicks from the full screen game when it's open. It took me months to figure out I would have to minimize the game, open and minimize the client (separate app) open, and then clicks would sometimes properly return.

Before that I was closing both and playing a game of roulette. By the the time my game was working, I may have already been reported for being afk and the game ended. Edit: other bugs have included starting to download the game and then signing in afterwards (their UI doesn't stop you) and then download progress disappearing, perhaps hanging, and you having no way to know it for a 40gb file unless over an hour has passed and you check disk size and then realize the client doesn't know how to load it. Start over and do a fresh install again, clear cache etc because their cache of the client still thinks somethings being downloaded even though it's not. Also having chat permanently off, results in weird glitches with friends requests and being unable to add new friends.

Horrible experience. But since the game is so optimized for addiction and dark patterns these days, and sunk cost, its a game I find myself returning to every once in a while.

Re: Deno Desktop

#287
post #211

Earlier quoted context omitted.

I will die on the hill that Java was a good language, and had the potential to leapfrog us from where we are by at least a decade. But it got hobbled by the awful, awful enterprise style culture, cultural misunderstanding of OOP (especially inheritance), and corporation shenanigans (fucking oracle).

I have nothing against java. But for some reason in my experience all the developers using it are low quality, and gave it the reputation it has.

I think this is a selection bias speaking rather than a reasonable reflection of what goes on in the Java world. Some insanely sophisticated and high quality technologies are written with Java.

The problem is like with JS or PHP, it is ubiquitous in many settings. There are a lot of people who can use it because it was the default language taught in CS programs, many corporate settings for decades, or similar. It’s the runtime for android devices. It’s everywhere. Of course you’ll encounter a lot of low quality developers.

Your comment mostly indicates that you haven’t been fortunate enough to encounter the high quality Java devs, not that they don’t exist. They exist and they build world class software that backs massive systems like elastic search, Kafka, spark, or Cassandra.

Re: Deno Desktop

#288
post #66

> 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 sli…

Just to let you know, CEF was used for Riot and League of Legends client as well [0]. The results haven't been nice, but I'm not aware if this was a problem with the CEF technology itself or other component/processes are to be blamed. [0]: https://www.riotgames.com/en/news/architecture-league-client...

On the gaming side, last I checked Steam's client was using CEF too and it doesn't get widespread blame for anything.

No shortage of games using it for in-game browser stuff, too.

Re: Deno Desktop

#289

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/

Wouldn't that just be "Raw"? I.e. start a webserver and ask the system to open the URL. There is no "special stuff" to do in this case like avoid sockets in favor of IPC to a well known webview or package CEF and no real integration to make with dev tools etc after - it's just open socket and serve from prebuilt binary.

Re: Deno Desktop

#290
post #107

Curious to know who is using Deno in anger most days and in production full time? It seems like the choice of JS runtimes exploded over the past few years with that, Bun, etc.

I use it for several applications (frontend, backend, CLIs) in production settings, and it has been excellent. Caveat: I serve small internal teams mostly, some projects only serve Worth noting is that the team has improved compilation features steadily. Every issue I watched last year has been completed and I’m not encountering blockers anymore.
Post reply on HN