lullalink/README.md

14 lines
No EOL
1.2 KiB
Markdown

# Lullalink
Peer-to-peer baby monitor for Flutter.
- The **child device** (one phone, near the baby) streams audio, video, and gyro/accelerometer data to the **parent device** (the other phone, near the parent) over WiFi — no cloud, no server.
- **Secure by default**: all streams use **mutual TLS (mTLS)** with self-signed certificates. Two phones trust each other by scanning a **QR code of either device** to pin each other's certificate/fingerprint. No PIN or password is needed — mTLS alone is sufficient.
- Audio and video streaming are each independently toggleable on the transmit side (child) and the receive side (parent).
- The parent sees a live audio **gain graph**, a **frequency spectrum** of the captured audio, and a **movement graph** from the child phone's gyro/accelerometer (phone rests on the bed → baby movement visible).
- The parent can configure **notification thresholds** (e.g. sound level, movement frequency).
- Future (v0.2): optional on-device ML on either device for movement classification and audio/sound-type classification.
## Development
Tests — including all UI/graphical tests (golden/widget tests, fake plugins, no physical device) — must run and be verifiable entirely in **headless CI**.