{"adoption": {"forks": 293, "observed_at": "2026-08-28T04:06:12.404496+00:00", "stars": 2091}, "canonical_url": "https://ross.abutalabs.com/products/thingino-firmware", "card": {"archived": false, "artifact_type": "application", "description": "Open-source firmware for Ingenic SoC IP cameras", "domain": ["iot", "embedded-systems", "hardware", "privacy", "self-hosted"], "enriched": true, "function": ["embedded", "video-processing", "streaming", "self-hosted"], "health_score": 100, "homepage": "https://thingino.com", "language": "Shell", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["themactep/thingino-firmware"], "name": "themactep/thingino-firmware", "platform": ["embedded", "iot", "cross-platform"], "pushed_at": "2026-08-26T18:27:40+00:00", "repo": "themactep/thingino-firmware", "stars": 2091, "tags": ["ip-camera", "ingenic-soc", "buildroot", "openwrt-alternative", "onvif", "rtsp", "firmware-flashing", "u-boot", "linux"], "topics": ["buildroot-external-tree", "firmware", "ingenic", "ip-camera", "ipc", "ipcamera"], "urls": [], "use_cases": ["replace stock firmware on an Ingenic-based IP camera", "flash open-source firmware onto a cheap wifi camera", "get RTSP streaming from an IP camera without cloud dependency", "unbrick or recover an IP camera via UART or SPI flash", "self-host camera footage locally instead of vendor cloud", "build custom firmware for a specific camera board"], "what_it_is": "Thingino is an open-source firmware for IP cameras built on Ingenic SoCs, replacing locked-down vendor software with a transparent, community-driven stack. It is built from a Buildroot-based external tree and provides a web UI, streaming (Prudynt/raptor), ONVIF support, and multiple flashing and recovery workflows.", "when_to_avoid": ["your camera uses a different SoC (e.g., SigmaStar, HiSilicon) - look at alternatives like OpenIPC", "you need a plug-and-play firmware update with no hardware tools or risk", "you require vendor-specific features like proprietary cloud integrations"], "when_to_choose": ["your camera has an Ingenic SoC (T20/T21/T23/T31 series) listed as supported", "you want full control, local streaming, and no vendor cloud lock-in", "you are comfortable flashing firmware with a CH341a programmer or UART access"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/thingino-firmware", "repo": "themactep/thingino-firmware", "role": "main", "score": 98}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:12.404496+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:55:34.459320+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "00b5ac937e53d3274f32310a4894a0e08a98aba435e3db4c6074c1b10304192e", "fetched_at": "2026-08-28T04:06:12.404496+00:00", "kind": "readme", "missing": false, "url": "https://github.com/themactep/thingino-firmware"}, {"content_hash": "b912e4c8985edf91acfdf4b0e44eecaf18ccad8f493120382dc2e63728dc6efe", "fetched_at": "2026-08-29T10:35:27.022956+00:00", "kind": "homepage", "missing": false, "url": "https://thingino.com"}, {"content_hash": "20ccb5a8b8e59618eaff924e37830057b888919f9fe4c9da90979dfb546a60dc", "fetched_at": "2026-08-29T10:35:27.030860+00:00", "kind": "site_page", "missing": false, "url": "https://thingino.com/installation"}, {"content_hash": "40abcccb6e19ec9fe90b8d967fd7c682740c3a13d10b15db5ef8386c35cf751b", "fetched_at": "2026-08-29T10:35:27.032917+00:00", "kind": "site_page", "missing": false, "url": "https://thingino.com/about"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:12.404496+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:55:34.459320+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "00b5ac937e53d3274f32310a4894a0e08a98aba435e3db4c6074c1b10304192e", "fetched_at": "2026-08-28T04:06:12.404496+00:00", "kind": "readme", "missing": false, "url": "https://github.com/themactep/thingino-firmware"}, {"content_hash": "b912e4c8985edf91acfdf4b0e44eecaf18ccad8f493120382dc2e63728dc6efe", "fetched_at": "2026-08-29T10:35:27.022956+00:00", "kind": "homepage", "missing": false, "url": "https://thingino.com"}, {"content_hash": "20ccb5a8b8e59618eaff924e37830057b888919f9fe4c9da90979dfb546a60dc", "fetched_at": "2026-08-29T10:35:27.030860+00:00", "kind": "site_page", "missing": false, "url": "https://thingino.com/installation"}, {"content_hash": "40abcccb6e19ec9fe90b8d967fd7c682740c3a13d10b15db5ef8386c35cf751b", "fetched_at": "2026-08-29T10:35:27.032917+00:00", "kind": "site_page", "missing": false, "url": "https://thingino.com/about"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:55:34.459320+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "00b5ac937e53d3274f32310a4894a0e08a98aba435e3db4c6074c1b10304192e", "fetched_at": "2026-08-28T04:06:12.404496+00:00", "kind": "readme", "missing": false, "url": "https://github.com/themactep/thingino-firmware"}, {"content_hash": "b912e4c8985edf91acfdf4b0e44eecaf18ccad8f493120382dc2e63728dc6efe", "fetched_at": "2026-08-29T10:35:27.022956+00:00", "kind": "homepage", "missing": false, "url": "https://thingino.com"}, {"content_hash": "20ccb5a8b8e59618eaff924e37830057b888919f9fe4c9da90979dfb546a60dc", "fetched_at": "2026-08-29T10:35:27.030860+00:00", "kind": "site_page", "missing": false, "url": "https://thingino.com/installation"}, {"content_hash": "40abcccb6e19ec9fe90b8d967fd7c682740c3a13d10b15db5ef8386c35cf751b", "fetched_at": "2026-08-29T10:35:27.032917+00:00", "kind": "site_page", "missing": false, "url": "https://thingino.com/about"}], "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:06:12.404496+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:12.404496+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:12.404496+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:55:34.459320+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "00b5ac937e53d3274f32310a4894a0e08a98aba435e3db4c6074c1b10304192e", "fetched_at": "2026-08-28T04:06:12.404496+00:00", "kind": "readme", "missing": false, "url": "https://github.com/themactep/thingino-firmware"}, {"content_hash": "b912e4c8985edf91acfdf4b0e44eecaf18ccad8f493120382dc2e63728dc6efe", "fetched_at": "2026-08-29T10:35:27.022956+00:00", "kind": "homepage", "missing": false, "url": "https://thingino.com"}, {"content_hash": "20ccb5a8b8e59618eaff924e37830057b888919f9fe4c9da90979dfb546a60dc", "fetched_at": "2026-08-29T10:35:27.030860+00:00", "kind": "site_page", "missing": false, "url": "https://thingino.com/installation"}, {"content_hash": "40abcccb6e19ec9fe90b8d967fd7c682740c3a13d10b15db5ef8386c35cf751b", "fetched_at": "2026-08-29T10:35:27.032917+00:00", "kind": "site_page", "missing": false, "url": "https://thingino.com/about"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:12.404496+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:12.404496+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:55:34.459320+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "00b5ac937e53d3274f32310a4894a0e08a98aba435e3db4c6074c1b10304192e", "fetched_at": "2026-08-28T04:06:12.404496+00:00", "kind": "readme", "missing": false, "url": "https://github.com/themactep/thingino-firmware"}, {"content_hash": "b912e4c8985edf91acfdf4b0e44eecaf18ccad8f493120382dc2e63728dc6efe", "fetched_at": "2026-08-29T10:35:27.022956+00:00", "kind": "homepage", "missing": false, "url": "https://thingino.com"}, {"content_hash": "20ccb5a8b8e59618eaff924e37830057b888919f9fe4c9da90979dfb546a60dc", "fetched_at": "2026-08-29T10:35:27.030860+00:00", "kind": "site_page", "missing": false, "url": "https://thingino.com/installation"}, {"content_hash": "40abcccb6e19ec9fe90b8d967fd7c682740c3a13d10b15db5ef8386c35cf751b", "fetched_at": "2026-08-29T10:35:27.032917+00:00", "kind": "site_page", "missing": false, "url": "https://thingino.com/about"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:12.404496+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:12.404496+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:12.404496+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:55:34.459320+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "00b5ac937e53d3274f32310a4894a0e08a98aba435e3db4c6074c1b10304192e", "fetched_at": "2026-08-28T04:06:12.404496+00:00", "kind": "readme", "missing": false, "url": "https://github.com/themactep/thingino-firmware"}, {"content_hash": "b912e4c8985edf91acfdf4b0e44eecaf18ccad8f493120382dc2e63728dc6efe", "fetched_at": "2026-08-29T10:35:27.022956+00:00", "kind": "homepage", "missing": false, "url": "https://thingino.com"}, {"content_hash": "20ccb5a8b8e59618eaff924e37830057b888919f9fe4c9da90979dfb546a60dc", "fetched_at": "2026-08-29T10:35:27.030860+00:00", "kind": "site_page", "missing": false, "url": "https://thingino.com/installation"}, {"content_hash": "40abcccb6e19ec9fe90b8d967fd7c682740c3a13d10b15db5ef8386c35cf751b", "fetched_at": "2026-08-29T10:35:27.032917+00:00", "kind": "site_page", "missing": false, "url": "https://thingino.com/about"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:12.404496+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:12.404496+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:55:34.459320+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "00b5ac937e53d3274f32310a4894a0e08a98aba435e3db4c6074c1b10304192e", "fetched_at": "2026-08-28T04:06:12.404496+00:00", "kind": "readme", "missing": false, "url": "https://github.com/themactep/thingino-firmware"}, {"content_hash": "b912e4c8985edf91acfdf4b0e44eecaf18ccad8f493120382dc2e63728dc6efe", "fetched_at": "2026-08-29T10:35:27.022956+00:00", "kind": "homepage", "missing": false, "url": "https://thingino.com"}, {"content_hash": "20ccb5a8b8e59618eaff924e37830057b888919f9fe4c9da90979dfb546a60dc", "fetched_at": "2026-08-29T10:35:27.030860+00:00", "kind": "site_page", "missing": false, "url": "https://thingino.com/installation"}, {"content_hash": "40abcccb6e19ec9fe90b8d967fd7c682740c3a13d10b15db5ef8386c35cf751b", "fetched_at": "2026-08-29T10:35:27.032917+00:00", "kind": "site_page", "missing": false, "url": "https://thingino.com/about"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:55:34.459320+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "00b5ac937e53d3274f32310a4894a0e08a98aba435e3db4c6074c1b10304192e", "fetched_at": "2026-08-28T04:06:12.404496+00:00", "kind": "readme", "missing": false, "url": "https://github.com/themactep/thingino-firmware"}, {"content_hash": "b912e4c8985edf91acfdf4b0e44eecaf18ccad8f493120382dc2e63728dc6efe", "fetched_at": "2026-08-29T10:35:27.022956+00:00", "kind": "homepage", "missing": false, "url": "https://thingino.com"}, {"content_hash": "20ccb5a8b8e59618eaff924e37830057b888919f9fe4c9da90979dfb546a60dc", "fetched_at": "2026-08-29T10:35:27.030860+00:00", "kind": "site_page", "missing": false, "url": "https://thingino.com/installation"}, {"content_hash": "40abcccb6e19ec9fe90b8d967fd7c682740c3a13d10b15db5ef8386c35cf751b", "fetched_at": "2026-08-29T10:35:27.032917+00:00", "kind": "site_page", "missing": false, "url": "https://thingino.com/about"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:55:34.459320+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "00b5ac937e53d3274f32310a4894a0e08a98aba435e3db4c6074c1b10304192e", "fetched_at": "2026-08-28T04:06:12.404496+00:00", "kind": "readme", "missing": false, "url": "https://github.com/themactep/thingino-firmware"}, {"content_hash": "b912e4c8985edf91acfdf4b0e44eecaf18ccad8f493120382dc2e63728dc6efe", "fetched_at": "2026-08-29T10:35:27.022956+00:00", "kind": "homepage", "missing": false, "url": "https://thingino.com"}, {"content_hash": "20ccb5a8b8e59618eaff924e37830057b888919f9fe4c9da90979dfb546a60dc", "fetched_at": "2026-08-29T10:35:27.030860+00:00", "kind": "site_page", "missing": false, "url": "https://thingino.com/installation"}, {"content_hash": "40abcccb6e19ec9fe90b8d967fd7c682740c3a13d10b15db5ef8386c35cf751b", "fetched_at": "2026-08-29T10:35:27.032917+00:00", "kind": "site_page", "missing": false, "url": "https://thingino.com/about"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:55:34.459320+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "00b5ac937e53d3274f32310a4894a0e08a98aba435e3db4c6074c1b10304192e", "fetched_at": "2026-08-28T04:06:12.404496+00:00", "kind": "readme", "missing": false, "url": "https://github.com/themactep/thingino-firmware"}, {"content_hash": "b912e4c8985edf91acfdf4b0e44eecaf18ccad8f493120382dc2e63728dc6efe", "fetched_at": "2026-08-29T10:35:27.022956+00:00", "kind": "homepage", "missing": false, "url": "https://thingino.com"}, {"content_hash": "20ccb5a8b8e59618eaff924e37830057b888919f9fe4c9da90979dfb546a60dc", "fetched_at": "2026-08-29T10:35:27.030860+00:00", "kind": "site_page", "missing": false, "url": "https://thingino.com/installation"}, {"content_hash": "40abcccb6e19ec9fe90b8d967fd7c682740c3a13d10b15db5ef8386c35cf751b", "fetched_at": "2026-08-29T10:35:27.032917+00:00", "kind": "site_page", "missing": false, "url": "https://thingino.com/about"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 97}, "computed_at": "2026-09-03T02:39:23.370411+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 1547, "days_push": 7, "days_rel": 20, "gap_med": 5.5, "n_releases_24m": 31}, "score": 98, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}