How fitness-guys/fitness-tracker-app works
Fitness Tracker is an Android self-reporting workout app. Users sign up or log in, navigate to workout tracking, record exercise and elapsed time, then finish at a calorie/time summary; the home dashboard reads saved workouts and presents totals. Profile management and categorized YouTube workout tutorials are separate product branches. The README documents the tracking and playback capabilities, but their source was not sampled, so those links are not inferred. Social features are described as optional plans, not established runtime behavior.
Main entry points: MainActivity.java Tab navigation · TrackFragment.java Workout screen · LoginActivity.java Login · SignupActivity.java Sign up
Components 20
Account and navigation
- Login
app/src/main/java/edu/csueb/codepath/fitness_tracker/LoginActivity.java - Sign up
app/src/main/java/edu/csueb/codepath/fitness_tracker/SignupActivity.java - Tab navigation
app/src/main/java/edu/csueb/codepath/fitness_tracker/MainActivity.java
Workout tracking
- Workout screen
app/src/main/java/edu/csueb/codepath/fitness_tracker/fragments/TrackFragment.java - Workout timer
app/src/main/java/edu/csueb/codepath/fitness_tracker/workout_timer.java - Workout summary
app/src/main/java/edu/csueb/codepath/fitness_tracker/workout_summary.java - Workout data
app/src/main/java/edu/csueb/codepath/fitness_tracker/Workout.java
Dashboard and profile
- Home dashboard
app/src/main/java/edu/csueb/codepath/fitness_tracker/fragments/HomeFragment.java - Workout list
app/src/main/java/edu/csueb/codepath/fitness_tracker/HomeWorkoutListAdapter.java - Profile
app/src/main/java/edu/csueb/codepath/fitness_tracker/fragments/ProfileFragment.java - Profile editing
app/src/main/java/edu/csueb/codepath/fitness_tracker/ProfileEdit.java
Workout tutorials
- Tutorial categories
app/src/main/java/edu/csueb/codepath/fitness_tracker/fragments/LearnFragment.java - Category adapter
app/src/main/java/edu/csueb/codepath/fitness_tracker/adapters/LearnListAdapter.java - Tutorial results
app/src/main/java/edu/csueb/codepath/fitness_tracker/fragments/rvLearnFragmentNotFrag.java - YouTube API client
app/src/main/java/edu/csueb/codepath/fitness_tracker/network/YoutubeAPI.java - Video list adapter
app/src/main/java/edu/csueb/codepath/fitness_tracker/adapters/TutorialAdapterHome.java - Video playback
app/src/main/java/edu/csueb/codepath/fitness_tracker/TutorialPlayback.java
Other components
- App user
- Parse backend
- YouTube service
Connections 25
- App user → Login: enters credentials
- App user → Sign up: submits details
- Login → Parse backend: authenticates
- Sign up → Parse backend: creates account
- Login → Tab navigation: opens on success
- Sign up → Tab navigation: opens on success
- Tab navigation → Home dashboard: selects tab
- Tab navigation → Workout screen: selects tab
- Tab navigation → Tutorial categories: selects tab
- Tab navigation → Profile: selects tab
- Home dashboard → Parse backend: queries workouts
- Home dashboard → Workout list: updates list
- Profile → Parse backend: reads current user
- Profile → Profile editing: opens editor
- Tutorial categories → Category adapter: displays categories
- Category adapter → Tutorial results: opens category
- Tutorial results → YouTube API client: requests videos
- YouTube API client → YouTube service: fetches results
- Tutorial results → Video list adapter: updates video list
- App user → Workout screen: starts workout
- Workout screen → Workout timer: tracks elapsed time
- Workout screen → Workout summary: finishes workout
- Workout summary → Workout data: summarizes activity
- Workout data → Parse backend: stores workout
- App user → Video playback: plays tutorial