{"adoption": {"forks": 250, "observed_at": "2026-08-28T04:04:47.345335+00:00", "stars": 1460}, "canonical_url": "https://ross.abutalabs.com/products/fact_core", "card": {"archived": false, "artifact_type": "application", "description": "Firmware Analysis and Comparison Tool", "domain": ["security", "iot", "reverse-engineering", "embedded-systems", "developer-tools"], "enriched": true, "function": ["security", "nlp", "parser", "search-engine", "web-scraping", "plugin-system", "developer-tools"], "health_score": 99, "homepage": "https://fkie-cad.github.io/FACT_core", "language": "Python", "license": "GPL-3.0", "license_family": "copyleft", "maturity": "active", "member_repos": ["fkie-cad/FACT_core"], "name": "fkie-cad/FACT_core", "platform": ["python", "self-hosted"], "pushed_at": "2026-08-25T15:54:38+00:00", "repo": "fkie-cad/FACT_core", "stars": 1460, "tags": ["firmware-analysis", "firmware-security", "iot-security", "binary-analysis", "rest-api", "web-ui", "unpacking", "comparative-analysis", "linux", "docker", "web-server"], "topics": ["firmware-tools", "firmware-analysis", "security-automation", "security"], "urls": [], "use_cases": ["analyze router firmware for security vulnerabilities", "unpack and inspect IoT device firmware images", "compare two firmware versions to find changes", "scan UEFI images for suspicious components", "search firmware files for hardcoded credentials", "automate firmware analysis via REST API", "browse firmware file trees and analysis results in a web UI"], "what_it_is": "FACT (Firmware Analysis and Comparison Tool) is a self-hosted Python application that automates firmware security analysis for devices like routers, IoT gadgets, UEFI images, webcams, and drones. It provides a web UI and REST API for browsing, searching, and comparing analysis results across firmware samples, with an extensible plugin system.", "when_to_avoid": ["you only need quick one-off binary string extraction without a full analysis platform", "you require a lightweight CLI-only tool with no web server or database dependencies", "you need a commercially supported product rather than a research prototype", "your target is not firmware or embedded binaries"], "when_to_choose": ["you need automated, repeatable analysis of black-box firmware samples", "you want a web interface with searchable, comparable results across many firmware images", "you need an extensible analysis platform with a plugin system and REST API for integration", "you analyze IoT, router, UEFI, or embedded device firmware for security research"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/fact_core", "repo": "fkie-cad/FACT_core", "role": "main", "score": 92}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:47.345335+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:35:24.218297+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c2b2f24f33e5047fe20c2255dc0b3a99cdb7b9ace05e603c55179682503a073e", "fetched_at": "2026-08-28T04:04:47.345335+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fkie-cad/FACT_core"}, {"content_hash": "8b9bda99e60fed05538ea02e31e3e4b1fe1000c013aac0d9ff507468a1df5d31", "fetched_at": "2026-08-29T11:44:06.807099+00:00", "kind": "homepage", "missing": false, "url": "https://fkie-cad.github.io/FACT_core"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:47.345335+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:35:24.218297+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c2b2f24f33e5047fe20c2255dc0b3a99cdb7b9ace05e603c55179682503a073e", "fetched_at": "2026-08-28T04:04:47.345335+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fkie-cad/FACT_core"}, {"content_hash": "8b9bda99e60fed05538ea02e31e3e4b1fe1000c013aac0d9ff507468a1df5d31", "fetched_at": "2026-08-29T11:44:06.807099+00:00", "kind": "homepage", "missing": false, "url": "https://fkie-cad.github.io/FACT_core"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:35:24.218297+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c2b2f24f33e5047fe20c2255dc0b3a99cdb7b9ace05e603c55179682503a073e", "fetched_at": "2026-08-28T04:04:47.345335+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fkie-cad/FACT_core"}, {"content_hash": "8b9bda99e60fed05538ea02e31e3e4b1fe1000c013aac0d9ff507468a1df5d31", "fetched_at": "2026-08-29T11:44:06.807099+00:00", "kind": "homepage", "missing": false, "url": "https://fkie-cad.github.io/FACT_core"}], "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:47.345335+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:47.345335+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:47.345335+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:35:24.218297+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c2b2f24f33e5047fe20c2255dc0b3a99cdb7b9ace05e603c55179682503a073e", "fetched_at": "2026-08-28T04:04:47.345335+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fkie-cad/FACT_core"}, {"content_hash": "8b9bda99e60fed05538ea02e31e3e4b1fe1000c013aac0d9ff507468a1df5d31", "fetched_at": "2026-08-29T11:44:06.807099+00:00", "kind": "homepage", "missing": false, "url": "https://fkie-cad.github.io/FACT_core"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:47.345335+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:47.345335+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:35:24.218297+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c2b2f24f33e5047fe20c2255dc0b3a99cdb7b9ace05e603c55179682503a073e", "fetched_at": "2026-08-28T04:04:47.345335+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fkie-cad/FACT_core"}, {"content_hash": "8b9bda99e60fed05538ea02e31e3e4b1fe1000c013aac0d9ff507468a1df5d31", "fetched_at": "2026-08-29T11:44:06.807099+00:00", "kind": "homepage", "missing": false, "url": "https://fkie-cad.github.io/FACT_core"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:47.345335+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:47.345335+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:47.345335+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:35:24.218297+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c2b2f24f33e5047fe20c2255dc0b3a99cdb7b9ace05e603c55179682503a073e", "fetched_at": "2026-08-28T04:04:47.345335+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fkie-cad/FACT_core"}, {"content_hash": "8b9bda99e60fed05538ea02e31e3e4b1fe1000c013aac0d9ff507468a1df5d31", "fetched_at": "2026-08-29T11:44:06.807099+00:00", "kind": "homepage", "missing": false, "url": "https://fkie-cad.github.io/FACT_core"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:47.345335+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:47.345335+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:35:24.218297+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c2b2f24f33e5047fe20c2255dc0b3a99cdb7b9ace05e603c55179682503a073e", "fetched_at": "2026-08-28T04:04:47.345335+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fkie-cad/FACT_core"}, {"content_hash": "8b9bda99e60fed05538ea02e31e3e4b1fe1000c013aac0d9ff507468a1df5d31", "fetched_at": "2026-08-29T11:44:06.807099+00:00", "kind": "homepage", "missing": false, "url": "https://fkie-cad.github.io/FACT_core"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:35:24.218297+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c2b2f24f33e5047fe20c2255dc0b3a99cdb7b9ace05e603c55179682503a073e", "fetched_at": "2026-08-28T04:04:47.345335+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fkie-cad/FACT_core"}, {"content_hash": "8b9bda99e60fed05538ea02e31e3e4b1fe1000c013aac0d9ff507468a1df5d31", "fetched_at": "2026-08-29T11:44:06.807099+00:00", "kind": "homepage", "missing": false, "url": "https://fkie-cad.github.io/FACT_core"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:35:24.218297+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c2b2f24f33e5047fe20c2255dc0b3a99cdb7b9ace05e603c55179682503a073e", "fetched_at": "2026-08-28T04:04:47.345335+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fkie-cad/FACT_core"}, {"content_hash": "8b9bda99e60fed05538ea02e31e3e4b1fe1000c013aac0d9ff507468a1df5d31", "fetched_at": "2026-08-29T11:44:06.807099+00:00", "kind": "homepage", "missing": false, "url": "https://fkie-cad.github.io/FACT_core"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:35:24.218297+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "c2b2f24f33e5047fe20c2255dc0b3a99cdb7b9ace05e603c55179682503a073e", "fetched_at": "2026-08-28T04:04:47.345335+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fkie-cad/FACT_core"}, {"content_hash": "8b9bda99e60fed05538ea02e31e3e4b1fe1000c013aac0d9ff507468a1df5d31", "fetched_at": "2026-08-29T11:44:06.807099+00:00", "kind": "homepage", "missing": false, "url": "https://fkie-cad.github.io/FACT_core"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 78}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3270, "days_push": 8, "days_rel": 71, "gap_med": 46, "n_releases_24m": 6}, "score": 92, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}