I'm a solo developer making a VPN app for iOS, Mac, Android, and Windows (https://wallpunch.net/download/). Currently all four versions are written using native code, but every time I want to change something on the UI a large amount of work is required. Since I am planning some major UI changes, I figured first rewriting the UI code to be cross-platform would end up saving me time. It would also make it easier to eventually create a Linux version too. Based on the research I've done so far React Native and Flutter seem like the two top options. However I'm not sure which is best for my specific use case:<p>1. The app UI is very simple. Buttons, lists, input boxes. That's about it. Frontend performance is not particularly important.<p>2. As a VPN app, a large chunk of custom native code is required for each platform to link up with the native VPN-related APIs, so this must be easily integrated with the UI framework.<p>3. I would like to limit the amount of added dependencies and links in my build chain as much as possible.<p>4. Once rewritten, I hope it will be easy to find freelancers to implement minor UI changes in the future.<p>Any suggestions?
I think a good alternative is Tauri 2.0. With this new version, you can even distribute on Android and iOS.
It’s similar to Electron. It uses Rust (or JS) for APIs and JavaScript for the frontend.