Skip to main content

Mo - Product Definition Document

1. Feature List

MVP Features

Pre-App Experience

FeatureMo NameDescription
Landing PageMoHomeMarketing site, features, pricing
Login/SignupMoAuthAccount creation, authentication
Email/Password AuthMoAuthBasic login
Google OAuthMoAuthSign in with Google
Apple OAuthMoAuthSign in with Apple
Onboarding FlowMoStartGoals, experience, coach selection
Password ResetMoAuthForgot password flow

Core Features

FeatureMo NameDescription
DashboardMoBoardToday's workout, stats, coach greeting
Workout LoggerMoLogLog sets, reps, weights, timer
Exercise LibraryMoGuideInstructions, demos for all exercises
AI Coach ChatMoCoachAsk questions, get guidance
Program TrackerMoPhaseCurrent phase/week, what's next
Weight TrackingMoBodyDaily weigh-ins, weekly averages
Progress ChartsMoStatsVisualize weight, strength over time
Coach SelectionMoVoicePick coaches, personality quiz
SettingsMoSettingsProfile, preferences, notifications

V1.1 Features (Post-Launch)

FeatureMo NameDescription
PR RecordsMoPRsPersonal records tracking
Meal TrackerMoFuelProtein/calorie logging
Progress PhotosMoBodyUpload, compare photos
Body MeasurementsMoBodyWaist, chest, arms
NotificationsMoAlertReminders, streaks
Facebook OAuthMoAuthSign in with Facebook

Future Features

FeatureMo NameDescription
Educational ContentMoLearnFull guide library in-app
Social/SharingMoSquadFriends, share PRs
ChallengesMoChallengeWeekly/monthly challenges
Workout BuilderMoBuilderCreate custom workouts
Wearable SyncMoSyncApple Watch, Fitbit
Magic Link AuthMoAuthPasswordless email login

2. User Stories

Landing Page & Auth (MoHome / MoAuth)

#User Story
1As a visitor, I want to see what Mo offers so that I can decide to sign up
2As a visitor, I want to see the coach characters so that I understand the unique value
3As a visitor, I want to see pricing so that I know what it costs
4As a visitor, I want to sign up with email so that I can create an account
5As a visitor, I want to sign up with Google so that I can register quickly
6As a visitor, I want to sign up with Apple so that I can register quickly
7As a user, I want to reset my password so that I can regain access
8As a returning user, I want to log in so that I can access my data

Onboarding (MoStart)

#User Story
9As a new user, I want to enter my fitness goals so that Mo can personalize my experience
10As a new user, I want to enter my experience level so that workouts match my ability
11As a new user, I want to take a personality quiz so that I get matched with the right coach
12As a new user, I want to select my coach(es) so that I get the voice I prefer
13As a new user, I want to input my starting stats (weight, etc.) so that I can track progress

Dashboard (MoBoard)

#User Story
14As a user, I want to see today's workout so that I know what to do
15As a user, I want to see a coach greeting so that I feel motivated
16As a user, I want to see my current streak so that I stay consistent
17As a user, I want to see my weekly progress so that I know I'm on track
18As a user, I want quick access to start my workout so that I can begin fast

Workout Logger (MoLog)

#User Story
19As a user, I want to see my workout exercises so that I know what to do
20As a user, I want to log sets, reps, and weight so that I track my performance
21As a user, I want a rest timer so that I take proper rest between sets
22As a user, I want to see my previous performance so that I know what to beat
23As a user, I want coach tips between sets so that I stay motivated
24As a user, I want to mark a workout complete so that it's recorded
25As a user, I want to skip or swap an exercise so that I can adapt if needed

Exercise Library (MoGuide)

#User Story
26As a user, I want to search exercises so that I can find what I need
27As a user, I want to see exercise instructions so that I use correct form
28As a user, I want to see muscles targeted so that I understand the exercise
29As a user, I want to see demo visuals so that I can follow along

AI Coach (MoCoach)

#User Story
30As a user, I want to ask my coach questions so that I get guidance
31As a user, I want answers in my coach's personality so that it feels personal
32As a user, I want form tips so that I avoid injury
33As a user, I want motivation when I'm struggling so that I keep going

Program Tracker (MoPhase)

#User Story
34As a user, I want to see my current phase so that I know where I am
35As a user, I want to see upcoming weeks so that I can plan ahead
36As a user, I want to see phase progress so that I feel accomplishment

Weight & Body Tracking (MoBody)

#User Story
37As a user, I want to log my daily weight so that I track trends
38As a user, I want to see weekly averages so that I ignore daily fluctuations
39As a user, I want to see a weight chart so that I visualize progress

Progress Charts (MoStats)

#User Story
40As a user, I want to see strength progress charts so that I see gains
41As a user, I want to see body weight trends so that I track recomposition
42As a user, I want to see workout consistency so that I stay accountable

Coach Selection (MoVoice)

#User Story
43As a user, I want to change my coach so that I can try different styles
44As a user, I want to add multiple coaches so that I get variety
45As a user, I want to assign coaches to contexts so that I get the right voice at the right time
46As a user, I want to retake the personality quiz so that I can update my match

Settings (MoSettings)

#User Story
47As a user, I want to update my profile so that my info is current
48As a user, I want to change units (lb/kg) so that I use my preference
49As a user, I want to toggle dark/light mode so that I control appearance
50As a user, I want to manage notifications so that I control alerts
51As a user, I want to log out so that I can secure my account
52As a user, I want to delete my account so that I can remove my data

Offline / Connectivity

#User Story
53As a user, I want to log workouts offline so that I can use Mo without wifi at the gym
54As a user, I want my data to sync when back online so that nothing is lost

Error / Recovery States

#User Story
55As a user, I want to undo an accidental log entry so that I can fix mistakes
56As a user, I want to edit past workouts so that I can correct errors

Rest Days / Non-Workout Days

#User Story
57As a user, I want rest day guidance so that I know it's okay not to train
58As a user, I want to log rest day activities (stretching, walking) so that I track all activity

Missed Workouts / Returning

#User Story
59As a user who missed days, I want encouraging re-entry so that I don't feel guilty
60As a user, I want to adjust my program if I missed time so that I don't jump back too hard

Deload / Recovery Weeks

#User Story
61As a user, I want deload week guidance so that I know to reduce intensity

First-Time Moments

#User Story
62As a user hitting my first PR, I want celebration so that I feel accomplished
63As a user completing my first week, I want recognition so that I build momentum

Data & Privacy

#User Story
64As a user, I want to export my data so that I own my information
65As a user, I want to see privacy policy so that I know how data is used

Subscription / Payments

#User Story
66As a user, I want to see free vs pro features so that I understand the value
67As a user, I want to upgrade to pro so that I unlock features
68As a user, I want to manage my subscription so that I control billing

3. User Flows

Flow 1: First-Time User (Visitor → Active User)

Landing Page


Click "Get Started"


Sign Up (Email / Google / Apple)


Onboarding Step 1: "What's your goal?"
- Lose fat
- Build muscle
- Both (recomposition)
- Get stronger
- General fitness


Onboarding Step 2: "Experience level?"
- Beginner (0-1 years)
- Intermediate (1-3 years)
- Advanced (3+ years)
- Returning (used to train, took a break)


Onboarding Step 3: "Starting stats"
- Current weight
- Goal weight (optional)
- Height


Onboarding Step 4: "Choose your coach"
- Take personality quiz → Get recommendation
- Or browse and pick manually
- Select 1 to 8 coaches


Onboarding Step 5: "Select your program"
- Recommended based on goals
- Or browse options


Dashboard (MoBoard)
- Coach greeting
- "Ready for your first workout?"

Flow 2: Daily Workout

Open App


Dashboard (MoBoard)
- Coach greeting: "Push day. Let's go!"
- Today's workout card
- Quick stats


Tap "Start Workout"


Workout Screen (MoLog)

├── Exercise 1
│ ├── See: Name, sets, reps, previous weight
│ ├── Log: Weight, reps for each set
│ ├── Rest timer starts after each set
│ ├── Coach tip appears during rest
│ └── Mark exercise complete

├── Exercise 2... (repeat)

├── [Can skip or swap exercise]

└── Exercise N (final)


Workout Complete Screen
- Duration
- Total volume
- Coach celebration message
- PR notifications (if any)
- [Squad messages if multi-coach]


Return to Dashboard
- Streak updated
- Progress updated

Flow 3: Log Weight

Dashboard


Tap "Log Weight" or go to MoBody


Weight Entry Screen
- Today's date
- Enter weight
- [Optional] Add note


Save


See updated chart
- Today's weight
- Weekly average
- Trend line

Flow 4: Ask Coach (MoCoach)

Dashboard or any screen


Tap Coach icon / "Ask Coach"


MoCoach Chat Screen
- Coach avatar (selected coach)
- Chat history


Type question: "How do I improve my bench?"


Coach responds in their personality


Continue conversation or close

Flow 5: Change Coach

MoSettings


Tap "My Coaches" (MoVoice)


Coach Selection Screen
- See all 8 coaches
- Current selection highlighted


Options:
├── Tap coach to select/deselect
├── Tap "Personality Quiz" to retake
└── Tap "Context Assignment" to assign by activity


Assign coaches:
- Workouts: [Select]
- Rest Days: [Select]
- Nutrition: [Select]
- Motivation: [Select]


Save → Changes apply immediately

Flow 6: View Progress (MoStats)

Dashboard


Tap "Progress" or MoStats tab


Progress Screen

├── Tab: Weight
│ - Line chart over time
│ - Weekly averages
│ - vs. goal

├── Tab: Strength
│ - PR list by exercise
│ - Progress per lift

└── Tab: Consistency
- Workouts per week
- Streak history
- Calendar view

Flow 7: Returning After Missed Days

Open App (after 2+ days away)


Dashboard with special state


Coach message (Sam by default for Mo adaptive):
"Hey, life happens. Ready to get back at it?"


Options:
├── "Jump back in" → Resume program
├── "Adjust program" → Modify intensity
└── "Talk to coach" → MoCoach for guidance

Flow 8: Offline Workout

No internet connection detected


Open App


Dashboard loads from cache
- Banner: "Offline mode"
- Today's workout available


Complete workout (logged locally)


When back online:
- Auto-sync
- Notification: "Workout synced!"

4. Screen Inventory

Public (No Auth) - 7 Screens

ScreenMo NameDescription
Landing PageMoHomeMarketing, features, pricing, CTA
LoginMoAuthEmail/password, OAuth buttons
Sign UpMoAuthCreate account form
Forgot PasswordMoAuthPassword reset request
Reset PasswordMoAuthSet new password
Privacy Policy-Legal requirement
Terms of Service-Legal requirement

Onboarding (Post-Auth, First Time) - 7 Screens

ScreenMo NameDescription
Goal SelectionMoStartWhat's your fitness goal?
Experience LevelMoStartBeginner to advanced
Starting StatsMoStartWeight, height, etc.
Personality QuizMoStartMatch with coach
Coach SelectionMoStartPick your coach(es)
Program SelectionMoStartChoose training program
Welcome/ReadyMoStartFinal confirmation, enter app

Main App - 14 Screens

ScreenMo NameDescription
DashboardMoBoardHome screen, today's workout, stats
Workout DetailMoLogPre-workout view of exercises
Active WorkoutMoLogLogging sets/reps, timer, coach tips
Workout CompleteMoLogSummary, celebration, PR alerts
Exercise LibraryMoGuideBrowse/search all exercises
Exercise DetailMoGuideInstructions, demo, muscles
Coach ChatMoCoachAI conversation with coach
Program OverviewMoPhaseCurrent phase, upcoming weeks
Progress DashboardMoStatsCharts and trends
Weight LogMoBodyLog weight, view chart
ProfileMoProfileUser info, goals
Coach SelectionMoVoiceChange/manage coaches
SettingsMoSettingsPreferences, notifications, account
SubscriptionMoSettingsManage plan, upgrade
ScreenDescription
Rest TimerCountdown between sets with coach tip
PR CelebrationNew personal record popup
Streak MilestoneCelebration for consistency
Exercise SwapChoose replacement exercise
Quick Weight EntryLog weight from dashboard
Confirm LogoutAre you sure?
Delete AccountWarning and confirmation

Empty / Error States - 5 Screens

ScreenDescription
Offline BannerShown when no connection
Empty Workout HistoryFirst time, no workouts yet
Empty ProgressNo data to show yet
Error StateSomething went wrong
Loading StateFetching data

Screen Count Summary

CategoryCount
Public7
Onboarding7
Main App14
Modals/Overlays7
Empty/Error States5
Total40 screens

Document Status

  • Feature List (MVP, V1.1, Future)
  • User Stories (68 total)
  • User Flows (8 flows)
  • Screen Inventory (40 screens)

Phase 2: Product Definition - COMPLETE


Document created: December 2024 Version: 1.0 Status: Complete