explaingit

blakeblackshear/frigate

📈 Trending32,006TypeScriptAudience · developerComplexity · 4/5ActiveLicenseSetup · hard

TLDR

Self-hosted security camera system with local AI object detection, no cloud required. Distinguishes people, cars, and pets to reduce false alarms.

Mindmap

mindmap
  root((Frigate))
    What it does
      Local video recording
      AI object detection
      Smart alerts
    How it works
      Motion detection
      TensorFlow inference
      Separate processes
    Integration
      Home Assistant
      MQTT messaging
      WebRTC dashboard
    Hardware
      Google Coral support
      CPU or GPU
      IP cameras
    Configuration
      Recording policies
      Zone definition
      RTSP re-streaming

Things people build with this

USE CASE 1

Set up a privacy-first home security system that records only when people or cars are detected.

USE CASE 2

Integrate smart camera alerts into Home Assistant to trigger automations when specific objects appear.

USE CASE 3

Replace cloud-based security cameras with a self-hosted system that keeps all footage and AI analysis on your own hardware.

USE CASE 4

Monitor multiple IP cameras with efficient local processing that reduces false motion alerts.

Tech stack

TypeScriptPythonOpenCVTensorFlowMQTTWebRTCRTSP

Getting it running

Difficulty · hard Time to first run · 1day+

Requires TensorFlow/CUDA setup, RTSP camera source, MQTT broker, and WebRTC signaling server; multiple moving parts to coordinate.

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

In plain English

Frigate is a self-hosted network video recorder, or NVR, which means it stores video footage from IP cameras on your own hardware rather than uploading it to a cloud service. What sets it apart is that it performs real-time AI-powered object detection locally, so it can distinguish between a person, a car, a pet, or other objects rather than just triggering alerts on any motion. This means far fewer false alarms compared to basic motion-sensing systems. The system works by analyzing the video streams from your cameras using OpenCV for motion detection and TensorFlow for object recognition. It is designed to be efficient: it first uses a lightweight motion detector to identify which parts of the frame are active, then focuses the more expensive AI analysis only on those regions. Object detection runs in separate processes to maximize performance. For the fastest results, Frigate supports dedicated AI accelerator hardware such as Google Coral, though it also runs on a regular CPU or GPU. Frigate integrates tightly with Home Assistant, the popular home automation platform, and communicates over MQTT, a lightweight messaging protocol common in home automation. You can configure it to record video only when specific objects are detected, set retention policies, define zones in the camera frame, and view a live dashboard with low latency through WebRTC. It also re-streams camera feeds via RTSP to reduce the load on your camera hardware. You would use Frigate when you want a privacy-respecting, locally-run security camera system with smart detection, ideally as part of a Home Assistant smart home setup. The frontend is built with TypeScript, and the backend relies on Python and OpenCV with TensorFlow for AI inference. It is licensed under MIT.

Copy-paste prompts

Prompt 1
How do I set up Frigate with my IP cameras and Home Assistant to get smart person detection alerts?
Prompt 2
Show me how to configure Frigate to record video only when a car is detected in my driveway zone.
Prompt 3
What hardware accelerators work best with Frigate for real-time object detection, and how do I enable them?
Prompt 4
How do I reduce false alarms in Frigate by tuning motion detection sensitivity and object confidence thresholds?
Prompt 5
Can you help me integrate Frigate's MQTT events into Home Assistant automations to trigger lights when motion is detected?
Open on GitHub → Explain another repo

Generated 2026-05-18 · Model: sonnet-4-6 · Verify against the repo before relying on details.