A React Native application built with Expo and configured for Android development using a custom development client.
Before running this application, ensure you have the following installed:
- Bun - Fast JavaScript runtime and package manager
- Android Studio - For Android development tools and emulator
- Java Development Kit (JDK) - Required for Android development
- Android SDK - Installed through Android Studio
- Expo CLI - Will be installed with dependencies
- Install Android Studio from developer.android.com
- Set up Android SDK and accept the license agreements
- Create an Android Virtual Device (AVD) or connect a physical Android device
- Enable Developer Options and USB Debugging on your physical device (if using)
Make sure your environment variables are set up correctly:
export ANDROID_HOME=$HOME/Android/Sdk
export PATH=$PATH:$ANDROID_HOME/emulator
export PATH=$PATH:$ANDROID_HOME/tools
export PATH=$PATH:$ANDROID_HOME/tools/bin
export PATH=$PATH:$ANDROID_HOME/platform-toolsbun iThis will install all the necessary dependencies for the project using Bun's fast package manager.
bun expo run:android -dThis command will:
- Build the development client for Android
- Launch the app on your connected Android device or emulator
- Start the Metro bundler for hot reloading
The -d flag enables device selection if multiple devices are available.
bun i- Install dependenciesbun expo run:android -d- Run the app on Android with device selectionbun expo start- Start the Expo development serverbun expo prebuild- Generate native code (if needed)
This project uses Expo's custom development client, which allows you to:
- Use custom native code and third-party libraries
- Have a more native development experience
- Test features that require a production-like environment
The development server supports hot reloading, so changes to your code will automatically refresh the app without losing state.
Device not detected:
- Ensure USB debugging is enabled on your Android device
- Check that your device is properly connected with
adb devices
Build errors:
- Clear the cache with
bun expo start --clear - Ensure all Android SDK components are installed and up to date
Metro bundler issues:
- Restart the bundler with
bun expo start --clear - Check for port conflicts (default is 8081)
# Check connected devices
adb devices
# Clear Expo cache
bun expo start --clear
# Restart ADB server
adb kill-server && adb start-server- Fork the repository
- Create your feature branch
- Make your changes
- Test on Android device/emulator
- Submit a pull request
[Add your license information here]