Local AI that knows who's home, what your driveway just saw, and whether that sound was a glass break or a dropped mug. Nothing gets uploaded to the cloud, and there's no subscription. Self-host it if you have the GPU. If you don't, the built-in cloud providers work out of the box.
Most home AI cameras tie identity to a single clean face shot. If the camera never sees a face, the person is a stranger forever. Nurby runs a parallel body identity pipeline alongside face recognition.
Closed-loop visual servoing on ONVIF ContinuousMove. The closer the target gets to centre, the slower the camera moves.
Nurby auto-detects privacy-sensitive objects and applies a blur before any downstream pipeline sees the frame.
Seventeen models across YOLOv8, YOLO11, YOLO11-seg, YOLOv8 OIV7, and YOLO-World v1 + v2. Each tagged with speed, accuracy, and GPU hints.
Ollama-first deployment. The provider catalog and a per-call precedence chain mean expensive models run only where they matter.
Triggers are cards with icons, not a dropdown of column names. The composed rule renders as a single sentence in English.
Tripwires and loiter zones are drawn on top of the live camera feed, not in a separate diagram with abstract coordinates.
Four recording modes (off, always, on-motion, on-object, clip), with a pre/post buffer so the event sits in the middle.
A persistent identity-anchored story that spans cameras. One Journey for a front-door → hallway → kitchen walk, not three observations.
PANNs CNN14 turns the microphone into a 527-class semantic signal: baby cry, dog bark, glass break, smoke alarm, doorbell, knock, footsteps, speech, music, alarm clock.
"Dog in the kitchen last night." Three results with thumbnails. The query embeds against observation description embeddings (Vector(384)) in pgvector.
One configurable local hour fires build_daily_digest. Visitors, packages, vehicles, audio events, active cameras. Structured facts plus an LLM narrative. Need a week or a month? summarize_window chunks the range, builds deterministic mini-summaries per chunk at zero LLM cost, then runs one budget-gated LLM pass for the final synthesis.
A collapsible filter panel keeps event cards in context. Filter by camera, label, person, time window, provider. The filter state lives in the URL so links are shareable.
Faces are a starting point, not the only signal. Unknown clusters surface for naming; body-only clusters can be linked or named in one click.
Invite keys, per-camera grants and supported SSO providers. The right family member sees the right cameras and nothing else.
Local inference, smart blur, pose-aware zones, and self-hosting. Privacy is where Nurby starts, not a setting you have to go find and switch on.
Rules are JSON. Inspectable, version-controllable, exportable. The reinterpret endpoint accepts any provider so models can be swapped from outside the UI.
RTSP, ONVIF (PTZ ContinuousMove, Stop, GetPresets, GotoPreset), MediaMTX for WebRTC publish, Ollama for local inference, OpenAI, Anthropic, Gemini, Twilio (via API call action), SMTP, generic webhooks. Phone-as-mic and network mic camera types for audio-only sources.
Dark-first with no-flash theme switching. Hover PTZ overlay. Live observation cards floating off tiles. Camera personas as one-click presets.
Sticky failure flags, hardware autodetection, cluster decay, fusion sweeper, migrations on startup. The platform behaves itself.
Free and open. Local VLM inference needs a serious GPU. Think NVIDIA Spark or a workstation-class card with enough VRAM for a 200B-parameter model. Without one, the cloud providers work out of the box.