Skip to main content

MoShare

"The Broadcaster" — "I let you celebrate wins"

Status: ❌ Future

MoShare will enable sharing workouts, PRs, and achievements with friends.


Purpose

  • Share workout summaries
  • Announce PRs and milestones
  • Create shareable workout cards
  • Post to social media
  • Build workout feed

Shareable Content

Workout Summary Card

┌────────────────────────────────────────┐
│ 🏋️ Push A - Complete │
│ │
│ Duration: 62 min │
│ Volume: 12,450 lbs │
│ Sets: 18 │
│ Avg RPE: 7.2 │
│ │
│ ⭐ New PR: Bench Press 225×5 │
│ │
│ 🔥 Streak: 7 days │
│ │
│ Shared via Mo │
└────────────────────────────────────────┘

PR Card

┌────────────────────────────────────────┐
│ 🏆 NEW PERSONAL RECORD │
│ │
│ Barbell Bench Press │
│ 225 lbs × 5 reps │
│ │
│ Est. 1RM: 253 lbs │
│ +10 lbs from previous best │
│ │
│ Achieved with Mo │
└────────────────────────────────────────┘

Data Model

interface Share {
id: string;
userId: string;
type: ShareType;
contentId: string; // Session ID or Record ID
visibility: Visibility;

// Generated content
imageUrl: string;
caption: string;

// Engagement
reactions: Reaction[];
comments: Comment[];

sharedAt: Date;
}

interface Reaction {
userId: string;
type: ReactionType;
createdAt: Date;
}

type ShareType = 'workout' | 'pr' | 'streak' | 'badge' | 'challenge';
type Visibility = 'private' | 'friends' | 'public';
type ReactionType = 'fire' | 'strong' | 'respect' | 'inspired';

Sharing Options

DestinationMethod
Mo FeedIn-app sharing
InstagramStory/Post image
Twitter/XTweet with image
Copy LinkShareable URL
Save ImageDownload card

Planned API Endpoints

EndpointMethodDescription
/api/sharePOSTCreate share
/api/share/:idGETGet share details
/api/share/:id/reactPOSTAdd reaction
/api/feedGETGet activity feed

Implementation Tasks

  • Design share card templates
  • Build card image generation
  • Create sharing UI
  • Integrate social media APIs
  • Build activity feed
  • Add reactions system