
Threadmark
Turn busy WhatsApp groups and Gmail into a short list of what needs you: payments, meetings, and deadlines.
Your home cameras, with familiar faces recognised on your own server and a calm timeline of who came by.
Home Monitor is self-hosted: each person runs their own private copy.
Home Monitor is a self-hosted view of your home cameras. A small collector next to the cameras samples their snapshots and sends frames when something moves. Your own server then looks for people and faces, and shows the results in an installable web app, with a timeline of the day.
Continuous video stays on the cameras’ SD cards; the server keeps only selected snapshots. Person and face recognition run on the server’s own processor, so no outside service ever receives your images.
Recognition is an estimate. Home Monitor matches faces conservatively and leaves unclear ones unidentified, but it does not check that a face is live, guarantee an identification, or follow a person from one camera to another. Enrol only people who agree to it, and check unexpected matches yourself.
The scenes, people, and events in these screenshots are generated by the app’s demo; no real camera images are used.
Home Monitor has two parts. The collector needs only Python and Pillow. The server runs Python 3.12 with FastAPI and SQLite, and uses OpenCV and ONNX Runtime with three small models: YOLOX-Nano finds people, YuNet finds faces, and SFace compares them. It is designed for ARM64 processors without a graphics card. You and the collector reach the server privately through Tailscale; optional public access goes through Cloudflare Tunnel and a hardened Caddy listener. The project is open source under the GPL-3.0-or-later licence.