Chowder cam
A camera setup and app so I can check on my dog when I am out.
Two stations. The dog station stays with Chowder, any spare phone or an IP camera through a small bridge. The person station is whatever I have with me. One six-character home code pairs them, and each device remembers its job so reopening the app reconnects on its own.
Barking is told apart from everyday noise by attack and frequency profile, motion by frame differencing, and quiet spells are logged as rest. Alerts arrive as push notifications even with no tab open. I can talk to him, play a recorded "sit" or "lie down" out of the camera speaker, show my face, pan and tilt, and save a clip.
The commercial apps wanted a subscription for features I could describe in a paragraph, and none of them did two-way talk the way I wanted. The point was to see him, hear him, and be heard, from a phone, reliably.
A small Node server with WebSocket signaling and stateless signed-cookie sessions, so deploys never sign anyone out. Media never touches the server; it goes peer to peer with a TURN fallback. Web Push is implemented from the RFCs with no dependency. The cameras join through a Raspberry Pi running the bridge as an add-on, so nothing depends on a laptop being open.
Reliability was the whole project. Live video stalled when clips were written to the same SD card, phones dropped the stream when they slept, and the infrared filter on a camera would stick. Each fix got a regression test and a dated findings note, which is the same habit the work tools get.