I'm playing with Facebook/React Native, and when i run
If you look at the React Native examples:
Each one has a directory with a contents similar to the iOS directory generated by react-native-cli. Looking further into the Xcode project file, it's referenced in there too, and look at the contents - there's things like the launch screen.
So yes, the iOS directory is needed.
Regarding node_modules, I suggest you look at this answer which provides more information: