It seemed like very popular and commonly used dependencies had poor community support. Upgrades were often painful. Breakage during routine package upgrades occurred far more than in our non-RN typescript projects.
We did a lot of research and asked around but it seemed to be par for the course.
Overall I’d guess that we still saved time over learning and developing with native solutions for iOS and android, but it left me feeling like the ecosystem could be so much more productive still.
I’ll admit I recognized the need to contribute to libraries I saw were lacking support, but the project wasn’t my main focus and I don’t think my employer cared much. In the future I should definitely complain less and help more.
I tried React Native years ago but it was like suffering twice - the usual dependencies-hell from npm by plus the inconsistencies 9f each platform.
(also: react native apps never “feel” truly native. or is just me?)
The whole thing felt like cutting a log with a dull chain saw rather than using a really sharp pull saw.
Sure we got there and it took a lot of labour away, but traded for another kind. It was a little faster. The end result wasn’t as nice. So… Was it worth it?
I’m still not sure. It’s certainly worth it in cases where you’re well-versed in react native and ready to build and deploy quickly.
But then I have to wonder. What if you just spent the same time and energy learning native tools in the first place?
There is still the fact that transfer of business logic and user interfaces is trivial with react native. That is a great help.
I’m sure this is even more relevant on larger teams with little to no native experience, too.
In any case, it’s a bit of a suffer fest.
The chain of libraries to update is usually the hardest part for me, especially something like that react-navigation jump. That one sucked. Of course, you often have to update RN to support the latest OS versions properly so there is often no choice but to update libraries too.
For me (as a Software Engineer focused on UX) it was how 'unnatural' apps created looked on either iOS or Android without having to do a lot of tweaking or work. I'm unfortunately not a big fan of Java (personal reasons but mostly coding style preference), so still have a bit of faith on React Native (React being one of my faves and most used frameworks).
seems like something more centralized like deno which has a big set of standard libs with stability guarantees?
Cuz I have avoided upgrading nativebase for 3 years now.
Our react native codebase is pretty small but still a pain to build.