Vision
Add Mini (Snoo bassinet) support to the iOS app via a device switcher in the gear menu. Pod UI stays untouched. Mini gets purpose-built screens (~3-4 new views vs pod's ~30).
Device Switcher
- Gear menu at top → Pod | Mini toggle
- Each device type has its own tab set and view hierarchy
- SleepypodProtocol abstraction already exists — add MiniClient conforming to a new MiniProtocol
- Discover available servers on network (pod server advertises which device types are enabled)
Mini Tab Structure
- Control — current state, motion level dial (1-4), on/off, lock toggle
- Sleep Log — session history, duration charts, soothe event timeline
- Settings — sound type, volume, weaning mode, device info
Baby Biometrics
- Sleep duration trends (daily/weekly bar charts, reuse WeeklyBarChartView)
- Cry frequency from soothe escalation data
- Soothe responsiveness patterns
- These could be a tab or integrated into Sleep Log
Architecture
- MiniClient — talks to sleepypod-core Mini tRPC routes
- MiniDeviceManager — manages connection, state, polling
- Mini views in Views/Mini/ directory
- Shared infrastructure: Theme, networking, settings, notifications
Naming
- Device type in UI: "Mini"
- Code: Mini prefix (MiniClient, MiniScreen, etc.)
- No Snoo trademark usage anywhere in UI or marketing
Depends on
Vision
Add Mini (Snoo bassinet) support to the iOS app via a device switcher in the gear menu. Pod UI stays untouched. Mini gets purpose-built screens (~3-4 new views vs pod's ~30).
Device Switcher
Mini Tab Structure
Baby Biometrics
Architecture
Naming
Depends on