Another Desktop tech stack enters the scene
Another desktop tech stack enters the scene
As mentioned in my last blog post, I’m currently experimenting with different tech stacks on the desktop.
That last post compared Swift + Rust, KMP + Rust and Flutter + Rust running on a Mac.
The result of this experiment was that the Flutter + Rust combination did quite a good job in terms of RAM and CPU usage while having some downsides on the bundle size side.
In addition to the Process Explorer I’m currently working on a bunch of other desktop applications.
One of those is a Proton mail client. Proton internally is already working on native clients but currently Proton’s official desktop client wraps its web application in Electron. It works, but I am not happy with its performance, memory use, or integration with the operating system.
I got so annoyed that I decided to build my own. Proton has open-sourced its clients, and its newer mobile architecture puts shared application logic in a Rust SDK with native UIs on top.
The official iOS and Android clients already use this approach. Native desktop clients appear to be in development as well.
Using that shared Rust library as a base made it really “easy” for me and my AI to build a Flutter application on top of it.
I don’t plan to release that one but I use it as a daily driver and it works and looks really nice.

Then Linux happened
I’m currently (again) in a “I’ll give Linux another shot” phase. My thinking: For all the tools that are missing I create a version myself. Easy! 😁
Read more...

