Prerequisites
1
Node.js 20+
Off Grid requires Node.js 20 or higher. Install from nodejs.org or use a version manager like
nvm.2
React Native CLI
Install the React Native CLI globally:
3
Platform-Specific Tools
Install the required tools for your target platform:
- Android
- iOS
- macOS
- JDK 17 - Java Development Kit (Temurin/Adoptium recommended)
- Android SDK (API 36) - Install via Android Studio
- Android NDK r27 - Required for native module compilation
- Android Studio - Recommended for device emulation and debugging
Clone and Install
1
Clone the repository
2
Install JavaScript dependencies
package.json.3
Platform setup
- Android
- iOS
Development Builds
Start Metro Bundler
First, start the Metro bundler in a terminal:Android
Make sure you have a device connected via ADB or an emulator running before executing the build command.
iOS
Release Builds
Android
1
Create keystore (first time only)
2
Configure signing
Create or edit
android/gradle.properties:android/gradle.properties
3
Build the release APK
iOS
1
Open Xcode
2
Archive the build
- Select Product → Archive
- Wait for the archive to complete
- The Organizer window will open automatically
3
Distribute the app
- Select your archive
- Click Distribute App
- Choose distribution method:
- App Store Connect - For App Store submission
- Ad Hoc - For TestFlight or direct distribution
- Development - For local testing
- Follow the signing and provisioning workflow
Troubleshooting
Android Build Errors
Gradle build fails
Gradle build fails
Clear the Gradle cache and rebuild:
NDK not found
NDK not found
Install the NDK via Android Studio:
- Open Tools → SDK Manager
- Select SDK Tools tab
- Check NDK (Side by side)
- Click Apply to install
Multiple build tools versions
Multiple build tools versions
Edit
android/build.gradle and ensure buildToolsVersion matches your installed version:iOS Build Errors
CocoaPods errors
CocoaPods errors
Clean and reinstall pods:
Signing errors
Signing errors
- Open
OffgridMobile.xcworkspacein Xcode - Select the project in the navigator
- Go to Signing & Capabilities
- Select your Team (requires Apple Developer account)
- Xcode will automatically manage provisioning profiles
Build hangs on 'Installing' step
Build hangs on 'Installing' step
This usually means the device is locked. Unlock your device and try again.
Next Steps
Project Structure
Learn how the codebase is organized
Testing Guide
Run tests and understand the testing strategy
Contributing
Learn the contribution workflow and quality gates