Skip to main content

MoAdvice

"The Counselor" — "I guide your decisions"

Status: ⚠️ Partial (recommendations in existing systems)

MoAdvice provides contextual recommendations throughout the app.


Purpose

  • Provide actionable recommendations
  • Surface insights at the right time
  • Guide training decisions
  • Explain the "why" behind suggestions

Current Implementation

Advice is embedded in various systems:

LocationType of Advice
MoFatigueRecovery recommendations
MoProgressProgression suggestions
MoDeloadDeload guidance
MoSuggestWeight recommendations

Example from MoFatigue

{
"fatigue": {
"score": 6,
"recommendations": [
"Consider taking a rest day tomorrow",
"Focus on sleep - aim for 8 hours tonight",
"If training, reduce volume by 20%"
]
}
}

Planned Enhancements

Daily Tips

interface DailyTip {
id: string;
category: TipCategory;
title: string;
content: string;
relevance: string; // Why this tip, now
actionable: boolean;
action?: {
text: string;
link: string;
};
}

type TipCategory =
| 'training'
| 'recovery'
| 'nutrition'
| 'mindset'
| 'technique';

Contextual Triggers

TriggerAdvice
High fatigue"Consider a lighter session"
Plateau detected"Try these 3 strategies..."
Streak milestone"Congrats! Here's how to maintain..."
Poor sleep streak"Sleep tips for better recovery"
New exercise"Form cues for [exercise]"

Planned API Endpoints

EndpointMethodDescription
/api/advice/dailyGETGet daily tip
/api/advice/contextualGETGet context-specific advice
/api/advice/dismissPOSTDismiss advice

Integration Points

Will Receive from:

  • MoFatigue (fatigue status)
  • MoProgress (plateau detection)
  • MoStreaks (streak milestones)
  • MoRecover (recovery patterns)

Will Provide to:

  • Dashboard (tip card)
  • Workout page (inline tips)
  • Push notifications (via MoAlerts)

Implementation Tasks

  • Create advice content library
  • Build context-based tip selection
  • Add tip dismissal/seen tracking
  • Create inline advice components
  • Integrate with notifications