Una moderna applicazione mobile di fitness sviluppata in Flutter, progettata per guidare gli utenti nel loro percorso di allenamento e benessere attraverso piani personalizzati, consigli nutrizionali e una vasta libreria di esercizi.
L'app raccoglie informazioni dettagliate sull'utente per creare un'esperienza completamente personalizzata:
- Dati personali: Nome, etΓ , altezza e peso
- Obiettivi fitness: Definizione degli obiettivi personali
- Livello di attivitΓ : Valutazione del livello di attivitΓ fisica attuale
- Condizioni mediche: Considerazione di eventuali condizioni mediche particolari
- Genere: Personalizzazione in base al genere
La schermata principale offre un'esperienza completa di allenamento:
- Piano di allenamento raccomandato: Suggerimenti personalizzati basati sul profilo utente
- Essentials: Accesso rapido agli allenamenti fondamentali (Strength, Cardio, Yoga, ecc.)
- New Reels: Video brevi e coinvolgenti con esercizi e consigli
- Workout Collection: Collezioni tematiche di allenamenti
- Full Body Workout
- Upper Body
- Lower Body
- Ab Workout
- E molte altre categorie
- Piani settimanali: Organizzazione degli allenamenti per tutta la settimana
- Dettagli esercizi: Descrizioni complete con overhead press e altri movimenti
- Allenamenti specifici: Full body, strength training e programmi mirati
Sezione dedicata alla pianificazione personale:
- Piani salvati: Accesso rapido ai propri programmi di allenamento
- Livelli di difficoltΓ : Dal principiante (Learner) ai livelli avanzati
- Tracciamento progressi: Monitoraggio del percorso fitness
Sistema completo di gestione nutrizionale:
- Tracciamento calorie: Obiettivo calorico giornaliero (es. 1,500 Cal)
- Gestione pasti: Tracciamento di tutti i pasti della giornata
- Colazione
- Spuntino mattutino
- Pranzo
- Spuntino pomeridiano
- Cena
- Consigli nutrizionali: Tips giornalieri per una dieta equilibrata
- Ricette: Database di ricette salutari
- Preferenze dietetiche:
- Scelta del tipo di dieta
- Gestione allergie e intolleranze alimentari
- Cucine preferite
- Opzioni vegetariane/vegane
- Creazione pasti personalizzati: PossibilitΓ di creare e salvare i propri pasti
- Insights: Analisi nutrizionale dei progressi
Area personale completa con:
- Modifica profilo: Aggiornamento dei dati personali
- Reminders: Impostazione promemoria per allenamenti e pasti
- FAQs: Risposte alle domande piΓΉ frequenti
- Privacy Policy: Informazioni sulla privacy e termini di servizio
- Logout: Disconnessione sicura dall'account
- Sistema di preferiti: Salva gli allenamenti e i pasti preferiti
- Libreria workout: Ricerca avanzata tra tutti gli esercizi disponibili
- Notifiche: Sistema di notifiche per promemoria e aggiornamenti
- Supporto multilingua: Selezione della lingua preferita
- Drawer navigation: Menu laterale per una navigazione rapida
Sistema completo di autenticazione utente:
- Registrazione: Creazione nuovo account con email e password
- Login: Accesso con credenziali esistenti
- Verifica OTP: Sistema di verifica tramite codice OTP
- Password dimenticata: Recupero password tramite email
- Reset password: Procedura sicura per il reset della password
- Dark theme: Interfaccia elegante con tema scuro (colori principali: nero, blu accent)
- Font personalizzati: Utilizzo della famiglia Poppins con diversi pesi
- Animazioni fluide: Transizioni e animazioni per un'esperienza utente premium
- Layout responsivo: Adattamento perfetto a diverse dimensioni di schermo
- Icone SVG: Grafica vettoriale per una qualitΓ visiva ottimale
- Immagini ottimizzate: Asset organizzati per categoria per prestazioni ottimali
- GetX: State management reattivo con pattern Controller
- Separation of Concerns: Separazione tra UI, logica e dati
- Widget riutilizzabili: Componenti comuni per consistenza UI
- Flutter: Framework principale per lo sviluppo cross-platform
- Dart: Linguaggio di programmazione (SDK 2.17.1+)
dependencies:
flutter:
sdk: flutter
get: ^4.6.5 # State management e routing
flutter_svg: ^2.0.7 # Supporto per SVG
country_code_picker: ^3.0.0 # Selettore codice paese
pinput: ^3.0.1 # Input OTP/PIN
numberpicker: ^2.1.1 # Selezione numeri
flutter_toggle_tab: ^1.2.0 # Toggle buttons
percent_indicator: ^4.2.2 # Indicatori percentuali
flutter_calendar_week: ^3.0.2 # Calendario settimanale
cupertino_icons: ^1.0.2 # Icone iOSlib/
βββ main.dart # Entry point dell'applicazione
βββ Constants/
β βββ colors.dart # Palette colori
β βββ images.dart # Percorsi asset
βββ Controller/
β βββ auth_controller.dart
β βββ bottom_navigation_controller.dart
β βββ home_controller.dart
β βββ myplan_controller.dart
β βββ diet_tip_controller.dart
β βββ favourite_controller.dart
β βββ profile_controller.dart
βββ Screen/
β βββ Welcome/ # Onboarding screens
β βββ Auth/ # Autenticazione
β β βββ fillDetails/ # Raccolta dati utente
β β βββ signin_screen.dart
β β βββ signup_screen.dart
β β βββ ...
β βββ BottomNavigation/ # Navigazione principale
β βββ Home/ # Workouts
β βββ MyPlan/ # Piani personalizzati
β βββ DietTips/ # Nutrizione
β βββ Profile/ # Profilo utente
β βββ Favourite/ # Preferiti
β βββ WorkoutLibrary/ # Libreria esercizi
β βββ Notification/ # Notifiche
β βββ Language/ # Selezione lingua
β βββ Setting/ # Impostazioni
β βββ Faqs/ # Domande frequenti
β βββ TermsCondition/ # Termini e condizioni
βββ Widgets/
βββ common_appbar.dart
βββ common_button.dart
βββ common_text_widget.dart
βββ common_textfield.dart
βββ common_widgets.dart
- Flutter SDK (2.17.1 o superiore)
- Dart SDK (incluso con Flutter)
- Android Studio / VS Code con plugin Flutter
- Xcode (per sviluppo iOS su macOS)
- Clona il repository
git clone <repository-url>
cd fitness- Installa le dipendenze
flutter pub get- Verifica la configurazione Flutter
flutter doctor- Esegui l'app
# Per Android
flutter run
# Per iOS
flutter run -d ios
# Per una build di release
flutter build apk # Android
flutter build ios # iOSAssicurati che tutti gli asset siano presenti nelle seguenti cartelle:
assets/images/Welcome/assets/images/Auth/assets/images/Home/assets/images/MyPlan/assets/images/DietTips/assets/images/Profile/assets/images/Favourite/assets/images/WorkoutLibrary/assets/fonts/(font Poppins)
- β Android (5.0 Lollipop e superiori)
- β iOS (11.0 e superiori)
β οΈ Web (supporto base)β οΈ Windows (in sviluppo)
Possibili miglioramenti futuri:
- Integrazione con wearable (Apple Watch, Fitbit)
- Social features (condivisione progressi, community)
- Video tutorial integrati per ogni esercizio
- AI-powered workout recommendations
- Integrazione con calendario per pianificazione avanzata
- Statistiche e grafici dettagliati
- ModalitΓ offline completa
- Sincronizzazione multi-dispositivo
Il file android/app/build.gradle Γ¨ configurato con:
- minSdkVersion: 21
- targetSdkVersion: 33
- compileSdkVersion: 33
Configurazione in ios/Runner/Info.plist per:
- Permessi fotocamera (se necessari)
- Permessi notifiche
- Background modes (per tracking attivitΓ )
Progetto privato - Tutti i diritti riservati
Sviluppato da Giacomo Fiorucci
Per supporto o domande sul progetto:
- Contatta il cliente direttamente
- Documentazione tecnica disponibile nel codice sorgente
Versione 1.0.0+1
- Release iniziale
- Tutte le funzionalitΓ core implementate
- UI/UX completa e testata
- Supporto multipiattaforma (Android/iOS)
Questo progetto Γ¨ stato sviluppato con β€οΈ utilizzando Flutter