gitextract_x3j_na3e/ ├── .firebase/ │ └── hosting.YnVpbGQvd2Vi.cache ├── .firebaserc ├── .gitignore ├── .metadata ├── .vscode/ │ └── launch.json ├── README.md ├── android/ │ ├── .gitignore │ ├── app/ │ │ ├── build.gradle │ │ └── src/ │ │ ├── debug/ │ │ │ └── AndroidManifest.xml │ │ ├── google-services.json │ │ ├── main/ │ │ │ ├── AndroidManifest.xml │ │ │ ├── kotlin/ │ │ │ │ └── com/ │ │ │ │ └── example/ │ │ │ │ └── fitness_flutter/ │ │ │ │ └── MainActivity.kt │ │ │ └── res/ │ │ │ ├── drawable/ │ │ │ │ └── launch_background.xml │ │ │ ├── drawable-v21/ │ │ │ │ └── launch_background.xml │ │ │ ├── values/ │ │ │ │ └── styles.xml │ │ │ └── values-night/ │ │ │ └── styles.xml │ │ └── profile/ │ │ └── AndroidManifest.xml │ ├── build.gradle │ ├── gradle/ │ │ └── wrapper/ │ │ └── gradle-wrapper.properties │ ├── gradle.properties │ └── settings.gradle ├── assets/ │ └── fonts/ │ └── NotoSansKR/ │ ├── NotoSansKR-Black.otf │ ├── NotoSansKR-Bold.otf │ ├── NotoSansKR-Light.otf │ ├── NotoSansKR-Medium.otf │ ├── NotoSansKR-Regular.otf │ ├── NotoSansKR-Thin.otf │ └── OFL.txt ├── firebase.json ├── ios/ │ ├── .gitignore │ ├── Flutter/ │ │ ├── AppFrameworkInfo.plist │ │ ├── Debug.xcconfig │ │ └── Release.xcconfig │ ├── Podfile │ ├── Runner/ │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets/ │ │ │ ├── AppIcon.appiconset/ │ │ │ │ └── Contents.json │ │ │ └── LaunchImage.imageset/ │ │ │ ├── Contents.json │ │ │ └── README.md │ │ ├── Base.lproj/ │ │ │ ├── LaunchScreen.storyboard │ │ │ └── Main.storyboard │ │ ├── GoogleService-Info.plist │ │ ├── Info.plist │ │ └── Runner-Bridging-Header.h │ ├── Runner.xcodeproj/ │ │ ├── project.pbxproj │ │ ├── project.xcworkspace/ │ │ │ ├── contents.xcworkspacedata │ │ │ └── xcshareddata/ │ │ │ ├── IDEWorkspaceChecks.plist │ │ │ └── WorkspaceSettings.xcsettings │ │ └── xcshareddata/ │ │ └── xcschemes/ │ │ └── Runner.xcscheme │ └── Runner.xcworkspace/ │ ├── contents.xcworkspacedata │ └── xcshareddata/ │ ├── IDEWorkspaceChecks.plist │ └── WorkspaceSettings.xcsettings ├── lib/ │ ├── core/ │ │ ├── const/ │ │ │ ├── color_constants.dart │ │ │ ├── data_constants.dart │ │ │ ├── path_constants.dart │ │ │ └── text_constants.dart │ │ ├── extensions/ │ │ │ ├── exceptions.dart │ │ │ └── list_extension.dart │ │ └── service/ │ │ ├── auth_service.dart │ │ ├── date_service.dart │ │ ├── firebase_storage_service.dart │ │ ├── notification_service.dart │ │ ├── user_service.dart │ │ └── validation_service.dart │ ├── data/ │ │ ├── exercise_data.dart │ │ └── workout_data.dart │ ├── main.dart │ └── screens/ │ ├── change_password/ │ │ ├── bloc/ │ │ │ ├── change_password_bloc.dart │ │ │ ├── change_password_event.dart │ │ │ └── change_password_state.dart │ │ └── change_password_page.dart │ ├── common_widgets/ │ │ ├── fitness_button.dart │ │ ├── fitness_loading.dart │ │ ├── fitness_text_field.dart │ │ ├── settings_container.dart │ │ └── settings_textfield.dart │ ├── edit_account/ │ │ ├── bloc/ │ │ │ ├── edit_account_bloc.dart │ │ │ ├── edit_account_event.dart │ │ │ └── edit_account_state.dart │ │ └── edit_account_screen.dart │ ├── forgot_password/ │ │ ├── bloc/ │ │ │ ├── forgot_password_bloc.dart │ │ │ ├── forgot_password_event.dart │ │ │ └── forgot_password_state.dart │ │ ├── page/ │ │ │ └── forgot_password_page.dart │ │ └── widget/ │ │ └── forgot_password_content.dart │ ├── home/ │ │ ├── bloc/ │ │ │ ├── home_bloc.dart │ │ │ ├── home_event.dart │ │ │ └── home_state.dart │ │ ├── page/ │ │ │ └── home_page.dart │ │ └── widget/ │ │ ├── home_content.dart │ │ ├── home_exercises_card.dart │ │ └── home_statistics.dart │ ├── onboarding/ │ │ ├── bloc/ │ │ │ ├── onboarding_bloc.dart │ │ │ ├── onboarding_event.dart │ │ │ └── onboarding_state.dart │ │ ├── page/ │ │ │ └── onboarding_page.dart │ │ └── widget/ │ │ ├── onboarding_content.dart │ │ └── onboarding_tile.dart │ ├── reminder/ │ │ ├── bloc/ │ │ │ ├── reminder_bloc.dart │ │ │ ├── reminder_event.dart │ │ │ └── reminder_state.dart │ │ ├── page/ │ │ │ └── reminder_page.dart │ │ └── widget/ │ │ └── reminder_content.dart │ ├── settings/ │ │ ├── bloc/ │ │ │ └── bloc/ │ │ │ ├── settings_bloc.dart │ │ │ ├── settings_event.dart │ │ │ └── settings_state.dart │ │ └── settings_screen.dart │ ├── sign_in/ │ │ ├── bloc/ │ │ │ ├── sign_in_bloc.dart │ │ │ ├── sign_in_event.dart │ │ │ └── sign_in_state.dart │ │ ├── page/ │ │ │ └── sign_in_page.dart │ │ └── widget/ │ │ └── sign_in_content.dart │ ├── sign_up/ │ │ ├── bloc/ │ │ │ ├── signup_bloc.dart │ │ │ ├── signup_event.dart │ │ │ └── signup_state.dart │ │ ├── page/ │ │ │ └── sign_up_page.dart │ │ └── widget/ │ │ └── sign_up_content.dart │ ├── start_workout/ │ │ ├── bloc/ │ │ │ ├── start_workout_bloc.dart │ │ │ ├── start_workout_event.dart │ │ │ └── start_workout_state.dart │ │ ├── page/ │ │ │ └── start_workout_page.dart │ │ └── widget/ │ │ ├── start_workout_content.dart │ │ ├── start_workout_timer.dart │ │ └── start_workout_video.dart │ ├── tab_bar/ │ │ ├── bloc/ │ │ │ ├── tab_bar_bloc.dart │ │ │ ├── tab_bar_event.dart │ │ │ └── tab_bar_state.dart │ │ └── page/ │ │ └── tab_bar_page.dart │ ├── workout_details_screen/ │ │ ├── bloc/ │ │ │ ├── workoutdetails_bloc.dart │ │ │ ├── workoutdetails_event.dart │ │ │ └── workoutdetails_state.dart │ │ ├── page/ │ │ │ └── workout_details_page.dart │ │ └── widget/ │ │ ├── panel/ │ │ │ ├── exercises_list.dart │ │ │ ├── workout_details_panel.dart │ │ │ └── workout_tag.dart │ │ ├── workout_details_body.dart │ │ └── workout_details_content.dart │ └── workouts/ │ ├── bloc/ │ │ ├── workouts_bloc.dart │ │ ├── workouts_event.dart │ │ └── workouts_state.dart │ ├── page/ │ │ └── workouts_page.dart │ └── widget/ │ ├── workout_card.dart │ └── workout_content.dart ├── pubspec.yaml ├── test/ │ └── widget_test.dart └── web/ ├── index.html └── manifest.json