{"adoption": {"forks": 612, "observed_at": "2026-08-28T04:03:15.705911+00:00", "stars": 1021}, "canonical_url": "https://ross.abutalabs.com/products/zjdroid", "card": {"archived": false, "artifact_type": "cli-tool", "description": "Android app dynamic reverse tool based on Xposed framework.", "domain": ["security", "reverse-engineering", "android-tools"], "enriched": true, "function": ["reverse-engineering", "security", "developer-tools"], "health_score": 20, "homepage": null, "language": "Java", "license": "Apache-2.0", "license_family": "permissive", "maturity": "abandoned", "member_repos": ["halfkiss/ZjDroid"], "name": "halfkiss/ZjDroid", "platform": ["cli"], "pushed_at": "2014-07-25T10:22:41+00:00", "repo": "halfkiss/ZjDroid", "stars": 1021, "tags": ["xposed", "android", "dalvik", "dex-dump", "dynamic-analysis", "lua-scripting", "apk-unpacking"], "topics": [], "urls": [], "use_cases": ["dump DEX files from a running Android app", "unpack packed or hardened APKs", "monitor sensitive API calls in an app", "dump Dalvik Java heap for analysis", "run Lua scripts inside a target process", "list classes loaded from a DEX file"], "what_it_is": "ZjDroid is an Xposed framework module for dynamic reverse engineering of Android apps. It supports memory dumping of DEX files, BackSmali decompilation to bypass app packing protections, sensitive API monitoring, heap dumps, and runtime Lua scripting.", "when_to_avoid": ["you target modern Android versions - the tool targets Dalvik-era devices and is unmaintained since 2014", "you need static analysis or a cross-platform reversing tool", "you cannot root the device or install Xposed"], "when_to_choose": ["you need to dynamically analyze or unpack an Android app on a rooted device with Xposed", "you want to inspect runtime memory, DEX, or heap of an Android app", "you need to bypass common APK packing protections"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/zjdroid", "repo": "halfkiss/ZjDroid", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:15.705911+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T07:08:50.512358+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "76510514d0d24b2d58a33b8728e39c5fbf88497f71360a2951d333b4d2c7be33", "fetched_at": "2026-08-28T04:03:15.705911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/halfkiss/ZjDroid"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:15.705911+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T07:08:50.512358+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "76510514d0d24b2d58a33b8728e39c5fbf88497f71360a2951d333b4d2c7be33", "fetched_at": "2026-08-28T04:03:15.705911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/halfkiss/ZjDroid"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T07:08:50.512358+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "76510514d0d24b2d58a33b8728e39c5fbf88497f71360a2951d333b4d2c7be33", "fetched_at": "2026-08-28T04:03:15.705911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/halfkiss/ZjDroid"}], "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:03:15.705911+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:15.705911+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:15.705911+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T07:08:50.512358+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "76510514d0d24b2d58a33b8728e39c5fbf88497f71360a2951d333b4d2c7be33", "fetched_at": "2026-08-28T04:03:15.705911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/halfkiss/ZjDroid"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:15.705911+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:15.705911+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T07:08:50.512358+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "76510514d0d24b2d58a33b8728e39c5fbf88497f71360a2951d333b4d2c7be33", "fetched_at": "2026-08-28T04:03:15.705911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/halfkiss/ZjDroid"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:15.705911+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:15.705911+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:15.705911+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T07:08:50.512358+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "76510514d0d24b2d58a33b8728e39c5fbf88497f71360a2951d333b4d2c7be33", "fetched_at": "2026-08-28T04:03:15.705911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/halfkiss/ZjDroid"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:15.705911+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:15.705911+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T07:08:50.512358+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "76510514d0d24b2d58a33b8728e39c5fbf88497f71360a2951d333b4d2c7be33", "fetched_at": "2026-08-28T04:03:15.705911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/halfkiss/ZjDroid"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T07:08:50.512358+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "76510514d0d24b2d58a33b8728e39c5fbf88497f71360a2951d333b4d2c7be33", "fetched_at": "2026-08-28T04:03:15.705911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/halfkiss/ZjDroid"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T07:08:50.512358+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "76510514d0d24b2d58a33b8728e39c5fbf88497f71360a2951d333b4d2c7be33", "fetched_at": "2026-08-28T04:03:15.705911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/halfkiss/ZjDroid"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T07:08:50.512358+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "76510514d0d24b2d58a33b8728e39c5fbf88497f71360a2951d333b4d2c7be33", "fetched_at": "2026-08-28T04:03:15.705911+00:00", "kind": "readme", "missing": false, "url": "https://github.com/halfkiss/ZjDroid"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4422, "days_push": 4422, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 32, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}