Remix.run Logo
hermitwriter 5 hours ago

Your 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

flakiness 4 hours ago | parent | next [-]

mind sharing a link or two on the native code generation bit? I'm far behind from the scene but still curious.

cyberax 4 hours ago | parent [-]

They 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/

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

cyberax 4 hours ago | parent | prev [-]

It'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.