Has anyone here actually tried using it? I'd be interested to hear a comparison between Revery and Electron in terms of ease of use, performance, drawbacks etc. I read through the README but tbh I'd prefer an external opinion.
look at qmoji[1] a mojibar[2] (electron app) clone written in reasonml. The README includes package size, and memory usage comparisons. [1] https://github.com/jaredly/qmoji [2] https://github.com/muan/mojibar
Revery – Native, high-performance, cross-platform desktop apps
111–120 of 129 posts
Re: Revery – Native, high-performance, cross-platform desktop apps
#112Is this targeting the same space as Flutter? That's an enormous amount of work, and can't imagine it being done without a Google-scale level of resources (I'd be happy to be proven wrong, though!).
However, we are like Flutter in that we're implementing all the UI components from scratch. It is a lot of work but I've been shocked by how quickly things have moved -- I made my first PR a little over a month ago and since then we've gotten: checkboxes, sliders, scrolling, buttons, input components, box shadows, overflows, etc. as well as a ton of performance/bug fixes. Our example apps went from rendering images to including an interactive version of Conway's Game of Life seemingly overnight.
Re: Revery – Native, high-performance, cross-platform desktop apps
#113Earlier quoted context omitted.
The project looks interesting, but the licensing change from MIT is a bit worrying: "Oni 2 is licensed under the CC-BY-NC-4.0 license." CC licenses are not a good fit for software in general - and "non commercial" isn't very clear. Making something available at zero cost doesn't necessarily make it "non commercial". Ed: and it means that code snippets/widgets from oni2 can't be used elsewhere without careful licensin…
Oni 2 creator here. Agree with your concern 100%. We're working to review the license and come up with a better fit with more clarity. We really just want a license that says - free to use for educational / non-commercial purposes, but a license is required to use in a commercial environment. No real "drop-in" licenses to support this, unfortunately. Some additional thoughts about our considerations here: https://www…
It sounds like a dual license with AGPL might be what you want?
Just an example, if I work for a year on a free/gratis project using and modifying oni2 - I'll have a disadvantage working in a commercial setting on similar projects - I can't use my own snippets, mixed with oni2 code in my commercial (even if open/free) project...
I think the "shareware" model might work (and eg: giving free licenses for education, non profits etc). But I'm not sure how the "user freedoms" for code can work at the same time as there are restrictions that are unclear.
Maybe the best one could hope for is a source-available license a la tarsnap. But that would pretty much make oni2 a closed (no external collaborators) project.
Maybe that's your intention?
Re: Revery – Native, high-performance, cross-platform desktop apps
#114Earlier quoted context omitted.
What's "modern"? In no particular order (all of the below I've seen broken in numerous ways by non-native GUIs): - Does it receive proper keyboard focus? - Does it respond to keyboard input? - Does it adhere to the OS color theme? - Does it break OS accessibility features (high contrast/voice over/invert colors/grayscale/font sizes/etc. etc.)? - Does it respect scaling and resolutions? - Is font rendering consistent…
The average app today (see discord) is: Yes Yes Optional, but a nice to have No Yes Yes Yes Yes Yes Yes No (but it needs to be improved) No ( it needs to improve though Same with above What is HIG? Yes Yes
Electron apps often enjoy many of the things in the list for free because it's essentially a browser window disguising itself as an app. And browsers get a lot of stuff "for free" from the OS (not without issues, of course).
[1] https://en.wikipedia.org/wiki/Human_interface_guidelines
Re: Revery – Native, high-performance, cross-platform desktop apps
#115Disclaimer, I've only ever dabbled in these projects and cannot attest to the quality, package size, speed, etc. Just figured I'd share
Re: Revery – Native, high-performance, cross-platform desktop apps
#116Earlier quoted context omitted.
> The number of times I've ever heard anyone complain that VSCode reimplements clickable regions that look exactly the same on all platforms instead of using some ugly stock Windows buttons: zero. The number of times I've been annoyed that Electron apps break some semi-obscure but nevertheless important macOS feature: quite high, and it would be much higher if I hadn't sworn off Electron apps long ago.
I'm curious what kind of features you're referring to.
Re: Revery – Native, high-performance, cross-platform desktop apps
#117Earlier quoted context omitted.
I'm curious what kind of features you're referring to.
Text input lacks expected shortcuts, multi-select, good undo/redo, spellcheck underline, grammar check, smart features, text replacement, transformation conveniences, etc. All menus lack basic/expected items, both in the menu bar to contextual menus (if they exist). No standard find and replace. Missing options for pattern matching, diacriticals, case sensitivity, weird UI, etc. if this is included at all. Low-access…
Re: Revery – Native, high-performance, cross-platform desktop apps
#118Well the example application seemed fairly solid, well worthy of a screenshot. I would like something like this for some simpler custom tools every now and then. It does seem to exhibit the usual custom rendered app issues. I suppose it is constantly redrawing the screen, as it seems to have constant cpu usage even when doing nothing, so not laptop friendly (though perhaps fixable still). Some of the widget seem fair…
Re: Revery – Native, high-performance, cross-platform desktop apps
#119> Revery is the same - aside from platform-specific behavior, if your app looks or behaves differently on another platform, that's a bug! I want my applications to feel like they belong to the platform and not identical on every platform
Then use the wxWidgets library. It has bindings for many languages, so it probably has bindings for yours.
But more recent applications like SublimeText try a unified look in all platforms, and as long as it is fast enough and crash free, I am OK with that.
Re: Revery – Native, high-performance, cross-platform desktop apps
#120Earlier quoted context omitted.
> Yeah, Electron already does that. Electron apps don't look like they belong on the platform.
On Linux, what does? There isn't a defined platform to begin with outside of the syscall ABIs.