πΊπΈ English | π§π· PortuguΓͺs
Patrique Fitness is a mobile gym application built with Flutter, developed as both a portfolio project and academic work. The app delivers a gamified experience for workout management, nutrition tracking, and social interaction between users β inspired by Duolingo's engagement mechanics applied to the fitness world.
Backend repository: IgorMirandolli/backend_patriquefitness
- Animated splash screen with dynamic theme support (light/dark)
- Interactive onboarding for new users
- Login and sign-up with field validation
- Personalized user greeting
- Streak card showing consecutive training days
- Weekly workout overview
- Shimmer loading effect
- Clickable next workout cards with direct navigation
- Workout list organized by muscle group (A, B, C)
- Detail screen showing exercises, sets, weights, and rest intervals
- Workout execution with real-time total timer
- Integrated YouTube video player for each exercise
- Rest timer between sets with skip option
- Completion screen with star rating and streak update
- Custom workout creation with drag-to-reorder
- Monthly view of completed workout days β Duolingo style
- Automatically calculated streak
- Stats: current streak, monthly workouts, and total count
- PratiqueBot with a full decision tree
- Answers questions about training, nutrition, and recovery
- Conversation history with interactive quick replies
- Friends list with real-time online status
- Full friend profile with stats
- Gamified weekly ranking with podium (π₯π₯π₯)
- Weekly and monthly challenges with points system
- Daily calorie tracking with progress bar
- Macronutrient tracking (protein, carbs, fat)
- Expandable meals with checklist (breakfast, lunch, snack, dinner)
- Weekly diet history with streak
- Schedule a consultation with a nutritionist via WhatsApp
- Monthly and annual plans with price comparison
- Subscription confirmation screen
- Editable personal and physical data (name, weight, height)
- Customizable fitness goal and experience level
- Workout stats (streak, monthly workouts, total)
- Plan management
- Configurable daily reminder notifications
- Persistent light/dark theme toggle
| Color | Hex | Usage |
|---|---|---|
| Primary pink | #FF3E7D |
Primary color, buttons, highlights |
| Dark pink | #D61A5E |
Gradients |
| Light pink | #F8A9D5 |
Text on dark backgrounds |
| Dark background | #111217 |
Dark mode background |
| Dark surface | #1C1D21 |
Dark mode cards |
| Package | Version | Usage |
|---|---|---|
flutter |
3.41.7 | Main framework |
youtube_player_flutter |
9.x | In-app video player |
shared_preferences |
β | Local persistence |
flutter_local_notifications |
17.x | Workout reminders |
shimmer |
β | Loading skeleton effect |
flutter_launcher_icons |
β | App icon generation |
lib/
βββ core/
β βββ theme/
β β βββ app_theme.dart # Light and dark themes
β β βββ app_transitions.dart # Navigation animations
β β βββ theme_utils.dart # Context extensions
β βββ notification_service.dart # Notification service
β βββ theme_controller.dart # Theme controller
βββ features/
β βββ auth/
β βββ home/
β βββ treino/
β βββ chatbot/
β βββ amigos/
β βββ nutricao/
β βββ perfil/
βββ shared/
β βββ widgets/
βββ main.dart
- Flutter 3.41.7 or higher
- Xcode 16+ (for iOS)
- CocoaPods installed
# Clone the repository
git clone https://github.com/your-username/patrique_app.git
# Navigate to the project folder
cd patrique_app
# Install dependencies
flutter pub get
# Run the app on simulator
flutter runClick on the screen below to watch the video:
- Firebase integration (real authentication and database)
- Illustrated characters on screens (Patrique Estrela and Chad Esponja)
- Real payment integration via RevenueCat
- Android version
- Automated tests (unit and widget tests)
Developed by Victor Hasse, Bernardo Santos Vieira, Guilherme Mitsuo Honda, Igor Vinicius Sotili Mirandolli
Academic and portfolio project β 2026
This project is licensed under the MIT License.

