Skip to content

Build user preference settings #415

@BillChirico

Description

@BillChirico

⚙️ Build User Preference Settings

Overview

Give users fine-grained control over Sobers Buddy — default on, easy to customize or opt out.


Goals

  • One-tap disable without guilt
  • Granular control over frequency and tone
  • Preferences sync across devices
  • Respect user choices completely

Settings Schema

interface SobersBuddyPreferences {
  enabled: boolean;                    // Master toggle
  
  // Frequency
  messageFrequency: 'rarely' | 'normal' | 'often';  // 1-2/day default
  quietHours: {
    enabled: boolean;
    start: string;  // "22:00"
    end: string;    // "08:00"
  };
  
  // Personality
  tone: 'warm' | 'direct' | 'encouraging' | 'gentle';
  avatar: string;  // Avatar ID
  
  // Content
  slipResponseSuggestions: boolean;    // Show suggestions on slip
  milestoneCelebrations: boolean;      // Celebrate streaks/milestones
  triggerAnticipation: boolean;        // Proactive check-ins
  
  // Privacy
  dataRetention: '30days' | '90days' | '1year' | 'forever';
  allowLearning: boolean;              // Pattern analysis
}

UI/UX Design

Settings Screen Structure


Implementation Tasks

  • Create preferences data model
  • Build settings UI screen
  • Implement preference persistence (local + cloud)
  • Add preference sync across devices
  • Create preference change analytics events
  • Add onboarding flow for new users
  • Write help text for each setting

Acceptance Criteria

  • All preferences persist across app restarts
  • Preferences sync within 5 seconds across devices
  • Disabling Buddy stops all messages immediately
  • Quiet hours respected (no messages during)
  • Tone changes reflect in next message
  • Settings accessible from main menu

Edge Cases

  • User disables mid-conversation → graceful stop
  • Preference sync conflict → last-write-wins with toast
  • First-time user → show onboarding, not settings dump

Related


Part of Sobers v2

Metadata

Metadata

Assignees

Labels

frontendFrontend/UI related changessobers-buddySobers Buddy AI companion featureuxUser experience and design

Type

No type

Projects

Status

Todo

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions