It is a good solution for some apps but if you need to store data locally, use push notifications, run something in the background or access any native APIs you have to go with a native app.
All major browsers can do this - with the exception of running something in the background I guess. But that is exactly the sort of usage scenario where an Electron app is the worst choice. Coding a separate utility with no GUI would be the sane thing to do here, not put whole browser stacks into memory.
You’re actually right, by now browsers have APIs to do most of the things apps do. Technically you could convert most apps to websites. I guess as a user I just don’t want all my apps to open a tab in my browser. I want to move apps between virtual desktops and monitors independently and I don’t want my app’s window to be clattered by all the menus from my browser. On mobile I also prefer switching between apps than between different tabs. For me the best compromise is:
for system tools that don’t have to be cross platform and critical apps write native apps
for small/medium cross platform apps use webviews like Webview2 or Tauri
for big apps like Teams or Discord just use a website
I guess as a user I just don’t want all my apps to open a tab in my browser. I want to move apps between virtual desktops and monitors independently and I don’t want my app’s window to be clattered by all the menus from my browser.
Do you know any websites that integrate into Linux desktop and Android like native apps? I mean I can run it from cmd/icon, and it opens as new window without any decorations? I never saw it but if it’s works fine it’s an interesting option.
So I checked and my app done with Tauri uses 50MB of RAM. Simple PWAs I’ve checked using about:memory in Firefox use 40-50MB. Native apps done with egui or iced use ~25MB. The difference is really small and taking into account all the advantages of Tauri (more mature framework, easier packaging, better DX, better components library) I’m not very motivated to learn a native library just to save 20MB of RAM. PWA would be an interesting option (very similar to Tauri but maybe with easier distribution) but in the near future I want to work with Android Auto so I will need to work closely with native Android API and I already know how to do it with Tauri.
And the extension requires a package from a 3rd party repo. Probably that’s why I missed it until now. It works nice on Android though. Maybe I should do a PWA… But it’s like… learn new tools, host it somewhere… I will think about it. Thanks!
It is a good solution for some apps but if you need to store data locally, use push notifications, run something in the background or access any native APIs you have to go with a native app.
All major browsers can do this - with the exception of running something in the background I guess. But that is exactly the sort of usage scenario where an Electron app is the worst choice. Coding a separate utility with no GUI would be the sane thing to do here, not put whole browser stacks into memory.
Pretty sure PWAs can run in the background.
You’re actually right, by now browsers have APIs to do most of the things apps do. Technically you could convert most apps to websites. I guess as a user I just don’t want all my apps to open a tab in my browser. I want to move apps between virtual desktops and monitors independently and I don’t want my app’s window to be clattered by all the menus from my browser. On mobile I also prefer switching between apps than between different tabs. For me the best compromise is:
All this is already possible with most browsers.
Do you know any websites that integrate into Linux desktop and Android like native apps? I mean I can run it from cmd/icon, and it opens as new window without any decorations? I never saw it but if it’s works fine it’s an interesting option.
Those are called Progressive Web Apps (PWA). You can use firefox to add the website to your desktop like this: https://developer.mozilla.org/en-US/docs/Web/Progressive_web_apps/Guides/Installing
Once you do, when you open the app it should have just the website without the tabs and everything else firefox does.
So I checked and my app done with Tauri uses 50MB of RAM. Simple PWAs I’ve checked using
about:memoryin Firefox use 40-50MB. Native apps done with egui or iced use ~25MB. The difference is really small and taking into account all the advantages of Tauri (more mature framework, easier packaging, better DX, better components library) I’m not very motivated to learn a native library just to save 20MB of RAM. PWA would be an interesting option (very similar to Tauri but maybe with easier distribution) but in the near future I want to work with Android Auto so I will need to work closely with native Android API and I already know how to do it with Tauri.And the extension requires a package from a 3rd party repo. Probably that’s why I missed it until now. It works nice on Android though. Maybe I should do a PWA… But it’s like… learn new tools, host it somewhere… I will think about it. Thanks!