| ▲ | Relm4 makes developing beautiful cross-platform applications idiomatic(relm4.org) | |||||||
| 13 points by Bluestein 5 days ago | 7 comments | ||||||||
| ▲ | slacknatcher12 an hour ago | parent | next [-] | |||||||
Reading the documentation, I just notice lots of familiarity with my own solution using haskell and gi-gtk4. I think that anybody that read https://bichanna.github.io/posts/tea-time/ will get the same ideas. This basically boils down to: 1. Use a native widget system such as GTK (I evaluated Qt too) 2. Wrap widgets into a component datatype that is aware on how to update the widget when the props/model changes. 3. Define a dispatch closure that is passed to widget that accepts messages. Actions on the widgets should use this instead of mutating a reference. 4. That dispatch closure is component aware and it will call the update function on all the widgets. There are some extra complications for long running computations but the model is a good base to build on. I wish the best to the relm team, most likely I will use them when programminmg in rust. | ||||||||
| ▲ | WD-42 an hour ago | parent | prev | next [-] | |||||||
I used plain gtk-rs for my last project and there is definitely some friction between rust and the gobject system. I think for my next project I will give relm4 a try. Apparently you can always drop back to gtk-rs if needed. | ||||||||
| ▲ | pitched an hour ago | parent | prev | next [-] | |||||||
This is Gnome/GTK, not cross-platform like I would have expected. A Linux-first approach. I’m happy that this is the world we’re in now but expect it still to be royal pain to get a build running on Windows. Huge congrats to everyone involved if not! | ||||||||
| ▲ | comex an hour ago | parent | prev | next [-] | |||||||
> Built on GTK, Relm4 runs on bare metal with no additional runtime in between. So, not native in the sense of using or even resembling the native UI toolkit. | ||||||||
| ▲ | thataccount an hour ago | parent | prev | next [-] | |||||||
I had to read the comments to figure out whether this was AI or not. I guess that's a sign of the times... | ||||||||
| ▲ | ThrowawayTestr an hour ago | parent | prev [-] | |||||||
Why no examples of how "beautiful" this library is? | ||||||||
| ||||||||