33cab10cef
Syncs project memory, custom agents, and commands across machines. Excludes secrets (settings.json), session state, and runtime files. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1.4 KiB
1.4 KiB
name, description, metadata
| name | description | metadata | ||||||
|---|---|---|---|---|---|---|---|---|
| project-architecture | Mirror OS - Flutter app for hacked Lululemon Mirror on Pi 4 with phone remote, voice, and motion |
|
Mirror OS is a custom app platform for a hacked Lululemon Mirror running on Raspberry Pi 4.
Key decisions:
- Flutter (not web kiosk, not Qt) — single codebase for mirror display + phone remote
- Pi 4 (4GB) as compute
- Vizio board used as HDMI passthrough only (no rotation capability)
- Pi handles rotation via wlr-randr or DRM/KMS config
- Display is portrait 1080x1920, not touch-enabled
Why: Flutter gives one codebase for both the mirror display and the phone companion app. Phone remote is half the project — keeping it unified avoids drift. Performance is adequate for dashboard/media on Pi 4.
Features planned:
- Dashboard (clock, weather, calendar, widgets)
- Workout player (integrates with existing workout-player homelab service)
- Media player (YouTube, Plex, local video/music via mpv/media_kit)
- Voice control (OpenWakeWord + Whisper, local processing)
- Motion-activated wake (PIR or mmWave on GPIO)
- Phone companion app as primary control interface
How to apply: All code goes in /Users/csader/mirror-os. Flutter project with shared packages for logic, separate entry points for mirror display vs phone remote.