{"adoption": {"forks": 115, "observed_at": "2026-08-28T04:04:34.986004+00:00", "stars": 1386}, "canonical_url": "https://ross.abutalabs.com/products/eufy_security", "card": {"archived": false, "artifact_type": "plugin", "description": "Home Assistant integration to manage Eufy Security devices as cameras, home base stations, doorbells, motion and contact sensors.", "domain": ["iot", "security"], "enriched": true, "function": ["video-processing", "streaming", "iot", "workflow-automation"], "health_score": 91, "homepage": null, "language": "Python", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["fuatakgun/eufy_security"], "name": "fuatakgun/eufy_security", "platform": ["python", "iot", "self-hosted"], "pushed_at": "2026-06-22T06:22:26+00:00", "repo": "fuatakgun/eufy_security", "stars": 1386, "tags": ["eufy", "home-assistant-integration", "rtsp", "camera", "doorbell", "smart-home", "security-cameras", "home-automation", "video"], "topics": ["eufy", "rtsp", "home-assistant", "camera", "security", "eufysecurity", "eufycam", "homeassistant", "homeassistant-integration"], "urls": [], "use_cases": ["view Eufy camera streams in Home Assistant dashboards", "trigger automations when Eufy doorbell detects motion", "send notifications with camera thumbnails on motion events", "integrate Eufy contact and motion sensors into Home Assistant", "control Eufy devices without the official mobile app", "unlock Eufy safe with a code via automation"], "what_it_is": "A Home Assistant integration that connects Eufy Security devices (cameras, doorbells, home base stations, motion and contact sensors) to Home Assistant. It wraps the eufy-security-ws add-on to expose Eufy devices as Home Assistant entities for streaming, events, and automations.", "when_to_avoid": ["you don't use Home Assistant", "you need a fully official, vendor-supported integration", "you can't create a secondary Eufy account as required by the add-on"], "when_to_choose": ["you own Eufy Security cameras or sensors and use Home Assistant", "you want local-ish control and streaming of Eufy devices in your smart home", "you need Eufy motion events to trigger Home Assistant automations"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/eufy_security", "repo": "fuatakgun/eufy_security", "role": "main", "score": 87}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:34.986004+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:39:54.119491+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "009c85a2727dab86eea83186fcdaa9b486bffa74238ff809be39c5a3c78e5099", "fetched_at": "2026-08-28T04:04:34.986004+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fuatakgun/eufy_security"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:34.986004+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:39:54.119491+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "009c85a2727dab86eea83186fcdaa9b486bffa74238ff809be39c5a3c78e5099", "fetched_at": "2026-08-28T04:04:34.986004+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fuatakgun/eufy_security"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:39:54.119491+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "009c85a2727dab86eea83186fcdaa9b486bffa74238ff809be39c5a3c78e5099", "fetched_at": "2026-08-28T04:04:34.986004+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fuatakgun/eufy_security"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:04:34.986004+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:34.986004+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:34.986004+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:39:54.119491+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "009c85a2727dab86eea83186fcdaa9b486bffa74238ff809be39c5a3c78e5099", "fetched_at": "2026-08-28T04:04:34.986004+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fuatakgun/eufy_security"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:34.986004+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:34.986004+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:39:54.119491+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "009c85a2727dab86eea83186fcdaa9b486bffa74238ff809be39c5a3c78e5099", "fetched_at": "2026-08-28T04:04:34.986004+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fuatakgun/eufy_security"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:34.986004+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:34.986004+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:34.986004+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:39:54.119491+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "009c85a2727dab86eea83186fcdaa9b486bffa74238ff809be39c5a3c78e5099", "fetched_at": "2026-08-28T04:04:34.986004+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fuatakgun/eufy_security"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:34.986004+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:34.986004+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:39:54.119491+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "009c85a2727dab86eea83186fcdaa9b486bffa74238ff809be39c5a3c78e5099", "fetched_at": "2026-08-28T04:04:34.986004+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fuatakgun/eufy_security"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:39:54.119491+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "009c85a2727dab86eea83186fcdaa9b486bffa74238ff809be39c5a3c78e5099", "fetched_at": "2026-08-28T04:04:34.986004+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fuatakgun/eufy_security"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:39:54.119491+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "009c85a2727dab86eea83186fcdaa9b486bffa74238ff809be39c5a3c78e5099", "fetched_at": "2026-08-28T04:04:34.986004+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fuatakgun/eufy_security"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:39:54.119491+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "009c85a2727dab86eea83186fcdaa9b486bffa74238ff809be39c5a3c78e5099", "fetched_at": "2026-08-28T04:04:34.986004+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fuatakgun/eufy_security"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 88, "longevity": 100, "rhythm": 78}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 1895, "days_push": 72, "days_rel": 146, "gap_med": 11, "n_releases_24m": 10}, "score": 87, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}