A minimal Expo React Native app for tracking gym streaks.
- Home Screen: Title "Gym Streak" with two buttons:
- Set Reference Photo
- Daily Check-in
- Camera Screen: Take photos with camera permission handling and preview
- Expo SDK 52
- React Native
- TypeScript
- Expo Router (file-based routing)
- expo-camera
- Node.js installed
- Expo Go app on your phone (iOS or Android)
- Clone the repository:
git clone https://github.com/omarscoding/gym-tracker.git
cd gym-tracker- Install dependencies:
npm install- Start the development server:
npx expo start-
Install Expo Go on your device:
-
After running
npx expo start, you'll see a QR code in your terminal -
Scan the QR code:
- iOS: Open the Camera app and scan the QR code
- Android: Open Expo Go app and use the built-in scanner
-
The app will load on your device
npm start- Start the Expo development servernpm run android- Open on Android emulator/devicenpm run ios- Open on iOS simulator/devicenpm run web- Open in web browser
gym-tracker/
├── app/
│ ├── _layout.tsx # Root layout with navigation
│ ├── index.tsx # Home screen
│ └── camera.tsx # Camera screen
├── assets/ # Images and app icons
├── app.json # Expo configuration
├── package.json # Dependencies
└── tsconfig.json # TypeScript configuration
- Launch the app to see the Home screen
- Tap "Set Reference Photo" or "Daily Check-in" to open the camera
- Grant camera permissions when prompted
- Take a photo using the capture button
- Preview the photo and tap "Return Home" to go back
- No backend or database - photos are not persisted
- No AI features
- Minimal styling for MVP purposes
- Camera permissions are required for the camera feature