The main reason I went with electron is that fantastic system tray integration. System tray integration with the native .Net is an unholy mess. The windows 10 UWP apps do not have a way to integrate with the taskbar. WPF requires interop with win32 code or a half baked 10 year old depreciated WinForms component.
And none of the native solutions allow me to shape and design the UI like I want to without compromises.
Electron may not the best in every aspect. But it was the only sensible and feasible choice for what I wanted my app to behave like.
For me, a small performance hit is justified for being able to make exactly what I want.
I have tried nighthawk, and though it shows promise it needs a little work. Settings is not an obvious place to add music from and when I did add my music folder it didn't seem to look in any subfolders I had.
I was quite surprised by the CPU and memory usage though. Surprisingly lean. I ran a bunch of music players along side it and it averaged the same memory and CPU as colibri, vlc, foobar, and swinsian. Clementine stood out from the pack as an absolute hog, burning up my desk with 33% cpu usage, where nighthawk and the others stayed below 1% most of the time.
UWP has access to the notification area, with badge and toasts to control interaction. The term systray has gone away, as Microsoft reaims developers to use that area differently.
That is mostly because as far as I know, other than ubuntu no distro supports tray icons. And even then it is basically a workaround. Gnome removed support in 3.20 and I don't know about other linux desktop environments.
But for windows, which i primarily use, it is better that what .Net gives me. And it apparently works flawlessly on mac.
And none of the native solutions allow me to shape and design the UI like I want to without compromises.
Electron may not the best in every aspect. But it was the only sensible and feasible choice for what I wanted my app to behave like.
For me, a small performance hit is justified for being able to make exactly what I want.