Are you really going to use electron for Zotero?
Hello,
On this forum thread we can learn that Zotero will move to electron https://groups.google.com/forum/#!msg/zotero-dev/yy4-q_ZUA4M/dcFYzCWTDAAJ
Is this a definitive choice? I used a couple of electron app, and they didn't feel right: slow to start, UX feel strange, not accessible. I guess it's stuff that can be fixed but that doesn't come for free.
Mainly the memory footprint is insane. Also it seems very strange to launch a Chrome browser for each electron app.
Why not use Qt http://wiki.qt.io/QML_for_JavaScript_programmers? Even Tk seems saner than electrons.
I'm also not sure electron will still be a big thing in 5 years, but I'm pretty sure Qt will still be around.
On this forum thread we can learn that Zotero will move to electron https://groups.google.com/forum/#!msg/zotero-dev/yy4-q_ZUA4M/dcFYzCWTDAAJ
Is this a definitive choice? I used a couple of electron app, and they didn't feel right: slow to start, UX feel strange, not accessible. I guess it's stuff that can be fixed but that doesn't come for free.
Mainly the memory footprint is insane. Also it seems very strange to launch a Chrome browser for each electron app.
Why not use Qt http://wiki.qt.io/QML_for_JavaScript_programmers? Even Tk seems saner than electrons.
I'm also not sure electron will still be a big thing in 5 years, but I'm pretty sure Qt will still be around.
XULrunner was bringing a GUI toolkit, not only a JavaScript runner with a system API.
VSCode (using ~320MB RAM when open!) is impressive but very slow to start compared to native similar editor like TextMate2 (~30Mb RAM) or Sublime.
The issues with Electron are well-known, and I don't think there's any reason to think that there won't be improvements in those areas.
Beyond all the benefits of Electron for development, Zotero simply relies heavily on web technologies to function. When you use Add Item by Identifier or Retrieve Metadata from PDF, or when you save a snapshot, or when you do anything else that uses translators, it uses a browser to perform those operations. While there are ways those could possibly be made to work without a full browser engine, it's a pretty natural fit.
(I think the most promising alternative to Electron is React Native, by the way, but that's not yet a realistic option.)
Does that mean for the future, running Zotero will mean silently running Chromium? Will that imply data privacy issues, sending Google informations about my usage profil?!
I know it is not your fault that Mozilla drops XUL based add-in support, but I hope and strongly recommend that you look for options that respect and protect peoples data privacy! I decidedly do not use google Chrome for that reason.
Chromium isn't Chrome, and Electron isn't just a stock build of Chromium. Among Electron apps, I have Slack and Atom on my machine, and neither has ever tried to connect to Google (other than the safe-browsing endpoint in Slack's case, and Slack clarifies that "Slack does not send any customer data to Google"). Similarly, an Electron-based Zotero won't send user data to Google.
Using those API (localisation, voice recognition, ...) is, of course, optional and alternative can be used.
What is sure is by using chromium you help the "Chrome ecosystem" and therefore participate indirectly to Google web domination.
https://github.com/tropy/tropy
Tropy looks a lot like Zotero in terms of interface and how it stores the metadata (RDF). I have a suspicion that Tropy may occasionally become the next iteration of Zotero after adding styles and PDF support, rendering Zotero obsolete. Am I overthinking?:)
Below is a current vulnerability.
https://www.trustwave.com/Resources/SpiderLabs-Blog/CVE-2018-1000136---Electron-nodeIntegration-Bypass/
XUL is abandoned by Mozilla, Electron will be future for the next decade.
Do you guys really think that a framework without maintenances will have better privacy protection and security than the latest one ?
About the Android question above, I understand that concern. Android options are even more limited than iOS, though its global install base dwarfs iOS. I use Zoo for Zotero on my Samsung tablet and Papership on my iPhone (I bought a Samsung tablet rather than an iPad for several reasons, one of which was price). While I'm extremely grateful for Zoo for Zotero, the Android platform has nothing even remotely comparable to Papership.
I'm not a developer, but, from what I can see, it doesn't look like it's possible to port anything developed in Electron to mobile (iOS or Android). At least, not with the ease that React Native would allow. But maybe building for Electron is more straightforward than building in React Native...dunno!
At any rate, I'm extremely grateful to the developers for the desktop app. I love Zotero.
https://radicle.community/t/consider-tauri-instead-of-electron/164
Please let us know if there is a way/place to build an early testing version of this. Many thanks.
We are planning to move to a more current version of the Firefox base later this year.
With FreeBSD in particular, the Windows binary is hit-or-miss in Wine (when it does work, everything works; when it does not work, nothing works), and the build process with Linuxulator is cumbersome with no guarantee of success. There are various posts about Zotero in FreeBSD in these forums, GitHub, and the FreeBSD Forums.
I (for one) would be willing to pay to use a native binary on FreeBSD (+ other *BSDs), and I would not be surprised if others think the same.
All that aside, keep up the great work. Zotero is fantastic. We simply need it in the *BSDs, too :)