I just wanted to say that I like the project, and the speed it enables me to create apps.
I’m in the process of converting a regular react-native project, and I have a question on using non-Expo components with Expo. How do I identify which libraries are compatible/incompatible? For example, is any component that requires me to use react-native link automatically incompatible? Since there is not a gradle file or android directory, does that mean I can’t use any libraries that require editing those? The specific libraries I’m concerned with are:
https://github.com/wix/react-native-zss-rich-text-editor - no react-native link but it does require editing the android/app/build.gradle file. Using it with my Expo enable app results in the keyboard is not being displayed, and the component is not filling in its default text the same way it did in my Expo-less version of my app.
https://github.com/ivpusic/react-native-image-crop-picker - requires the use of react-native link. I’d prefer this over the Expo component because of the image cropping and multiple selection features.
This question ended up getting answered by user ap on the #general channel of the Slack who said:
“in general if you need to run
react-native link, you can’t use it with expo w/o detaching that covers like 98% of cases, afaict”
Glad I found this, was about to start building with Expo. Uninstalling and walking away for now. Maybe I’ll check it out again in a year or two to see if Expo is more suitable for development that isn’t bound to a curated set of components
If you’re looking to use libraries that have native code (and need
react-native link), the path to using them with Expo is to “detach” and use ExpoKit: https://docs.expo.io/versions/latest/guides/detach.html.