Libraries
Expo Bare
Experimental route to running Bare worklets in an Expo mobile application.
Verified 19 October 2026
Explore a mobile UI with native work handled outside the React renderer.
Status in Unstoppable Stack
Mobile remains outside the core preview and has a separate experimental AI implementation.
How it works
React Native owns the mobile UI, while a Bare worklet owns P2P and storage. The worklet is bundled separately from the renderer.
Native modules require a native app build. Expo Go does not contain the native libraries required by this scaffold.
The optional mobile AI implementation is separate from the desktop runtime. Its compatibility graph includes Expo, React Native, BareKit, the bundler and native addons.
Run an example
This is an experimental source-only scaffold, not a command exposed by the published minimal beta. Use Node 22.17+, pnpm, and the native toolchain: Xcode on macOS for iOS or Android Studio/SDK for Android. Start in a directory for a fresh repository checkout.
git clone https://github.com/unstoppable-stack/unstoppable-dev.git mobile-stack-source
cd mobile-stack-source
pnpm --dir packages/cli install --frozen-lockfile
pnpm --dir packages/cli build:full
node packages/cli/dist/us.js scaffold app -p expo-mobile -n mobile-demo
cd mobile-demo
npm install
npm run prebuild
npm run iosFor Android, replace the final command with npm run android and select a configured device or emulator. This base example omits local AI. Run from a source checkout that contains the experimental target; keep its dependency lockfile when investigating native failures.
Expected result
The generated app compiles into a native development build and opens on the selected simulator or device with its bundled Bare worklet. This flow has not been rerun as part of this docs change; mobile remains outside the core preview.
Example verification
Setup and API instructions were reviewed against the repository and upstream references. This docs update did not rerun the desktop/mobile native build or real-model acceptance flow.
API essentials
- npm run build:bare: bundle the generated worklet for the configured native targets.
- npm run prebuild: bundle the worklet and generate native projects.
- npm run ios or npm run android: compile and launch a native development build with the corresponding platform tooling installed.
Troubleshooting and limits
- Missing native module in Expo Go: use the generated native build workflow.
- Do not fix a native graph failure by mixing arbitrary package upgrades; preserve the scaffold's compatibility profile.
- A successful bundle is not physical-device or native-inference acceptance. Record device, architecture and SDK versions when reporting problems.