Social Features
Design Philosophy
Privacy by Default
The Convergence Protocolβs social features are built on a foundation of radical privacy and user control:
- All social features are OPT-IN: No social functionality is enabled without explicit, informed consent
- Default state: completely private: New users start with maximum privacy; they must actively choose to share
- No data shared without explicit consent: Every piece of shared data requires user approval
- Can disable anytime, data deleted: Users can exit social features at any moment, with complete data removal
Privacy Promise: We will never:
- Import contacts without permission
- Share data with third parties
- Use social data for advertising
- Make any information public by default
Positive Psychology
Our social features are designed around principles of positive psychology and behavioral science:
- No shame, no guilt: Never make users feel bad for missing a day or falling behind
- Comparison is for motivation, not competition: Show relative progress to inspire, not to create anxiety
- Celebrate progress, not perfection: Acknowledge effort and consistency over flawless execution
- Supportive community over competitive leaderboard: Foster connection and mutual support rather than zero-sum competition
Psychological Safety Principles:
- Frame comparisons as βinspirationβ not βrankingβ
- Highlight personal growth over relative standing
- Normalize struggle and setbacks as part of the journey
- Celebrate the act of beginning, not just completing
Minimal Friction
Social features should enhance the meditation experience without becoming the focus:
- Simple friend connections: One-tap invites, no complex friend management
- No complex social graph: No followers, no influence scores, no social hierarchy
- Easy sharing, easy opting out: Share in two taps; disable social features in one
- Focus on the journey, not the platform: Social features support the meditation practice, not vice versa
Feature Overview
1. Share Progress
Share Card
A beautifully designed, branded shareable image that users can post to social media or share directly.
Visual Design:
βββββββββββββββββββββββββββββββ
β β
β [Convergence Protocol β
β Logo/Icon] β
β β
β "Day 23 of 40" β
β β
β βββββββββββββββββββ β
β β [Streak Icon] β β
β β 12-Day Streak β β
β βββββββββββββββββββ β
β β
β "The Mirror Stage" β
β β
β "The obstacle is the β
β path." β
β β Zen Proverb β
β β
β [QR Code: Join the Journey]β
β β
β convergenceprotocol.io β
βββββββββββββββββββββββββββββββ
Card Elements:
- Day counter (X of 40) with visual progress indicator
- Current streak count with flame or similar icon
- Current dayβs theme/title
- Quote from todayβs meditation content
- Subtle branding and link
- Optional: QR code for easy joining
Card Variants:
- Milestone Cards: Special designs for Days 7, 14, 21, 30, 40
- Streak Cards: Celebrate streak achievements (7, 14, 21, 30, 40 days)
- Completion Card: Special design for Day 40 finishers with βGuideβ status
- Weekly Summary: Aggregate card showing weekβs progress
Share Destinations
Native Share Sheet:
- Twitter/X (pre-populated with quote and hashtag)
- Facebook (optimized image size)
- LinkedIn (professional growth framing)
- Instagram Stories (vertical format)
- WhatsApp/Telegram (direct message)
- Copy link
- Download image (save to device)
Platform-Specific Copy:
Twitter/X:
Day 23 of 40 in The Convergence Protocol π§
"The obstacle is the path."
12-day streak going strong. This journey is transforming how I relate to myself.
#ConvergenceProtocol #MeditationJourney #Day23
[link]
LinkedIn:
40 days of intentional practice. Day 23 complete.
The Convergence Protocol isn't just meditationβit's a structured journey of self-discovery. Today's theme: The Mirror Stage.
Consistency compounds. What's your daily practice?
#Mindfulness #PersonalGrowth #ConvergenceProtocol
[link]
WhatsApp/Telegram:
Hey! I'm on Day 23 of a 40-day meditation journey. It's been incredibleβ12 days straight now.
Want to join me? We could do this together: [link]
Share Triggers
Automatic Prompts (can be disabled):
- After completing a dayβs meditation
- When hitting streak milestones (7, 14, 21, 30, 40)
- Weekly summary (every 7 days)
- Upon journey completion (Day 40)
Manual Sharing:
- Share button always available in app
- Can share any previous dayβs quote
- Can share without completing (βIβm starting this journeyβ)
Smart Timing:
- Prompt appears after meditation completion (not before)
- 3-second delay to allow completion feeling to land
- One-tap dismiss if user not interested
- βDonβt ask again todayβ option
2. Friend Connections
Adding Friends
Invite Link Method:
- User taps βInvite Friendβ in social settings
- System generates unique invite code:
convergence://join/ABC123XYZ - User shares via any platform
- Friend taps link β opens app β sees connection request
- Friend accepts β mutual connection established
QR Code Method:
- User displays personal QR code
- Friend scans with app camera
- Connection request sent
- User accepts β connection established
Manual Code Entry:
- User receives friendβs code (e.g., βSUNRISE42β)
- Enters code in βAdd Friendβ field
- System validates and sends request
- Friend accepts β connection established
Important: No contact import. Users must intentionally share and accept connections.
Friend List
Friend Card Display:
βββββββββββββββββββββββββββββββββββββββ
β π§ Sarah Chen [β’β’β’] β
β β
β Day 23 of 40 βββββββββββββββββββ β
β π₯ 12-day streak β
β Last active: Today β
β β
β [Send Encouragement] β
βββββββββββββββββββββββββββββββββββββββ
Information Shown:
- Display name (user-chosen or anonymous)
- Avatar (emoji selection or default)
- Current day in journey (X of 40)
- Visual progress bar
- Current streak count
- Last active status (Today / Yesterday / This week / Longer)
- Quick action: Send encouragement
Friend List Organization:
- Sort by: Last active (default), Day progress, Streak length
- Group by: Active today / Active this week / Less active
- Filter: All / Active now / On same day / Ahead / Behind
Privacy Levels
Users choose their privacy level independently for each type of data:
Progress Visibility:
- Private: No one sees your progress (default)
- Friends Only: Only connected friends see your day/streak
- Anonymous Public: Progress visible to all, identity hidden (shown as βMeditator #1234β)
Granular Controls:
privacySettings: {
progressVisibility: "private" | "friends" | "anonymous",
streakVisibility: "private" | "friends",
nameVisibility: "private" | "friends" | "anonymous",
allowEncouragement: "nobody" | "friends",
showLastActive: false | true
}Changing Privacy:
- One-tap privacy level change in settings
- Changes apply immediately
- Friends notified of privacy change (βSarah is now sharing anonymouslyβ)
3. Progress Comparison
βWhoβs Aheadβ Comparisons
Comparison Messages (designed to inspire, not shame):
When youβre ahead:
- βYouβre 3 days ahead of Sarah. Keep leading the way!β
- βYouβve been consistentβ5 days ahead of your friend Mike.β
- βYouβre blazing the trail! 7 days ahead of the pack.β
When a friend is ahead:
- βSarah just completed Day 25! Inspiration to keep going.β
- βMike is on a 14-day streakβimpressive dedication.β
- βYour friend Alex reached Day 30. The finish line is in sight for them!β
When converged (same day):
- βYou and Sarah are both on Day 20βconvergence!β
- βYou and 3 friends are all on Day 15. Synchronized journey!β
- βConvergence moment: You and Mike reached Day 30 together.β
When behind (framed positively):
- βSarah started a week before youβher progress inspires!β
- βMike is on Day 30. When you get there, youβll have a guide.β
- βEveryone moves at their own pace. Your Day 15 is just as meaningful.β
Comparison Display:
βββββββββββββββββββββββββββββββββββββββ
β Journey Comparisons β
β β
β π Ahead of you: β
β Sarah (Day 25) - 3 days ahead β
β Mike (Day 30) - 8 days ahead β
β β
β π€ Same day as you: β
β Alex (Day 22) - Convergence! β
β β
β πΆ Behind you: β
β Jamie (Day 18) - 4 days behind β
β β
β [View Journey Map] β
βββββββββββββββββββββββββββββββββββββββ
Journey Map View
A visual representation of friendsβ positions on the 40-day path.
Visual Design:
Day 1 Day 40
| |
[β’]ββββ[β’]ββββ[β’]ββββ[β’]ββββ[β’]ββββ[β’]ββββ[β’]ββββ[β
]
| | | | | | | |
You Mike Sarah Alex -- -- -- Guides
(22) (30) (25) (22) [π§x12]
Legend:
β’ = Day marker
β
= Completion
π§ = Guide (completed journey)
-- = No friends at this stage
Interactive Elements:
- Tap any friend marker to see their card
- Tap βGuidesβ to see Day 40 finishers
- Zoom to see cluster details
- Filter by: All friends / Active recently / Same cohort
Cluster Display: When multiple friends are at the same day:
- Show count badge: β3 friends hereβ
- Tap to expand and see names
- βConvergence momentβ celebration for 2+ friends on same day
Streak Leaderboard (Friends Only)
Current Streak Ranking:
βββββββββββββββββββββββββββββββββββββββ
β Friend Streaks π₯ β
β β
β 1. Mike ............... 14 days β
β 2. You ................ 12 days β
β 3. Sarah .............. 8 days β
β 4. Alex ............... 3 days β
β 5. Jamie .............. 1 day β
β β
β [View Longest Streaks] β
βββββββββββββββββββββββββββββββββββββββ
Longest Streak Ranking:
- Shows all-time best streaks
- Encourages consistency over time
- βYour longest: 21 days (Day 15-35)β
Important Design Notes:
- No global leaderboard (avoids toxicity)
- Friends-only keeps it intimate and supportive
- Rankings update daily, not real-time
- No penalties for missing days
4. Encouragement System
Nudges (Passive Notifications)
Friend Activity Nudges:
- βSarah is on a 5-day streak! π₯β
- β3 friends completed todayβs meditationβ
- βMike just started his journeyβwelcome them!β
- βAlex reached Day 20. Theyβre two-thirds through!β
Milestone Nudges:
- βSarah completed Week 1! πβ
- βMike hit a 14-day streak!β
- βAlex reached Day 40 and is now a Guide! πβ
Group Activity Nudges:
- β5 friends meditated todayβ
- βYour cohort is 80% through the journeyβ
- β3 friends reached Day 30 this weekβ
Nudge Settings:
- Frequency: Real-time / Daily digest / Weekly / Off
- Types: All / Milestones only / None
- Delivery: In-app / Push notification / Both
Celebrations
Individual Celebrations:
- Friend completes a week: βSarah completed Week 2! πβ
- Friend hits streak milestone: βMikeβs 21-day streak! Incredible! π₯β
- Friend reaches Day 40: βAlex completed the journey! Theyβre now a Guide! πβ
Group Celebrations:
- Multiple friends at same milestone: βYou, Sarah, and Mike all reached Day 20!β
- Cohort progress: βYour March cohort is 75% complete!β
- Streak synchronization: βYou and 2 friends all have 7-day streaks!β
Celebration Display:
βββββββββββββββββββββββββββββββββββββββ
β π Celebration! β
β β
β Sarah completed Day 40! β
β β
β They've reached the convergence. β
β Now they're a Guide for others. β
β β
β [Send Congratulations] β
βββββββββββββββββββββββββββββββββββββββ
Support Messages
Pre-written Encouragement Options:
For streak milestones:
- βAmazing streak! Your dedication inspires me. π₯β
- βXX days strong! Keep that momentum going.β
- βConsistency is keyβyouβre proving it!β
For day progress:
- βDay XX complete! Youβre making real progress.β
- βThe middle is the hardestβyouβre doing great.β
- βAlmost there! The final stretch is powerful.β
For new starters:
- βWelcome to the journey! Youβre going to love it.β
- βDay 1 is the most important day. Well done!β
- βSo glad you started. Iβm here if you need support.β
For tough days:
- βDay 20 is intenseβyouβve got this.β
- βThe Mirror Stage is challenging. Trust the process.β
- βEvery day matters, including the hard ones.β
For completion:
- βDay 40! You did it! πβ
- βWelcome to the Guides. Your journey inspires.β
- βWhat a transformation. Congratulations!β
Generic support:
- βThinking of you on your journey.β
- βYour practice inspires my practice.β
- βHere if you need encouragement.β
Custom Message Option:
- Users can write custom messages (max 140 characters)
- Profanity filter applied
- No links allowed (prevent spam)
- Messages are one-way (no conversation threads)
Sending Encouragement:
βββββββββββββββββββββββββββββββββββββββ
β Send Encouragement to Sarah β
β β
β [Quick Options] β
β β "Amazing streak! π₯" β
β β "Day 25βalmost there!" β
β β "Your journey inspires me." β
β β "Custom message..." β
β β
β [Send] [Cancel] β
βββββββββββββββββββββββββββββββββββββββ
5. Group Journeys
Start Together
Creating a Group:
- User selects βStart Group Journeyβ
- Chooses start date (today or future)
- Names the group (optional): βTeam Alphaβ / βMarch Mindfulnessβ
- System generates invite link
- User shares with friends
- Friends join before start date
- Everyone begins Day 1 together on start date
Group Dashboard:
βββββββββββββββββββββββββββββββββββββββ
β Team Alpha β
β Started: March 1, 2024 β
β β
β Group Progress: Day 15 of 40 β
β βββββββββββββββββββββββββββββββββ β
β β
β Members (5): β
β π’ You ............... Day 15 β
β π’ Sarah ............. Day 15 β
β π’ Mike .............. Day 15 β
β π‘ Alex .............. Day 14 β
β π΄ Jamie ............. Day 12 β
β β
β [View Journey Map] [Send Group Msg]β
βββββββββββββββββββββββββββββββββββββββ
Group Features:
- Synchronized start (everyone on same day)
- Group progress visualization
- Member status indicators (on track / 1 day behind / 2+ days behind)
- Group encouragement (send to all members)
- Group celebration when everyone hits milestones
Group Management:
- Creator can remove members
- Members can leave anytime
- Group dissolves after Day 40 + 30 days
- Data deleted when group dissolves
Cohort Mode
Public Cohorts:
- Pre-scheduled start dates (1st of each month)
- Open to anyone who opts in
- βMarch 2024 Cohortβ / βApril 2024 Cohortβ
- Anonymous participation option
Cohort Dashboard:
βββββββββββββββββββββββββββββββββββββββ
β March 2024 Cohort β
β 247 members β’ Day 15 of 40 β
β β
β Today's Completion: 89% β
β βββββββββββββββββββββββββββββββ β
β β
β Cohort Progress: β
β Day 15: 156 members (63%) β
β Day 14: 48 members (19%) β
β Day 13: 23 members (9%) β
β Other: 20 members (9%) β
β β
β You're in the majorityβwell done! β
βββββββββββββββββββββββββββββββββββββββ
Cohort Benefits:
- Shared experience with strangers-turned-journey-mates
- Anonymous participation removes social pressure
- See youβre not alone in the practice
- Collective energy of synchronized practice
Cohort Privacy:
- Members see aggregate data only
- No individual identification (unless friends)
- Can participate fully anonymously
- Can switch to private mode anytime
Technical Implementation
Data Model
Friend Connection
{
// Unique identifiers
connectionId: "uuid-v4", // Primary key
userId: "uuid-v4", // User who initiated
friendId: "uuid-v4", // User who accepted
// Connection status
status: "pending" | "accepted" | "blocked" | "removed",
initiatedAt: "ISO-8601 timestamp",
acceptedAt: "ISO-8601 timestamp", // null if pending
// Permissions (granular privacy)
permissions: {
seeProgress: boolean, // default: true
seeStreaks: boolean, // default: true
seeName: boolean, // default: true
sendEncouragement: boolean, // default: true
seeLastActive: boolean // default: true
},
// Metadata
source: "invite_link" | "qr_code" | "manual_code",
inviteCode: "ABC123XYZ", // For tracking
// Soft delete
removedAt: "ISO-8601 timestamp", // null if active
removedBy: "uuid-v4" // Who removed the connection
}Shared Progress
{
// User identification
userId: "uuid-v4",
// Display information (user-controlled)
displayName: "Sarah" | "Meditator #1234" | null,
avatar: "π§" | "πΈ" | "π" | "custom_url" | null,
// Progress data
currentDay: 23, // 1-40, or 0 if not started
totalCompleted: 22, // Total days completed
currentStreak: 5, // Consecutive days
longestStreak: 12, // All-time best
// Activity tracking
lastActive: "ISO-8601 timestamp",
lastCompletedDay: "ISO-8601 timestamp",
// Journey status
journeyStatus: "not_started" | "in_progress" | "completed" | "paused",
startedAt: "ISO-8601 timestamp",
completedAt: "ISO-8601 timestamp", // null if not completed
// Privacy level
privacyLevel: "private" | "friends" | "anonymous",
// Visibility flags (granular control)
visibility: {
showProgress: boolean,
showStreaks: boolean,
showName: boolean,
showLastActive: boolean
},
// Social features enabled
socialEnabled: boolean,
socialEnabledAt: "ISO-8601 timestamp"
}Encouragement Message
{
messageId: "uuid-v4",
// Sender/recipient
senderId: "uuid-v4",
recipientId: "uuid-v4",
// Message content
messageType: "pre_written" | "custom",
preWrittenId: "streak_milestone_1", // null if custom
customText: "You're doing great!", // null if pre-written
// Timestamps
sentAt: "ISO-8601 timestamp",
readAt: "ISO-8601 timestamp", // null if unread
// Status
status: "sent" | "delivered" | "read",
// Soft delete
deletedBySender: boolean,
deletedByRecipient: boolean
}Group Journey
{
groupId: "uuid-v4",
// Group info
name: "Team Alpha",
description: "Our mindfulness journey",
createdBy: "uuid-v4",
createdAt: "ISO-8601 timestamp",
// Schedule
startDate: "ISO-8601 date",
currentDay: 15, // Calculated from start date
// Members
members: [
{
userId: "uuid-v4",
joinedAt: "ISO-8601 timestamp",
role: "creator" | "member",
status: "active" | "left" | "removed"
}
],
// Settings
isPublic: false, // Private groups only
allowNewMembers: true, // Can new people join?
maxMembers: 20, // Limit for private groups
// Status
status: "forming" | "active" | "completed" | "dissolved",
dissolvedAt: "ISO-8601 timestamp"
}Cohort
{
cohortId: "uuid-v4",
// Cohort info
name: "March 2024",
startDate: "2024-03-01",
endDate: "2024-04-09", // 40 days later
// Members (anonymous)
totalMembers: 247,
activeMembers: 189, // Completed today
// Progress distribution
progressDistribution: {
"day_40": 12,
"day_39": 8,
// ... etc
"day_1": 3,
"not_started": 5
},
// Aggregate stats
averageCompletion: 0.89, // 89% completed today
totalMeditationMinutes: 14820,
// Status
status: "forming" | "active" | "completed",
isJoinable: true // Can new people join?
}Sync Strategy
Real-Time Updates (WebSockets)
Connection:
- WebSocket connection established when app opens
- Authenticated with JWT token
- Reconnects automatically on disconnect
Events:
// Client β Server
{
type: "subscribe_friends",
friendIds: ["uuid-1", "uuid-2", "uuid-3"]
}
// Server β Client
{
type: "friend_progress_update",
friendId: "uuid-1",
data: {
currentDay: 24,
currentStreak: 6,
lastActive: "2024-03-15T09:30:00Z"
},
timestamp: "2024-03-15T09:30:15Z"
}Event Types:
friend_progress_update: Friend completed a dayfriend_streak_milestone: Friend hit streak milestonefriend_journey_complete: Friend finished Day 40encouragement_received: New encouragement messagefriend_connected: New friend connection acceptedgroup_update: Group member progress update
Polling Fallback
When WebSockets Unavailable:
- Poll every 5 minutes when app is open
- Poll immediately when app foregrounds
- Poll after user action (completing day, sending encouragement)
Polling Endpoint:
GET /api/social/friends/progress
Response: {
friends: [
{
friendId: "uuid-1",
currentDay: 24,
currentStreak: 6,
lastActive: "2024-03-15T09:30:00Z",
hasUpdate: true // New since last poll
}
],
lastPoll: "2024-03-15T09:00:00Z"
}Push Notifications
Notification Types:
- Friend streak milestone
- Friend journey completion
- Encouragement received
- Group milestone reached
- Cohort celebration
Delivery Strategy:
- Batch non-urgent notifications (daily digest)
- Immediate delivery for encouragement received
- Respect userβs quiet hours (no notifications 10pm-7am)
- Honor DND mode
Privacy Controls
Granular Permissions System
Permission Matrix:
| Action | Private | Friends Only | Anonymous Public |
|---|---|---|---|
| See current day | No | Yes | Yes (as βDay Xβ) |
| See streak | No | Yes | Yes (as βX-day streakβ) |
| See name | No | Yes | No (anonymous) |
| See last active | No | Optional | No |
| Send encouragement | No | Yes | No |
Permission Change Flow:
- User changes privacy setting in UI
- Client sends update to server
- Server validates change
- Server updates
SharedProgressrecord - Server notifies affected friends (βSarah is now sharing anonymouslyβ)
- Friendsβ apps update on next sync
Data Retention & Deletion
Friend Connection Removal:
- Connection marked as
removedin database - Both users no longer see each otherβs progress
- Historical encouragement messages retained but anonymized
- Data permanently deleted after 90 days
Social Features Disable:
- User can disable all social features in one action
- All friend connections marked removed
- Shared progress data deleted
- Encouragement messages anonymized
- User can re-enable later (fresh start)
Account Deletion:
- All friend connections deleted
- All shared progress deleted
- All encouragement messages deleted
- Group memberships removed
- Cohort participation anonymized
- Full deletion within 30 days
Data Export:
- User can request export of all social data
- Includes: friend list, encouragement history, group memberships
- Delivered as JSON file
- Processed within 7 days
User Flows
Enabling Social Features
Flow Diagram:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Settings β Social Features β "Enable Social Features" β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β [Privacy Explanation Screen] β
β β
β "Social features let you: β
β β’ Share progress with friends β
β β’ See friends' journeys β
β β’ Send and receive encouragement β
β β’ Join group journeys β
β β
β You control what you share and who can see it. β
β You can disable this anytime." β
β β
β [Learn More] [Continue] β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β [Privacy Level Selection] β
β β
β Who can see your progress? β
β β
β β Private - No one sees your progress β
β β Friends Only - Only friends you connect with β
β β Anonymous Public - Progress visible, identity hidden β
β β
β [Advanced Privacy Settings] β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β [Advanced Privacy Settings] β
β β
β Who can see your: β
β [β’] Current day in journey β
β [β’] Streak count β
β [ ] Last active time β
β β
β Who can send you encouragement: β
β [β’] Friends only β
β [ ] No one β
β β
β Display name: β
β [Sarah] (or leave blank for anonymous) β
β β
β Avatar: [π§] [πΈ] [π] [ποΈ] [Custom] β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β [Confirmation Screen] β
β β
β You're about to enable social features with: β
β β’ Privacy: Friends Only β
β β’ Share: Day progress, streaks β
β β’ Receive encouragement: Yes β
β β
β You can change these settings anytime. β
β β
β [Enable Social Features] [Go Back] β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β [Success Screen] β
β β
β π Social features enabled! β
β β
β Next steps: β
β β’ Add friends to see their progress β
β β’ Join a group journey β
β β’ Share your progress β
β β
β [Add Friends] [Join Group] [Done] β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Adding a Friend
Flow Diagram:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Social β Friends β "Add Friend" β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β [Add Friend Options] β
β β
β Choose how to connect: β
β β
β [π€ Share Invite Link] β
β [π· Scan QR Code] β
β [β¨οΈ Enter Friend Code] β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
// Option 1: Share Invite Link
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β [Your Invite Link] β
β β
β convergence://join/ABC123XYZ β
β β
β [Share] [Copy] [QR Code] β
β β
β Share via: [Twitter] [WhatsApp] [Email] [More] β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
[User shares link]
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β [Friend Receives Link] β
β β
β "Join me on The Convergence Protocol! β
β 40 days of meditation and self-discovery." β
β β
β [Open in App] β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β [Connection Request Screen] β
β β
β Sarah wants to connect β
β β
β If you accept, you'll be able to: β
β β’ See each other's progress β
β β’ Send encouragement β
β β’ Journey together β
β β
β [Accept] [Decline] [Block] β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β [Success - Both Sides] β
β β
β You're now connected with Sarah! β
β β
β [View Their Progress] [Send Encouragement] β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Sharing Progress
Flow Diagram:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β [After Completing Day 23] β
β β
β β Day 23 Complete β
β β
β "The obstacle is the path." β
β β
β [Continue] [Share Progress] β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β [Share Options] β
β β
β Share your progress: β
β β
β [π± Share Card Preview] β
β β
β Share to: β
β [Twitter] [Facebook] [LinkedIn] [Instagram] β
β [WhatsApp] [Telegram] [Email] β
β β
β [πΎ Download Image] [π Copy Link] β
β β
β [β Don't ask again today] β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β [Twitter Share Preview] β
β β
β [Share Card Image] β
β β
β Caption: β
β Day 23 of 40 in The Convergence Protocol π§ β
β β
β "The obstacle is the path." β
β β
β 12-day streak going strong. β
β β
β #ConvergenceProtocol #MeditationJourney β
β β
β [Edit] [Share to Twitter] [Cancel] β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Sending Encouragement
Flow Diagram:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β [Friend List β Tap Sarah] β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β [Sarah's Progress Card] β
β β
β π§ Sarah Chen β
β β
β Day 25 of 40 βββββββββββββββββββββββ β
β π₯ 14-day streak β
β Last active: Today β
β β
β [Send Encouragement] [View Journey] [Remove Friend] β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β [Send Encouragement] β
β β
β Send to Sarah: β
β β
β Quick options: β
β β "Amazing streak! π₯" β
β β "Day 25βalmost there!" β
β β "Your journey inspires me." β
β β "Day 20 is toughβyou've got this" β
β β "Custom message..." β
β β
β [Write your own (140 chars max)] β
β "So impressed by your consistency!" β
β β
β [Send] [Cancel] β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β [Success] β
β β
β β Encouragement sent to Sarah! β
β β
β [Back to Friends] β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Creating a Group Journey
Flow Diagram:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Social β Groups β "Create Group" β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β [Create Group Journey] β
β β
β Group name (optional): β
β [Team Alpha ] β
β β
β Start date: β
β [Today] [Tomorrow] [Custom: ___] β
β β
β [β’] Everyone starts Day 1 together β
β [ ] Members can join anytime (not recommended) β
β β
β [Create Group] β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β
βΌ
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β [Group Created!] β
β β
β Team Alpha starts March 15, 2024 β
β β
β Invite friends: β
β [Share Invite Link] β
β [Invite from Friends List] β
β β
β Group code: ALPHA88 β
β β
β [Done] β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
Safety & Moderation
Anti-Spam Measures
Rate Limiting:
- Friend requests: Max 10 per day per user
- Encouragement messages: Max 50 per day per user
- Custom messages: Max 20 per day per user
- Group invites: Max 5 per day per user
Block Functionality:
- Users can block any friend
- Blocked users cannot:
- See your progress
- Send encouragement
- Invite you to groups
- Find you via search
- Block is one-way (you also donβt see them)
- Can unblock anytime
Report System:
- Report categories:
- Inappropriate message
- Harassment
- Spam
- Other
- Reports reviewed within 24 hours
- Action taken: Warning / Temporary ban / Permanent ban
- Reporter notified of outcome
No Public Messaging:
- Only pre-written encouragement options
- Custom messages limited to 140 characters
- No links allowed in custom messages
- No conversation threads (one-way only)
- No group chat functionality
Mental Health Safeguards
No βFalling Behindβ Messaging:
- Never show βYouβre behind Sarahβ
- Never show βX friends are ahead of youβ
- Frame all comparisons positively
- Emphasize personal journey over relative progress
No Guilt for Missed Days:
- Streak resets without shame
- βYour streak ended. Day 1 is always available.β
- Celebrate return: βWelcome back! Your journey continues.β
- No notifications about broken streaks
Emphasis on Personal Journey:
- Default view: Your progress only
- Social features are opt-in
- Easy to disable if causing anxiety
- Regular check-ins: βHow are you feeling about social features?β
Resources for Overwhelm:
- In-app message: βFeeling overwhelmed? Itβs okay to take a break.β
- Link to mental health resources
- Option to pause (not quit) the journey
- Option to disable social features temporarily
Design Principles:
- No red colors for βbadβ states (use neutral grays)
- No negative sound effects
- No vibration for βfailureβ events
- Positive framing on all copy
Content Moderation
Pre-written Messages:
- All pre-written options reviewed by mental health professionals
- No comparative language (βbetter thanβ, βahead ofβ)
- No pressure language (βshouldβ, βneed toβ)
- Focus on celebration and support
Custom Message Filtering:
- Profanity filter (block inappropriate language)
- Link detection (block URLs)
- Contact info detection (block phone numbers, emails)
- Pattern detection for spam
- AI moderation for harmful content
User Controls:
- Disable custom messages (pre-written only)
- Disable all encouragement
- Block specific users
- Report inappropriate content
Metrics & Success
Engagement Metrics
Social Feature Adoption:
- Percentage of users who enable social features
- Breakdown by privacy level chosen
- Time to enable (days after starting journey)
- Correlation with journey completion
Friend Connections:
- Average number of friends per social user
- Connection acceptance rate
- Average time from invite to acceptance
- Most common connection method
Sharing Activity:
- Shares per user per week
- Most popular share destination
- Share card generation rate
- Organic signups from share links
Encouragement Activity:
- Encouragement messages sent per user
- Pre-written vs custom message ratio
- Most popular pre-written options
- Encouragement response rate
Group Participation:
- Percentage of social users in groups
- Average group size
- Group completion rate vs solo completion rate
- Cohort participation rate
Success Indicators
Primary Success Metrics:
-
Higher Completion Rates for Social Users
- Target: Social users 20% more likely to complete Day 40
- Track: Day 40 completion rate (social vs non-social)
- Segment: By number of friends, by group participation
-
Longer Streaks with Friends
- Target: Social users have 30% longer average streaks
- Track: Average streak length (social vs non-social)
- Segment: By friend count, by encouragement received
-
Positive Sentiment in Feedback
- Target: 80% positive sentiment on social features
- Track: In-app feedback, app store reviews, support tickets
- Monitor: Specific complaints about social features
-
Organic Growth from Shares
- Target: 15% of new users from share links
- Track: Attribution of new signups
- Monitor: Share-to-signup conversion rate
Secondary Success Metrics:
-
Engagement Depth
- Daily active social users / Total social users
- Average session frequency for social users
- Feature usage breadth (how many features used)
-
Community Health
- Friend retention rate (still connected after 30 days)
- Block rate (low is good)
- Report rate (low is good)
- Encouragement sentiment analysis
-
Privacy Respect
- Percentage keeping privacy as βPrivateβ or βFriends Onlyβ
- Rate of privacy setting changes
- Social feature disable rate
- Account deletion rate
Success Dashboard:
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
β Social Features Success Dashboard β
β Last 30 Days β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ€
β β
β ADOPTION β
β Social feature enable rate: 42% βββββββββββββββββββββ β
β Target: 50% β
β β
β COMPLETION β
β Day 40 completion (social): 68% βββββββββββββββββββββ β
β Day 40 completion (non-social): 52% βββββββββββββββββ β
β Lift: +31% β β
β β
β ENGAGEMENT β
β Avg friends per user: 3.2 β
β Avg shares per user: 2.8 β
β Avg encouragement sent: 12.4 β
β β
β GROWTH β
β New users from shares: 18% ββββββββββββββββββββββββββ β
β Target: 15% β β
β β
β HEALTH β
β Block rate: 0.3% β β
β Report rate: 0.1% β β
β Social disable rate: 8% β β
β β
βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
A/B Testing Opportunities
Testable Hypotheses:
-
Share Card Design
- Test: Minimal vs detailed share cards
- Metric: Share rate, click-through rate
-
Encouragement Timing
- Test: Immediate vs batched encouragement notifications
- Metric: Encouragement response rate, user satisfaction
-
Comparison Framing
- Test: βYouβre aheadβ vs βYour friend is atβ¦β vs no comparison
- Metric: Engagement, completion rate, anxiety indicators
-
Group Size
- Test: Small groups (3-5) vs medium (6-10) vs large (11-20)
- Metric: Group completion rate, member satisfaction
-
Privacy Defaults
- Test: Default to βFriends Onlyβ vs βPrivateβ
- Metric: Adoption rate, retention rate, satisfaction
Implementation Checklist
Phase 1: Core Social (MVP)
- Share progress cards
- Basic friend connections (invite link)
- Friend progress viewing
- Pre-written encouragement
- Privacy settings (Private / Friends Only)
Phase 2: Enhanced Social
- QR code friend connections
- Journey map visualization
- Custom encouragement messages
- Streak leaderboard (friends only)
- Anonymous public mode
Phase 3: Group Features
- Private group creation
- Group progress dashboard
- Cohort mode
- Group celebrations
Phase 4: Advanced Features
- Real-time sync (WebSockets)
- Push notifications
- Advanced privacy controls
- Data export
Appendix: Copy Guidelines
Tone Principles
DO:
- Use warm, supportive language
- Celebrate effort and consistency
- Frame everything positively
- Respect individual journey
- Use inclusive language
DONβT:
- Use competitive language (βwinβ, βbeatβ, βaheadβ)
- Use shame or guilt
- Create pressure or urgency
- Compare in ways that could cause anxiety
- Use addictive/gamification language (βaddictedβ, βcanβt stopβ)
Example Copy Review
| β Donβt Use | β Use Instead |
|---|---|
| βYouβre falling behind" | "Everyone moves at their own pace" |
| "Sarah is ahead of you" | "Sarah is on Day 25βimpressive dedication!" |
| "Donβt break your streak!" | "Your 12-day streak is amazing" |
| "You should meditate today" | "Day 23 is ready when you are" |
| "Catch up to your friends" | "Your friends are cheering you on" |
| "Only 17 days left" | "Youβre more than halfway through" |
| "Youβre losing to Mike" | "Mike just hit Day 30βwhat a milestone!β |
Document Version: 1.0 Last Updated: 2024 The Convergence Protocol - Social Features Specification