A Pear Runtime hello world using Bare with Expo.
Make sure below packages are installed on your system:
CMake>= 3.25 - can check viacmake --versionAndroid Studio- For Android, installing Android Studio is recommended (you can follow React Native docs)Android NDK- also make sure Android NDK version25.1.8937393is installed and set theANDROID_HOMEenvironment variable (seeConfigure the ANDROID_HOME environment variablesection in the above React Native docs).
-
Clone this repo:
git clone https://github.com/holepunchto/pear-expo-hello-world.git -
run following command to sync git submodules:
git submodule update --init --recursive
[!NOTE] From now on, you should run
npx bare-dev vendor syncafter updatingbaregit submodule. -
run
npm installto install all the dependencies, or use other package manager by preference. -
run
npm linkin the project root, then runhello-pear --configure
could also run as
bin/hello-pear.js --configureornpx hello-pear --configure, need to append the--configureflag when first run
By default the hello-pear helpers will builds bare for every architecture for both iOS and Android, but a more fine grained build could be achieved:
# list all commands
hello-pear --help
# iOS simulator only
hello-pear --ios-simulator
# iOS and iOS simulator
hello-pear --ios --ios-simulator
# Android only arm archs
hello-pear --android arm64 arm
# Android only arm64
hello-pear --android arm64
# Android only x86 archs
hello-pear --android x64 ia32Important
After any change in the source code that runs on bare you need to re-run hello-pear in order to apply the changes.
You can check expo-cli docs but as a cheat sheet:
# build and run on iOS connected devices
npx expo run:ios
# clearing the build cache
npx expo run:ios --no-build-cache
# build and run on Android connected devices
npx expo run:android
# clearing the build cache
npx expo run:android --no-build-cache
# just start the local server
npx expo start --dev-client