Lift OS is a personal, offline-first strength-training app built with Flutter. Designed to make logging workouts feel intentional rather than administrative — fast at the rack, private by default, and smart enough to help you progress.
The app analyzes your last 4 workout sessions to provide intelligent weight and rep recommendations. No more guessing when to increase weight.
How it works:
| Condition | Action | Example |
|---|---|---|
| History < 3 sessions | +1 rep | Building consistency |
| Reps trending down | Hold weight | Build back up first |
| Consistently hitting top of range | Increase weight | Time to progress |
| Last set ≤ minimum reps | +2 reps | Build strength first |
| Reps improving | +1 rep | Keep momentum |
Metrics analyzed:
- Rep trends across sessions
- Weight stability
- Average reps and consistency
- Estimated 1RM (Epley formula)
Start workouts from scheduled routines or create custom sessions on the fly. Every set logged with minimal taps.
Key features:
- Live workout screen with exercise queue and set tracking
- Rest timer with countdown, visual progress, and notifications
- Progressive overload suggestions shown for each exercise
- Set types: Warmup, Working, Drop, etc.
- RPE tracking (optional)
- Drag-to-reorder exercises
- Add exercises mid-workout
- Auto-resume interrupted sessions
Set Logging Interface:
- Large numeric keypad for quick entry
- One-tap "Use Suggestion" for AI-proposed weight/reps
- "Repeat Last" to copy previous session
- Haptic feedback on every tap
Pre-loaded with 64+ exercises across 7 muscle groups, or create your own.
Capabilities:
- Search by name
- Filter by muscle group
- View exercise details with PR history
- Progression charts showing:
- Weight trend
- Estimated 1RM trend
- Volume trend
- Create custom exercises with notes and cues
Build reusable workout templates and assign them to days of the week.
Routine Editor:
- Name and description
- Assign to specific days (Mon-Sun)
- Configure per-exercise targets:
- Sets count
- Rep range (min-max)
- Rest seconds
Weekly View:
- Horizontal 7-day strip
- Tap day to see routine
- Long-press to assign/change routine
- Rest day marking
See where you're going, not just where you've been.
Available metrics:
- Weekly volume bar chart with week-over-week comparison
- Workout frequency (sessions per week)
- Training days (distinct days trained)
- Current & longest streak
- Personal records by muscle group:
- Highest estimated 1RM
- Heaviest weight lifted
- Most reps at a weight
- Best volume (single set)
- Strength change percentage for top exercises
Monitor your physique alongside your lifting.
Features:
- Body weight logging
- Height for reference
- Progress photos (stored locally)
- Measurements tracking
Your data is yours. Export anytime, restore when needed.
Full backup includes:
- Exercise library
- Routines and schedules
- Workout history
- Personal records
- Body measurements
- Progress photos metadata
Exports to portable JSON file.
| Layer | Technology |
|---|---|
| Framework | Flutter + Dart |
| State Management | flutter_riverpod |
| Navigation | go_router |
| Database | drift (SQLite) |
| Data Models | freezed + json_serializable |
| Charts | fl_chart |
| Animations | flutter_animate |
| Notifications | flutter_local_notifications |
| File Handling | file_picker, file_saver, share_plus |
| Secure Storage | flutter_secure_storage |
| Image Handling | image_picker |
- Flutter SDK (>= 3.11.0)
- iOS Simulator / Android Emulator / macOS desktop
# Clone the repository
git clone https://github.com/username/lift-os.git
cd lift-os
# Install dependencies
flutter pub get
# Run the app
flutter runflutter test# Analyze code
flutter analyze
# Build for production
flutter build ipa # iOS
flutter build apk --release # Android
flutter build macos # macOSThe project follows a feature-first, layered architecture with clear separation of concerns.
lib/
├── app/ # App configuration
│ ├── app.dart # App entry point
│ ├── router.dart # Navigation routes
│ ├── shell/ # Bottom navigation shell
│ └── theme/ # Design system
├── core/ # Shared utilities
│ ├── database/ # Drift database & backup
│ ├── services/ # Notifications, etc.
│ ├── utils/ # Calculations, formatters
│ └── widgets/ # Reusable widgets
├── features/ # Feature modules
│ ├── home/ # Dashboard
│ ├── workouts/ # Workout logging & progressive overload
│ ├── exercises/ # Exercise library
│ ├── routines/ # Routine management
│ ├── progress/ # Analytics
│ ├── profile/ # User settings
│ ├── history/ # Workout history
│ └── onboarding/ # First-run setup
└── main.dart
Data Flow:
Presentation → Application (Use Cases) → Domain (Entities/Repositories) → Data (Drift)
Private project. All rights reserved.
Built with intention. Designed for progress.





