Live data from Hacker News

New Architecture is here

reactnative.dev

111–120 of 127 posts

Re: New Architecture is here

#111

I have been working for the past four years exclusively on react-native apps and their backend API, from bootstrap to publishing, adding new features every few months and maintaining the apps. It was a mixed experience. When I migrated to expo two years ago, many problems were solved but not all. But I still encounters bugs and problems with many common dependencies. It is not uncommon to have bugs on certain Android…

Having used both RN and Flutter quite a bit I also much prefer Flutter, despite being a big fan of Typescript and React for the web. Flutter just feels like a much more polished and stable platform built explicitly for purpose and I've never had any performance issues.

Flutter on the web is an absolute JOKE though. React native web & react-strict-dom seem far superior. The moment you want to support web as well, react-native blows flutter away.

Also how's the accessibility on Flutter? I'm pretty skeptical that it's going to have decent accessibility given the game-engine style rendering.

Re: New Architecture is here

#112
post #28
post #16

Earlier quoted context omitted.

No? Most modern apps these days _are_ just web apps. Why does it need the overhead architecture of running full standalone applications when a web clip works just as well? Plus there's no need for updating. The problem at the time was multifaceted. The devices couldn't handle it, the network couldn't handle it, and webkit was still relatively limited. But it did work. https://9to5mac.com/2021/06/03/remembering-apples…

I have never, ever used a web app that runs as well as the native app.

Oh, well I can provide an example. Music League’s PWA on iOS is quite a bit better than the app — partly because you can avoid the ads!

Performance isn’t incredible, but neither is the “native” app (95% sure it’s react native or similar), which frequently dips below 60fps.

Re: New Architecture is here

#113
post #27
post #22

Earlier quoted context omitted.

If that's the case, then why does nearly every company have a native app in addition to their website? Surely, they could save a lot of time and money by just not building and maintaining the app.

Because it's a pain in the ass to distribute. And there's not much for support integrated into mobile operating systems for seamless browser windows. MacOS is getting there kind of lately with safari being able to turn web pages into apps. But there isn't really built in mechanisms for that: https://www.macrumors.com/2023/06/14/how-web-apps-work-macos...

The funny part is that it’s actually not a pain in the ass to distribute. On iOS, saving the current link to the homescreeen installs the PWA (if available). You don’t have to do anything other than tap a button in the share menu. iOS treats it like an app, showing it in the app switcher and search, etc.

People just don’t know it’s an option. And as you say, there are fewer native APIs available to it.

Re: New Architecture is here

#114

I'm a Flutter dev since 2018 and I am honestly not sure if Flutter or React Native still make sense in 2024 and onwards. When they emerged, the mobile development scene was completely different than today. Today, we have Swift UI and Compose, both are pretty solid. I'm not sure if it's the consensus amongst mobile developers, but I believe that on the mid/long run you will be better off - even if you write things twi…

Native dev here throughout my career, I always start projects in both native. Now, it’s SwiftUI and Jetpack Compose. I don’t do cross platforms ever, it doesn’t appeal to me. I don’t know why though.

Re: New Architecture is here

#115

Earlier quoted context omitted.

Having used both RN and Flutter quite a bit I also much prefer Flutter, despite being a big fan of Typescript and React for the web. Flutter just feels like a much more polished and stable platform built explicitly for purpose and I've never had any performance issues.

Flutter on the web is an absolute JOKE though. React native web & react-strict-dom seem far superior. The moment you want to support web as well, react-native blows flutter away. Also how's the accessibility on Flutter? I'm pretty skeptical that it's going to have decent accessibility given the game-engine style rendering.

I agree I would not choose Flutter if web is a primary platform for what you're doing.

Re: New Architecture is here

#116

Earlier quoted context omitted.

Compose UI has the potential answer there, as well: https://www.jetbrains.com/compose-multiplatform/

Great, another one. Recently someone else was touting something called avalonia for .net? Then there are older ones that still exist, like Kivy and QT. These folks should be working together on just a few open-source projects :-D. Trying to support every mainstream platform is a huge undertaking and as mentioned in this thread, few succeed, and even fewer over the long term.

I think that's an absolutely reasonable reaction. I can only say that, as someone that primarily works on Android, I'll of course prefer Compose UI since it's technically the "native" solution for me already. And while reading further, keep in mind that my views are going to be biased towards Kotlin and such for that reason, of course. There's also the additional disclaimer that it's still relatively early days, and the developer experience isn't perfect out of the box with every platform, just yet.

By opting for Kotlin and Compose UI, in addition to being a first-class citizen on Android, I gain the ability to share code with many other platforms to any degree I need. That is, just the app logic can be done in Kotlin while keeping the actual UI in whatever each platform prefers (UIKit on Apple platforms, Swing on JVM, etc.), or it can be entirely done with Compose UI (which usually means being rendered via something like Skia). And even if you adopt Compose UI, there are different degrees to which that can be applied; Compose UI can output either DOM elements or render to a canvas for the Web target, for example. (It's actually curious you mentioned Qt. As a day-to-day KDE user, I'm interested in playing around with the possibility of wrapping Qt components with Kotlin/Compose as well.)

No matter what degree of that I choose, it's still going to be more "native" than something like RN. Depending on the target platform, Kotlin will compile down to JVM/Dalvik bytecode, LLVM bitcode/machine code, JavaScript, WASM, etc. RN (last I checked, at least) still relies on running in a JavaScript engine at the end of the day. Flutter will get you closer than RN, but it's still not quite native to any one platform in particular and you're still introducing Dart as another language you need to know. A .NET-based solution suffers a similar problem, and IMO it feels even more out of place on Linux than the rest.

(To be clear, Compose UI has been able to learn a lot from Flutter, as they both originated at Google and both take a declarative UI approach; I largely consider Compose UI to be Flutter's successor.)

Ultimately, it can boil down to this: if you want to support multiple platforms, you need expertise in each. Adding most traditional cross-platform frameworks such as Flutter or RN also means you need expertise in that framework as well. In the worst case, my expertise with Compose UI will remain good for the work I need to do on Android. The worst case for most of these other frameworks is that it becomes irrelevant and you need to learn something else anyway.

Re: New Architecture is here

#117

Earlier quoted context omitted.

Having used both RN and Flutter quite a bit I also much prefer Flutter, despite being a big fan of Typescript and React for the web. Flutter just feels like a much more polished and stable platform built explicitly for purpose and I've never had any performance issues.

Flutter on the web is an absolute JOKE though. React native web & react-strict-dom seem far superior. The moment you want to support web as well, react-native blows flutter away. Also how's the accessibility on Flutter? I'm pretty skeptical that it's going to have decent accessibility given the game-engine style rendering.

This has actually changed a lot recently since everything now compiles down to WASM along with a bunch of other improvements. Flutter web absolutely makes sense all of a sudden in a bunch of contexts.

That is all too before they have even touched bringing WebGPU in so I think in a medium term scenario it will be an extremely safe bet.

Just by way of example Google Earth just did a major rewrite to put Flutter at the heart of their UI precisely because it was a better experience including on web so I offer that anecdote to suggest your info is kind of out of date.

Re: New Architecture is here

#118

I'm a Flutter dev since 2018 and I am honestly not sure if Flutter or React Native still make sense in 2024 and onwards. When they emerged, the mobile development scene was completely different than today. Today, we have Swift UI and Compose, both are pretty solid. I'm not sure if it's the consensus amongst mobile developers, but I believe that on the mid/long run you will be better off - even if you write things twi…

I got my Flutter app running on iOS, Windows, Linux, and Android. The web version is quite serviceable a well. Totally responsive and with good desktop integration on Windows & Linux. For me, talking about the "mobile development scene" is outdated. I want my app to run on every screen. That's either web or Flutter, Swift UI and Compose just don't fit the bill for me. I like both Web & Flutter, depending on the use-case. I tried React Native for Linux and Windows, but found it too complicated to set up, Flutter just worked. Curious if that has gotten better.

Re: New Architecture is here

#120
post #117

Earlier quoted context omitted.

Flutter on the web is an absolute JOKE though. React native web & react-strict-dom seem far superior. The moment you want to support web as well, react-native blows flutter away. Also how's the accessibility on Flutter? I'm pretty skeptical that it's going to have decent accessibility given the game-engine style rendering.

This has actually changed a lot recently since everything now compiles down to WASM along with a bunch of other improvements. Flutter web absolutely makes sense all of a sudden in a bunch of contexts. That is all too before they have even touched bringing WebGPU in so I think in a medium term scenario it will be an extremely safe bet. Just by way of example Google Earth just did a major rewrite to put Flutter at the…

In the end though, it's still rendering to a canvas. Flutter is basically the new flash. If you are in a business segment where lacking best-in-class accessibility could lead to huge ADA lawsuits, I'd steer clear of anything that isn't rendering real DOM elements.

Google Earth is almost like a video game so flutter makes perfect sense for that. If you're building a fintech CRUD app flutter makes absolutely no sense on the web.

With react native web you can share your code with next.js in a monorepo and absolutely blow flutter away in terms of page weight and time to first interaction.

Post reply on HN