Plan your workouts, track your progress, and discover your fitness score — calculated by AI.
Onboarding — a short, friendly flow that personalizes the experience:
![]() Welcome |
![]() Gender |
![]() Age |
![]() Weight |
![]() Height |
In the app — workout logging and statistics (dark theme):
![]() Log a Workout |
![]() Statistics |
- 🧭 Personalized onboarding — gender, age, weight & height → tailored setup
- 🤖 AI fitness score — workout analysis and a personal progress plan, powered by OpenAI
- 📝 Workout logging — build routines, track sets / reps / weight, save history
- 📊 Statistics — general rating, total volume, weekly activity and progress charts
- 🏆 Gamification — points, badges and leaderboard (Bronze → higher levels)
- 💎 Premium / paywall — subscription management via Adapty
- 🌍 Localization — multi-language support with i18next
- 🌓 Light & dark themes
| Layer | Technology |
|---|---|
| Framework | React Native 0.80 · React 19 · TypeScript |
| State | Redux Toolkit · React Redux |
| Navigation | React Navigation 7 (native-stack) |
| Backend / Auth | Supabase |
| AI | OpenAI API |
| Subscriptions | Adapty |
| Analytics | Firebase Analytics |
| UI | styled-components · Lottie · react-native-svg · react-native-video |
| i18n | i18next · react-i18next |
This is the public / sanitized version of the app. It ships without real API keys or Firebase config — bring your own to run it.
npm install
cd ios && bundle install && bundle exec pod install && cd ..cp .env.example .envFill in .env with your own keys:
| Variable | Where to get it |
|---|---|
OPENAI_API_KEY |
https://platform.openai.com/api-keys |
ADAPTY_API_KEY |
https://app.adapty.io (starts with public_live_) |
SUPABASE_URL |
https://supabase.com → Project Settings → API |
SUPABASE_ANON_KEY |
https://supabase.com → Project Settings → API |
- iOS — create an iOS app in your Firebase project, download
GoogleService-Info.plist, drop it intoios/. (Template:ios/GoogleService-Info.plist.example) - Android — download
google-services.jsonintoandroid/app/.
- Open
ios/logpressai.xcworkspacein Xcode → Targets → logpressai → Signing & Capabilities → select your Apple Developer Team. - Change the Bundle Identifier to your own (current:
com.logpress.app).
npm start # Metro bundler
npm run ios # or
npm run androidWant to run the app with no backend and no internet (demos, App Store screenshots, offline use)? Flip a single switch:
// src/config/offline.ts
export const OFFLINE_MODE = true;When enabled, the app makes zero network requests:
- Supabase (auth + all queries), Adapty, Firebase Analytics and OpenAI calls are short-circuited.
- Paywall screens show mock products, and “Buy Premium” succeeds instantly (no real payment).
Set it back to false and rebuild to go online.
fmt/constevalbuild error on iOS (Xcode 16.3+ / 26): thepost_installhook inios/Podfileauto-patchesPods/fmt/include/fmt/base.h(FMT_USE_CONSTEVAL=0). If you hit it, re-runbundle exec pod installand build again.- General React Native issues: https://reactnative.dev/docs/troubleshooting
Contributions are welcome! Feel free to open an issue or submit a pull request.
Released under the MIT License — free to use, modify and distribute.






