DEV Community

Discussion on: React Devs, Why don't you use React Native for Web?

Collapse
 
seanmclem profile image
Seanmclem • Edited

I didn't really like react native. Building my UI entirely with components written by someone else, not easily modified. Having to conform to how the apps get exported, yet still having to manually configure lots of things. When deploying apps there was a bit of an insistence to host your JS bundle on a server instead of distributing it with your app. In the case of expo - Expo wanted to host the JS bundle on their own server. It was strangely strict and and rigid. It was difficult to use native libraries sometimes since they were all community-made.

I ended up using Ionic's Capacitor. I could build a web app, with native libraries and optional UI components, and compile it to all sorts of platforms.

Collapse
 
evanbacon profile image
Evan Bacon

Sorry you've had trouble with React Native in the past. The main benefit to using React Native over Ionic is that there is no Cordova anywhere in your project, everything is native.
Also ICYMI Expo added support for self-hosting your app over a year ago now. There is also a bare-workflow for Expo which enables you to easily add any native code to your app (released ~10 months ago). And as of recently you can add native packages very easily to any React Native project with the auto-linking feature created by Expo. It's a part of the react native community CLI and the Expo CLI so it's very accessible.

Collapse
 
darthknoppix profile image
Seth Corker

That's an interesting angle. There definitely seems to be an ideal path and if you want to venture off that path, it's challenging.

I'm glad you found a solution that worked for you, I've had a brief look at Capacitor.

Did the project you create, use many native APIs - how did you find that integration with the native platform?