Nursery

A baby monitor that is just a web page.

One phone broadcasts camera and microphone. One or more devices receive the stream with sub-second latency. No native apps, no app stores, no account with a hardware company that might stop caring about your camera in three years.

Private WebRTC Self-hosted
Get in touch
Overview

Why a web page.

Baby monitors are either a dedicated device with a proprietary app and a cloud account, or an old phone running software that was never meant for the job. Nursery is the third option: a page you open on whatever devices you already own.

The broadcasting phone opens its camera and microphone in the browser. Receiving devices connect directly to it, peer to peer, so the video and audio never route through a server unless your network genuinely requires a relay to get through NAT. Latency stays under a second, which is the difference between a monitor and a recording.

Architecture

How it is put together.

Peer-to-peer media
Video and audio travel directly between devices over WebRTC. The server only relays the initial connection handshake, never the stream itself, unless a TURN relay is needed for NAT traversal.
Signaling only
A small Node WebSocket server passes session descriptions and connection candidates between peers. That is its entire job.
No build step
Vanilla HTML and JavaScript on the front end. No framework, no bundler, nothing to go stale between the day it was written and the night you need it.
Room-based pairing
Devices pair into a room with a shared secret, over TLS with automatically provisioned certificates. Audio keeps playing when an iOS screen locks, and dropped connections retry with backoff.
Status

Not publicly available.

Nursery is an internal Locke Werks product and the source is private. It is designed to be self-hosted, so there is no service to sign up for and no camera footage sitting on somebody else's disk.

For access or a conversation about deploying it, write to archon@lockewerks.com.