3 ms·
With the recent Expo SDK 53 update that introduced a slew of breaking changes, I've been contemplating switching my app to native. I could perhaps vibe code fea
by kaptainscarlet 1y ago
With the recent Expo SDK 53 update that introduced a slew of breaking changes, I've been contemplating switching my app to native. I could perhaps vibe code features on both android and iOS and ship features as fast as crossplatform react native devs.
- tcoff91 1y agoCould you share which issues you had with the upgrade to 53? I just recently migrated my employer’s app to sdk 52. We are still on legacy arch for now. I’d love to know more about what I’m in for when it comes to upgrading to 53.
- cyberax 1y agoThe switch to the new rendering architecture is really massive, a lot of libraries have subtle bugs that are not yet fixed.
- tcoff91 1y agoOh yeah for sure. Not going to adopt new architecture yet. It’s a little rough of a transition but once we get through I do believe it will be a game changer for react native. Until reanimated v4 is dialed in I’m staying away. Have you tried turning off new arch for now?
- cyberax 1y agoYes, but we found plenty of bugs. Fixed some (e.g. in TrueSheet). It is drastically faster, but I won't call it a "game changer". It's great for us because we have native code modules, and seamless Turbo Modules are nice (you _can_ use them with the old arch, but it requires some jumping through hoops). As for reanimated, I would just stay away from it entirely. Way too many layering violations for my taste.
- tcoff91 1y agoIt’s not so much the performance that has me excited, just the synchronous vs asynchronous communication with the renderer.
- cyberax 1y agoIt has its own problems... Since the async round-trip is gone, you can end up with rendering happening too _early_. The rendering is also not truly synchronous, you can't resize graphical surfaces from the JS thread. You still need to do a round-trip to the platform UI thread. So for example, React Native WebGPU misrenders an image when you rotate the screen because of that. The rendering callback ends up running before the surface has the chance to get resized. I've also seen that with other libraries that mix native rendering. I'm pretty sure reanimated is also susceptible to this.
- rhodysurf 1y agoI doubt it. I maintain both RN apps and other ones with both iOS and android versions and if you are not a company and your app does anything more than a todo list your iteration velocity grinds to an absolute halt. RN is just faster and that matters