-
Notifications
You must be signed in to change notification settings - Fork 45
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Consider Electron for GUI #131
Comments
Electron actually works beautifully with React, and creates executable for the relevant OS distributions (macOS, Windows, Ubuntu). And React is grand because it allows you to develop on a component level which can reduce your overhead especially because you all separated out your Qt development into widgets (which was marvelous). That way development can be more component/widget level at a time instead of having to transition the entire project over at once. This is if you are considering React. Obviously there are a ton of other frameworks (Angular being right up there with React, or Vue). And you can still maintain your general back-end efforts using something like Flask to bridge your UI to you API! In short i definitely agree with you in potentially transitioning the UI to a web framework of some sort. |
thanks for the feedback on this! and yes, I was thinking React would make sense. I experimented with Node-API, cmake.js, and electron a couple weeks ago and I'm now slightly more convinced that this will be pretty straightforward and interesting. |
(from a linux distro perspective) electron is a massive pain to deal with. It's most optimal to be able to use the system electron instead of a bundled version, and many electron-based packages make it very painful to un-bundle electron. |
that's a good thing to keep in mind - I am not very familiar with distros and OS package managers. Would using something like electron-builder not be as straightforward as it sounds? Is the issue with the tight bundling a matter of size? |
it may help for some distros, but I can't speak for all of them
I think mostly size, not having duplicate things across the system, allowing for security updates to be handled, and allowing for compatibility patches to be added as needed. There's probably other reasons too |
Ok, thanks for putting this on the radar |
I'm not sure about this, but Qt 5 is becoming a pain to deal with for builds (doesn't work with GCC 11) and Qt has been pretty routinely complained about by both professionals and students that have worked with this project. Even though I'm very familiar with Qt, I really like the idea of programming the UI with web technologies and I think that will make UI development easier for students/interns as well.
I guess this would require the core library to be free of Qt stuff and to have a JS package. A nice bonus would be that pure JS plugins would then be pretty straightforward.
The text was updated successfully, but these errors were encountered: