4 ms·
React Native is slow. Hermes VM doesn't even have JIT. If the majority of your app is native code and only a few places are stitched together via JS code that
by faangguyindia 9d ago
React Native is slow.
Hermes VM doesn't even have JIT.
If the majority of your app is native code and only a few places are stitched together via JS code that runs in the Hermes VM, then React Native is suitable for you.
Look at V8 vs. Hermes performance.
We use Flutter; we rarely need to write native code. We have three apps: Symbiote workout app, CalorieCodex, an AI calorie tracker app, and MacroCodex with 17,000+ users, all of them completely free
- hermitwriter 9d agoYour data is out of date. React Native performs within spitting distance of raw native now because in the last 2 years... it basically became native - it's now false dichotomy
- faangguyindia 8d agoI tried it about 2 months ago, btw. No prior experience with Flutter or RN.
- flakiness 9d agomind sharing a link or two on the native code generation bit? I'm far behind from the scene but still curious.
- cyberax 9d agoThey probably mean that modern RN apps can now use a lot of native widgets. You can look at https://docs.expo.dev/versions/latest/sdk/ui/universal/ https://docs.expo.dev/versions/latest/sdk/ui/universal/ There's also a project to add a static JS compiler, but it's been in development hell for the last 3 years: https://github.com/facebook/hermes/tree/static_h https://github.com/facebook/hermes/tree/static_h
- cyberax 9d agoIt's not. RN has always used native widgets (with a custom renderer) but the JS code itself is purely interpreted. They increased the interpreter performance by quite a bit, but JITs are impossible on iOS, so it can never be fast. We have a RN app that needs to do a lot of geometry processing and things like polyclip are unbearably slow, so we had to add native modules to accelerate them. The web version with a true JIT works just fine.