When trying to choose which development workflow best fits your app's needs, here are a few things you should consider:
- Will I need access to the native portion of the code base?
- Will I need any third-party packages in my app that are not supported by Expo, that is require running the command react-native link?
- Will my app need to play audio while it is not in the foreground?
- Will my app need location services while it is not in the foreground?
- Am I comfortable working, at least nominally, in Xcode and Android Studio?
In my experience, Expo usually serves as the best starting place. It provides a lot of benefits to the development process, and gives you an escape hatch in the eject process if your app grows beyond the original requirements. I would recommend only starting development with the React Native CLI if you're sure...