A SELF-HOSTED BABY MONITOR

Baby monitoring
on your server.

Watch and listen to your local cameras, save recordings, and review estimated sleep patterns. Nightlight runs on your own hardware and works in your browser.

Open source No Nightlight subscription Yours to host

FEATURES

What Nightlight does

01 / VIDEO

Live camera views

Watch low-latency live video from your local cameras, grouped by child. Keep the rooms that matter together in one view.

Live video & audio
02 / AUDIO

Audio and alerts

Listen in while you unwind. Companion mobile apps add background listening, with motion and sound notifications available to configure.

Listening & optional alerts
03 / HISTORY

Recordings and sleep

Save a recording, revisit a wake-up, and explore estimated sleep patterns. Review and correct sleep estimates in the morning.

Recordings & sleep insights

SCREENSHOTS

Inside the app

Desktop and mobile web views.
Select a screenshot to see it at full size.

Desktop dashboard with camera controls and navigation; the test camera shows no signal.
Camera dashboardA test installation with no active video stream.
Mobile camera setup form with RTSP connection details and ONVIF discovery.
Add a cameraConfigure camera connections from your phone.
General settings with timezone, theme presets, fonts and colour controls.
Settings and appearanceChoose your timezone, theme, fonts and colours.

SELF-HOSTING

How it works

Nightlight connects to the cameras you already have and brings them into your browser. The core app runs on your network, with your footage and settings stored on your server.

Read the technical overview

Remote access is optional and needs setup. Notification providers may use external services.

SETUP

Getting started

You’ll need a compatible camera
and an always-on Docker host.

01

Check your camera

You'll need a camera with a local RTSP stream. ONVIF support can make adding it a little easier.

02

Install Nightlight

Run the Docker container on your Linux server or Unraid box, with persistent storage for your data.

03

Configure the app

Create your account, add cameras, and check your audio, timezone and any alerts you choose to enable.

Install with Docker

Use an always-on Linux server with Docker installed, on the same local network as your cameras. Both amd64 and arm64 systems are supported. Choose this method or the Unraid option below.

  1. Choose your data folder and user

    Replace /path/to/your/data with an absolute folder path on your server. This stores your database and, by default, recordings, so allow room for video and back up this folder. Set PUID and PGID to the folder owner's IDs; find them with id your_username. The values below, 99 and 100, are the usual Unraid defaults.

  2. Start the container

    Run this in your server's terminal after changing the data path and user IDs. You can replace UTC with your timezone, such as Australia/Sydney; this controls log timestamps.

    docker run -d \
      --name nightlight \
      --network host \
      --restart unless-stopped \
      --log-opt max-size=10m \
      --log-opt max-file=3 \
      --stop-timeout 30 \
      -e PUID=99 \
      -e PGID=100 \
      -e TZ=UTC \
      -v /path/to/your/data:/app/data \
      sauso/nightlight:latest

    Host networking shares your server's IP and ports, including the web interface on port 4000. Keep the log limits and 30-second stop timeout: they limit Docker log growth and give recordings time to finish during shutdown.

  3. Open Nightlight and create your admin account

    From a trusted device on the same network, open http://<server-ip>:4000, replacing <server-ip> with your server's local IP address. Create the first admin account before making the installation accessible to anyone else.

  4. Add your children and cameras

    Use the Children tab to add a child, then Cameras → Add camera. Enter the camera's IP and credentials. Use ONVIF to fetch connection details if supported, or enter its RTSP port and stream path from the camera's manual. Assign the camera to a child.

  5. Check your setup

    Confirm live video and audio work on the devices you'll use. Set the app's timezone in Settings, review recording storage and retention, and configure and test any motion or sound alerts you enable. These instructions set up local access; remote access needs additional configuration.

Installing on Unraid

Alternatively, install using the included Docker template. Open the Unraid Terminal and run:

mkdir -p /boot/config/plugins/dockerMan/templates-user
wget -O /boot/config/plugins/dockerMan/templates-user/my-nightlight.xml \
  https://raw.githubusercontent.com/sauso/nightlight/main/unraid-template.xml

Go to Docker → Add Container, select nightlight from the Template dropdown, and check the Data Directory (default: /mnt/user/appdata/nightlight). Keep host networking for this setup, then select Apply. Open http://<server-ip>:4000 and follow steps 3–5 above.

HELP

Frequently asked questions

Something else on your mind?

Ask on GitHub
What does “self-hosted” mean?

You run Nightlight on your own always-on computer or server using Docker. You manage the installation, storage, updates and backups. This website is an introduction to the app; your camera dashboard runs on your own installation.

Is Nightlight free?

Nightlight is open source under the MIT license, with no Nightlight subscription. You provide the cameras, server and storage. Optional services, such as some notification providers, may have their own costs.

Will it work with my cameras?

Your cameras need to expose a local RTSP stream. ONVIF can help discover stream settings and supported controls. Camera codecs and browser support vary, so check the camera guide and test your setup before depending on it.

Can I use it on my phone?

Yes. Nightlight has a mobile-friendly web interface and can be added to your home screen. Companion Android and iOS apps offer additional native features. Background audio and notifications have platform-specific requirements; see the mobile app guide.

Can I check in away from home?

Local network use is the default. Remote access is possible with additional secure networking setup. Follow the remote access instructions rather than exposing an unconfigured installation to the internet.

Is it a safety or medical device?

No. Nightlight is a convenience tool and is not a substitute for adult supervision. Streams, networks and notifications can fail. Sleep insights are estimates, not medical measurements or advice.

Support Nightlight

If you find Nightlight useful, you can support its development with a donation.

Donate via PayPal