Prerequisites
Before you begin, ensure you have the following installed:Required Software
- Node.js (LTS recommended, version 18 or higher)
- bun - Fast JavaScript package manager and runtime
- Expo CLI (optional;
npx expoworks without global installation) - Git - For version control
Platform-Specific Requirements
- iOS
- Android
- Web
Requirements:
- macOS (required for iOS development)
- Xcode (latest stable version)
- Xcode Command Line Tools
- CocoaPods
- Install Xcode from the Mac App Store
- Install Command Line Tools:
- Install CocoaPods:
- Open Xcode and accept the license agreement
- Configure iOS Simulator from Xcode preferences
Installing Dependencies
1. Clone the Repository
2. Install Node.js
Download and install Node.js from nodejs.org. Verify installation:3. Install bun
4. Install Project Dependencies
package.json, including:
- expo (~54.0.32) - Core Expo framework
- react-native (0.81.5) - React Native framework
- heroui-native - UI component library
- uniwind - Tailwind CSS for React Native
- @tanstack/react-query - Data fetching and caching
- expo-router - File-based navigation
Environment Configuration
Create a.env.local file in the project root with required environment variables:
Starting the Development Server
Start the Expo development server:Running on Different Platforms
Once the dev server is running, press:- i - Open iOS simulator
- a - Open Android emulator
- w - Open in web browser
- r - Reload app
- m - Toggle menu
Using Expo Go
For quick testing without building native projects:- Install Expo Go on your device:
-
Start the dev server:
-
Scan the QR code with:
- iOS: Camera app
- Android: Expo Go app
Some features requiring native modules may not work in Expo Go. For full functionality, use development builds or run directly on emulators.
Troubleshooting
iOS Issues
Pods not installing:Android Issues
Gradle build errors:General Issues
Clear cache and restart:Next Steps
- Configuration - Configure environment variables and app settings
- Project Structure - Learn about the codebase organization
- Styling - Understand the styling system