The Vibra Code mobile app is a heavily modified fork of Expo Go. It includes a native iOS chat UI built with Texture and IGListKit, along with all the Vibra Code screens and services. This guide covers building and running it from source.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/sa4hnd/vibra-code/llms.txt
Use this file to discover all available pages before exploring further.
Prerequisites
- macOS with Xcode 16 or later
- CocoaPods:
gem install cocoapods - Yarn:
npm install -g yarn - cmake and ninja (for building the Hermes JS engine):
brew bundle from the vibracode-mobile root installs cmake, ninja, and other native build dependencies declared in the Brewfile.
Setup
Clone the repository
The mobile app depends on submodules — React Native is built from source and the Expo template is included as a submodule. You must use
--recurse-submodules.Configure the mobile environment
Copy the example env file and fill in your values:At minimum you need:Set
EXPO_PUBLIC_V0_API_URL and EXPO_PUBLIC_API_URL to the URL of your running backend. Use http://localhost:3000 for local development.Android build
Android builds work on macOS, Linux, or Windows:android/app/build/outputs/apk/debug/.
Troubleshooting
| Problem | Fix |
|---|---|
| SHA-1 errors or symlink errors during build | rm -rf ./react-native-lab/react-native/node_modules then re-run yarn install in that directory |
C++ build errors (.cxx directory issues) | find . -name ".cxx" -type d -prune -exec rm -rf '{}' + then rebuild |
| Everything broken after a rebase or submodule change | git submodule foreach --recursive git clean -xfd then re-run all setup steps from yarn install |
Project structure
The key directories insidevibracode-mobile/apps/expo-go/ are:
ios/Client/Menu/ is written in Objective-C and uses Texture (AsyncDisplayKit) for off-main-thread rendering.
Next steps
- Backend setup — make sure the backend is running before you connect the app
- Environment variables reference — full list of mobile env vars