Hacker News new | past | comments | ask | show | jobs | submit login

Any major issues?

I'm considering RN right now. Wondering whether to start from scratch or not. People refer to issues "ejecting" from Expo but those issues are vague and go back years.

Any concerns or experiences on your end that make it a good or bad option?




Ejecting is no longer required with EAS (Expo Application Services) build. You can bring in your own native dependencies and still use Expo without ejecting.

I use it for the Rust (video game) companion app, using the stock libraries bundled within Expo so development is a breeze.

https://rust.facepunch.com/companion/


IMO the best thing about expo is that your native project folders pretty much becomes build artifacts, and so can be left out of your git repo.

That is great because those project folders are usually quite fragile and can easily break over time.

Before "prebuild" was introduced, you had to stick to expo-included native modules to get that advantage, and if you didn't, you had to "eject", which was hardly better than not using expo at all.

With "prebuild" you can use any native module and still have a git repo free of those fragile iOS and Android folders. It is more work setting up those modules, but it's worth it IMO.


They like to do a lot of breaking changes between versions that are very painful to upgrade to. But this also applies to RN and JS ecosystem to a lesser extent.


I believe the situation with this has improved. Before EAS you needed to target one of the more recent SDK versions or you wouldn't be able to build using their services. However, if your app is new (or upgraded) enough to use EAS now then you don't get locked out of building anymore.

But still, upgrading SDK versions to stay on top of security/new features can be a burden with how many breaking changes there are.


If it’s just simple app, I’m sure Expo is still good choice. Otherwise I will prefer use RN




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: