Live data from Hacker News

NeutralinoJS: Lightweight Electron alternative using native browser controls

neutralino.js.org

151–160 of 200 posts

Re: NeutralinoJS: Lightweight Electron alternative using native browser controls

#151
post #114

Earlier quoted context omitted.

So an "application" that literally just displays Hello World and no indication of uptime. Right, I'm convinced.

It shows that the framework itself only uses 60MB and implies any higher usage is due to the application built on top of electron. I'm not sure why uptime matters unless you're assuming there are memory leaks?

What derefr said about Chrome holding on to memory, and additionally memory leaks are absolutely a concern for related reasons.

(Regarding uptime, it's not at all uncommon for Chrome's memory usage to double or even triple overnight. Partially a function of the websites you have open, sure, but also partially a function of Chrome itself).

Re: NeutralinoJS: Lightweight Electron alternative using native browser controls

#152
post #101
post #48

I feel like nobody cares too much if they’re running one Electron app; people do have the headroom for an extra 1-2GB of RAM usage. The problem comes when they run several Electron apps at once, and each comes with its own “base” overhead (i.e. the runtime memory consumption of the browser-runtime as a whole, independent of how many render contexts are open.) Chromium is built to share a lot of things between tabs ef…

Given that everyone brings this up every time Electron is mentioned, and Electron apps keep proliferating, I expect a future version of Windows and macOS to have Chromium bundled with the OS. There will be some platform independent open standard that Electron will use under the covers. Native desktop apps are never coming back. It will either be Electron or mobile apps emulated on desktops.

We had that in Windows 98, it was Active Desktop. It was bloatish and a lot of people disabled it in order to get far more cycles. Heck, IE and Explorer.exe were the same. http://toastytech.com/files/throboff.html

KDE3 did the same with KParts, but it was several times better.

Re: NeutralinoJS: Lightweight Electron alternative using native browser controls

#153
post #149

Earlier quoted context omitted.

You can use Sciter in C++, Rust, Go, Python, Delphi, C# and D projects : https://github.com/sciter-sdk

You can't write your GUI in those languages.

> You can't write your GUI in those languages.

What do you mean by "write GUI"?

If to declare DOM structure then HTML is for that.

If to initialize DOM structure from code at runtime then this (C++ here):

   use namespace sciter;

   element root = window.get_root();
   element div = element::create("div", L"Hello world");

   root.append(div);

   div.attach_event_handler(my_controller);
Or do you mean something else?

Re: NeutralinoJS: Lightweight Electron alternative using native browser controls

#154
Neutralino offers a lightweight and portable SDK which is an alternative for Electron and NW.js also with many advantages. No extra dependencies are required. SDK is fully portable. Debug applications using a web browser. An uncompressed Neutralino app is only ~5MB and compressed app size is ~1MB.

Re: NeutralinoJS: Lightweight Electron alternative using native browser controls

#155
post #101

Earlier quoted context omitted.

Given that everyone brings this up every time Electron is mentioned, and Electron apps keep proliferating, I expect a future version of Windows and macOS to have Chromium bundled with the OS. There will be some platform independent open standard that Electron will use under the covers. Native desktop apps are never coming back. It will either be Electron or mobile apps emulated on desktops.

Current version of Windows already have Chromium in the form of new Edge and Microsoft seems to start pushing progressive web applications. At least they made good integration with system for them. So, perhaps, soon we will have PWAs instead of bunch of electron apps each carrying its own Chromium.

PWAs can never fully substitute native applications. It's difficult to access hardware and impossible to call operating system functions from a PWA. Applications that do something interesting tend to have a native library behind the frontend that does performance-sensitive work.

Re: NeutralinoJS: Lightweight Electron alternative using native browser controls

#156
post #149

Earlier quoted context omitted.

You can't write your GUI in those languages.

> You can't write your GUI in those languages. What do you mean by "write GUI"? If to declare DOM structure then HTML is for that. If to initialize DOM structure from code at runtime then this (C++ here): use namespace sciter; element root = window.get_root(); element div = element::create("div", L"Hello world"); root.append(div); div.attach_event_handler(my_controller); Or do you mean something else?

Whoa... I didn't know it let you do that! In that case that's quite interesting. It opens the potential for using the web renderer but not having to code everything in JS.

Re: NeutralinoJS: Lightweight Electron alternative using native browser controls

#157
post #147
post #109

Earlier quoted context omitted.

>I'm not sure what Discord uses because I only run it in the browser Me too, and you just made me realize, there already exists a system for running Electron apps in a shared instance of Chrome, and it's installed on almost everyone's computer! You just... open the web version, in Chrome :)

Mind you, there's (sometimes a little, sometimes a lot) more to Electron than a webview. Some apps are running quite a bit of un-sandboxed native code—sometimes even forking off other native processes†—to do what they do. Keybase is, IIRC, one of the apps that are quite large on the "native" side. † I once designed a system that has Electron install an Erlang release to the client, register it as a service, and start…

That's fantastic. I wonder if an elixir Phoenix / liveview use case with such a setup is reasonable now that elixir has releases. I think client native nifs are also not out of the question with the better tooling that comes out of modern langs like rust, nim, and my favorite zig.

Re: NeutralinoJS: Lightweight Electron alternative using native browser controls

#158
post #152
post #101

Earlier quoted context omitted.

Given that everyone brings this up every time Electron is mentioned, and Electron apps keep proliferating, I expect a future version of Windows and macOS to have Chromium bundled with the OS. There will be some platform independent open standard that Electron will use under the covers. Native desktop apps are never coming back. It will either be Electron or mobile apps emulated on desktops.

We had that in Windows 98, it was Active Desktop. It was bloatish and a lot of people disabled it in order to get far more cycles. Heck, IE and Explorer.exe were the same. http://toastytech.com/files/throboff.html KDE3 did the same with KParts, but it was several times better.

Microsoft was ahead of its time in this. In 2020 we are ready for it. Moore's law has caught up.

It would be less efficient and more wasteful to continue things as normal where every program has its own Electron. People already use Electron type apps. New ones are being made every day. That's not going away. If Microsoft and Apple put this in the OS, it would decrease the user's resource utilization. It's a net win for everyone except maybe chip manufacturers.

As for desktop Linux, GNOME3 already works like Active Desktop did. The whole shell is JS (and the GObject mess down below). I have used a lot of desktop environments. I've been skeptical of the JS eating the world trend. But I have to admit it's smooth. I had bad experiences with KDE (Qt/C++). Not only does it look ugly, it segfaults constantly.

Would it have been better to make a desktop environment in something more, uhh, professional like Go or Java? Of course. But that's not what the crowd decided. There's nothing quite like React for native desktop GUIs. Regardless of your opinion of JS, you have to admit that the React way was a game changer. Since there are no alternatives, the path of least resistance is to simply use React as is for desktop applications, which is exactly what has happened.

Re: NeutralinoJS: Lightweight Electron alternative using native browser controls

#159
post #61

> There are some drawbacks such as Windows edition is based on IE etc. This alone is a major reason to use Carlo[1] instead, which is arguably more secure (by virtue of not using IE) and produces even more lightweight bundles than NeutralinoJS. 1. https://github.com/GoogleChromeLabs/carlo

Is Carlo maintained? The last commit in master was eight months ago.

It's not.

(I was part of the team that launched it.)

Re: NeutralinoJS: Lightweight Electron alternative using native browser controls

#160

Earlier quoted context omitted.

It doesn’t have to be Chromium. It just needs to be a browser that can be linked and launched as an app.

It’s called a “web view” and it already exists in all of the platforms.

WebView is Chromium on Windows now. The holdout is Apple. They are not known to capitulate to industry trends. Maybe this will be the first one they are forced into by popular demand.
Post reply on HN