logoalt Hacker News

websiteapiyesterday at 12:19 AM7 repliesview on HN

jeez so many ways to do things -

react native flutter ionic

and now swift.

it seems dart + flutter still is the only way to do all targets (cli/web/iOS/android/desktop) though. react native being very close (albeit needs electron).

it surprises me that this hasn't been perfected. surely some big company would look at their balance sheet and see it's worth it even if you take a 10% performance hit on each platform, assuming you can share 90% of the code.

does swift have a good web story or is wasm the main way? desktop?


Replies

topspinyesterday at 3:19 AM

> it surprises me that this hasn't been perfected

It shouldn't. It's never really been perfected across native GUI APIs after 40+ years: just various degrees of "good enough," plus fobbing it off to web stacks.

Anyhow, I've been playing with gioui, which is golang rendering in a lightweight <canvas>-like. Really nice: fast, small, cross platform GUI with just Go. Scale expectations appropriately.

LorenDByesterday at 1:00 AM

Qt/QML can do all those targets as well (although it is admittedly jankier on mobile than Flutter or Swift would be).

yk09123yesterday at 12:25 AM

I find Kotlin Multiplatform to be far and away a better experience than flutter

show 4 replies
kenferryyesterday at 12:33 AM

The bigger hit than performance is usually user experience quality and “write once debug everywhere”.

show 1 reply
SchwKatzeyesterday at 1:19 AM

There is also Dioxus

show 1 reply
cyberaxyesterday at 12:50 AM

React Native doesn't use Electron on mobile, it's a misconception. But it does depend on interpreted JavaScript on iOS and Android.

show 1 reply
wahnfriedenyesterday at 12:34 AM

Swift on WASM also got very good last year. SQLite in WASM too.

Flutter is still bad on iOS and macOS. No Liquid Glass (except some weird hack attempts that look and behave badly). Liquid Glass isn't an optional decoration, it's the name of the new system-wide UI. Leaving it out of your app is like committing to iOS 6-era skeuomorphic design after iOS 7.

Edit: Several cross-platforms frameworks can do Liquid Glass:

- SwiftUI by using Skip for Android

- SwiftCrossUI

- React Native

I'm glad to see that I can finally target iOS as the first-class citizen, using Apple technologies, and then run that code on other platforms. Instead of having to use frameworks that treat iOS as secondary when it is by far the biggest money-maker for most apps.

show 3 replies