HACKER Q&A
📣 SirensOfTitan

What toolkit to build a cross platform native app for fun?


I'm looking to start a little hobby work on an idea I have, and want to build an application that has the potential of being cross platform.

I am very experienced with React, have shipped applications using Swift/Obj-C on the app store. I want to build something that has the potential to be fast on multiple (particularly full OS) platforms (mainly so I can throw this work to my various friends to dogfood).

Fun is probably more important than cross platform. I want to enjoy myself.

What would you recommend around UI toolkits nowadays? The options I'm thinking about currently are:

1. Common code in Rust or something, UI code in native platforms. 2. React Native for Windows/Mac. 3. Revery (ReasonML/OCaml UI library built for onivim): I've been wanting to play with this for a while, only downside is they don't support M1 natively yet, and an M1 computer is my daily driver.

The downside of JavaScript projects like in (2) is that I deal with those daily for my main work, and I hate package managers, cross compiling, babel, etc etc, they vastly reduce the fun.


  👤 mimixco Accepted Answer ✓
I don't think there's any escape from the ugly world of packaging if you're going cross platform. And, can I ask, why does it have to be native? IMHO, the "right" (easy) way to do cross platform apps today is to do them with web technologies, like Spotify. They have an app that runs everywhere and, at the core, is just HTML/JS/CSS. That's truly cross-platform and, to be honest, the packaging (we used Electron for ours) isn't that terrible.

I think you'll find native UI coding for different devices is a nightmare while HTML/JS UI coding for different devices is 99% sameness.