babyphone-cam
Das Babyphone, das nur in deinem Heimnetz lebt.
Ein altes Handy oder Tablet wird zur Kamera beim Kind, jedes andere Gerät zum Elterngerät. Alles läuft im Browser über einen eigenen Docker-Container – ohne App, ohne Konto, ohne Cloud.
Installieren Auf GitHub ansehen 🧸 Spenden
- Open Source (AGPL-3.0)
- LAN oder WireGuard-VPN
- Nichts wird aufgezeichnet
- Browser oder App
Funktionen
Alles, was ein Babyphone im Alltag braucht – direkt im Browser.
Kind- und Elterngerät
Jedes Gerät wählt seine Rolle: Kind oder Eltern, je mit eigenem PIN. Einstellungen sind mit einem separaten Admin-PIN geschützt. Oberfläche auf Deutsch, Englisch, Italienisch und Französisch.
Browser oder App
Läuft im Browser oder als App auf dem Home-Bildschirm und dem Desktop. Getestet auf iPhone (Safari und App) und Android. Das Elterngerät bleibt wach, solange die Seite offen ist.
Kamera oder Telefon
Modus «Kamera» (Video und Ton) oder «Telefon» (nur Ton). Name aus einer Liste oder frei. Front- oder Rückkamera, auch vom Elterngerät aus umschaltbar.
Dunkler Bildschirm
Nach dem Start zeigt das Kindgerät die Kamera zum Ausrichten. Ein Tippen oder 1 Minute ohne Berührung schaltet den Bildschirm schwarz, die Übertragung läuft weiter (Wake Lock). Doppeltippen zeigt das Menü.
Alle Kinder auf einen Blick
Die Eltern sehen alle aktiven Kinder gleichzeitig in einem dynamischen Raster ohne Scrollen. Jede Kachel lässt sich vergrössern und zeigt «Kamera aktiv» und «Mikro aktiv».
Grüner Rahmen bei Aktivität
Bei Geräusch oder Bewegung leuchtet die Kachel grün. Ton- und Bewegungsschwelle pro Kind direkt vom Elterngerät einstellbar.
Hören und Sprechen
Alle Kinder gleichzeitig hören, Lautstärke pro Kind, Push-to-Talk pro Kind. Der Ton läuft weiter, auch bei gesperrtem Handy und im Lautlos-Modus (getestet auf dem iPhone). Sperrbildschirm und Dynamic Island zeigen die Kinder.
Auto-Fokus
Bei Geräusch rücken die neuesten bis zu vier aktiven Kinder für rund fünf Sekunden in den Vordergrund.
Alarm, wenn ein Kindgerät fehlt
Fällt ein Kindgerät aus, ertönt auf den Elterngeräten ein Alarm, der bestätigt werden muss. Zusätzlich Webhooks (GET, POST, PUT), zum Beispiel an Gotify, Slack oder Bark.
HTTPS direkt im Container
Zertifikat aus einem Ordner (z. B. Nginx Proxy Manager / Let's Encrypt), über die Cert-Warden-API oder selbst signiert als Rückfall. Kein Reverse Proxy nötig.
So funktioniert es
Bild und Ton laufen vom Kindgerät zu deinem eigenen Docker-Container und von dort zu den Elterngeräten. Der Container verteilt die Medien (mediasoup SFU) – live, ohne Aufzeichnung.
Datenschutz und Sicherheit
Keine Cloud, kein Konto
Kein Hersteller-Server, keine Registrierung, keine App. Der Container läuft bei dir.
Nur LAN oder VPN
Gedacht für das Heimnetz oder ein WireGuard-VPN. Standardmässig werden nur Geräte aus privaten Netzen zugelassen (IP-Allowlist).
Nichts wird aufgezeichnet
Bild und Ton enden im Container und werden nur live weitergeleitet. Es gibt keine Aufnahmen.
PINs mit Schutz
Getrennte PINs für Kind, Eltern und Admin. Der PIN-Login ist gegen Durchprobieren begrenzt (Rate Limit).
Open Source
Quellcode unter AGPL-3.0 auf GitHub. Das Image wird jede Woche automatisch neu gebaut, damit Sicherheitsupdates drin sind.
Installation
- compose.yaml und .env.example aus dem Repository übernehmen, mindestens die IP des Containers (BABYPHONE_IP) und den Zertifikatsordner (CERTS_DIR) setzen.
- Container starten, z. B. mit
docker compose up -doder als neuen Stack im Unraid Compose Manager. - Im Browser
https://<IP oder Name>/öffnen. Der Einrichtungsassistent fragt nach Sprache, PINs, Kindernamen, HTTPS, Alarmen und Webhooks. - Am Kindgerät «Kind» wählen, am Elterngerät «Eltern» – jeweils mit dem passenden PIN.
- Optional auf dem Handy: die Seite als App auf den Home-Bildschirm legen. Die Startseite zeigt dazu einen Hinweis.
Voraussetzungen
- Ein Docker-Host im Heimnetz, zum Beispiel Unraid.
- Ein HTTPS-Zertifikat für einen Namen, der im LAN auf den Container zeigt. Browser erlauben Kamera und Mikrofon nur über HTTPS. Ohne Zertifikat nutzt der Container ein selbst signiertes (Browser-Warnung).
- LAN oder WireGuard-VPN (das VPN-Subnetz muss ins LAN geroutet sein).
- Ports 443/tcp (Web, WebSocket), 80/tcp (Weiterleitung auf HTTPS) und 40000/udp + tcp (Medien).
- Ausgelegt für aktuelle Browser (Chrome, Firefox, Safari, Edge) mit Kamera- bzw. Mikrofonzugriff.
Gekürztes Beispiel aus der Datei compose/compose.yaml (Unraid, Netzwerk br0 mit eigener IP). Die vollständige, gehärtete Datei und .env.example liegen im Repository.
# compose.yaml
services:
babyphone:
image: ghcr.io/helmi1987/babyphone-cam:latest
container_name: babyphone
restart: unless-stopped
environment:
- TZ=Europe/Zurich
- CERTS_DIR=/certs
- ANNOUNCED_IP=192.168.1.30
volumes:
- /mnt/user/appdata/babyphone:/data
- /mnt/user/appdata/Nginx-Proxy-Manager-Official/letsencrypt:/certs:ro
networks:
br0:
ipv4_address: 192.168.1.30
networks:
br0:
external: true
Häufige Fragen
Brauche ich eine App?
Nein. Kind- und Elterngerät nutzen nur den Browser.
Funktioniert es von unterwegs?
Nur über ein VPN wie WireGuard, das ins Heimnetz geroutet ist. Es gibt bewusst keinen Cloud-Zugang.
Wird etwas gespeichert oder aufgezeichnet?
Nein. Bild und Ton werden nur live weitergeleitet. Gespeichert werden Einstellungen, PINs nur als Hash.
Worauf muss ich beim Kindgerät achten?
Die Seite im Vordergrund lassen, den Bildschirm nicht sperren und das Gerät ans Ladegerät hängen. Sperren oder App-Wechsel stoppt Kamera und Mikrofon (iOS, Android). LCD-Bildschirme bleiben beleuchtet, nur OLED wird wirklich dunkel.
Auf welchen Geräten wurde es getestet?
Die App ist für aktuelle Browser (Chrome, Firefox, Safari, Edge) ausgelegt. Getestet auf echten Geräten mit iOS (Safari und als App auf dem Home-Bildschirm) und Android.
In welchen Sprachen gibt es die App?
Deutsch, Englisch, Italienisch und Französisch. Einstellbar im Einrichtungsassistenten oder unter Einstellungen; «Automatisch» nimmt die Browsersprache, sonst Englisch.
Was kostet es?
Nichts. babyphone-cam ist Open Source unter der Lizenz AGPL-3.0.
Wunschzettel
babyphone-cam ist gratis und bleibt es. Wer trotzdem etwas geben möchte: Spenden gehen in Spielsachen, Kinderzubehör und Kaffee für die Eltern.
Kaffee für die Nachtschicht
Für Eltern, die um 3 Uhr wach sind.
CHF 5Gummiente
Quietscht zuverlässiger als jeder Alarm.
CHF 10Neuer Teddy
Der alte wurde zu oft gewaschen.
CHF 20Überraschung
Du wählst den Betrag.
Betrag frei
Zahlung über PayPal (paypal.me/helmi1987). Freiwillig, ohne Gegenleistung.






