{"adoption": {"forks": 652, "observed_at": "2026-08-28T04:09:27.572941+00:00", "stars": 5666}, "canonical_url": "https://ross.abutalabs.com/products/edxposed", "card": {"archived": false, "artifact_type": "library", "description": "Elder driver Xposed Framework.", "domain": ["android-tools", "developer-tools", "operating-systems"], "enriched": true, "function": ["security", "developer-tools", "plugin-system"], "health_score": 20, "homepage": "https://edxp.meowcat.org/", "language": "Java", "license": "GPL-3.0", "license_family": "copyleft", "maturity": "maintenance", "member_repos": ["ElderDrivers/EdXposed", "ElderDrivers/EdXposedManager"], "name": "EdXposed", "platform": [], "pushed_at": "2022-04-12T13:23:50+00:00", "repo": "ElderDrivers/EdXposed", "stars": 5666, "tags": ["xposed-framework", "art-hooking", "magisk-module", "riru", "yahfa", "sandhook", "android-modding", "runtime-hooking", "android"], "topics": ["riru", "yahfa", "xposed-framework", "xposed", "android", "android-framework", "xposedbridge", "magisk-module", "magisk", "riru-module", "xposed-module", "xposedmodule", "sandhook", "art-hooking-framework", "meowcat", "android-pie", "hacktoberfest", "edxposed-framework", "hooking-framework"], "urls": [], "use_cases": ["hook android app methods at runtime without modifying apks", "run existing xposed modules on android 8 through 11", "customize system behavior on a rooted magisk device", "build an xposed module to tweak app functionality", "reverse engineer app behavior by intercepting method calls", "apply multiple system mods that can be toggled and reverted with a reboot"], "what_it_is": "EdXposed is a Riru-based Magisk module providing an ART hooking framework for Android 8.0-11, exposing the classic Xposed API so modules can modify system and app behavior without touching APKs. It leverages YAHFA or SandHook for hooking and is managed via the companion EdXposedManager app.", "when_to_avoid": ["your device runs Android 12 or newer, where EdXposed is unsupported", "you want an actively developed successor like LSPosed", "you cannot or do not want to root your device with Magisk"], "when_to_choose": ["you have a rooted Android 8.0-11 device with Magisk and want Xposed module compatibility", "you want to develop or run Xposed modules without modifying APKs", "you need reversible, in-memory runtime hooks on Android"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/repos/ElderDrivers/EdXposed", "repo": "ElderDrivers/EdXposed", "role": "main", "score": 23}, {"path": "/repos/ElderDrivers/EdXposedManager", "repo": "ElderDrivers/EdXposedManager", "role": "plugin", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:09:27.572941+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:54:18.997678+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e63360330e9e538e89bb847bb6d7a360caf161cdab188a80fd83ae8f1138c294", "fetched_at": "2026-08-28T04:09:27.572941+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ElderDrivers/EdXposed"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:09:27.572941+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:54:18.997678+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e63360330e9e538e89bb847bb6d7a360caf161cdab188a80fd83ae8f1138c294", "fetched_at": "2026-08-28T04:09:27.572941+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ElderDrivers/EdXposed"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:54:18.997678+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e63360330e9e538e89bb847bb6d7a360caf161cdab188a80fd83ae8f1138c294", "fetched_at": "2026-08-28T04:09:27.572941+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ElderDrivers/EdXposed"}], "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:09:27.572941+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:09:27.572941+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:09:27.572941+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:54:18.997678+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e63360330e9e538e89bb847bb6d7a360caf161cdab188a80fd83ae8f1138c294", "fetched_at": "2026-08-28T04:09:27.572941+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ElderDrivers/EdXposed"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:09:27.572941+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:09:27.572941+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:54:18.997678+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e63360330e9e538e89bb847bb6d7a360caf161cdab188a80fd83ae8f1138c294", "fetched_at": "2026-08-28T04:09:27.572941+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ElderDrivers/EdXposed"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:09:27.572941+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:09:27.572941+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:09:27.572941+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:54:18.997678+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e63360330e9e538e89bb847bb6d7a360caf161cdab188a80fd83ae8f1138c294", "fetched_at": "2026-08-28T04:09:27.572941+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ElderDrivers/EdXposed"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:09:27.572941+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:09:27.572941+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:54:18.997678+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e63360330e9e538e89bb847bb6d7a360caf161cdab188a80fd83ae8f1138c294", "fetched_at": "2026-08-28T04:09:27.572941+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ElderDrivers/EdXposed"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:54:18.997678+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e63360330e9e538e89bb847bb6d7a360caf161cdab188a80fd83ae8f1138c294", "fetched_at": "2026-08-28T04:09:27.572941+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ElderDrivers/EdXposed"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:54:18.997678+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e63360330e9e538e89bb847bb6d7a360caf161cdab188a80fd83ae8f1138c294", "fetched_at": "2026-08-28T04:09:27.572941+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ElderDrivers/EdXposed"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:54:18.997678+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e63360330e9e538e89bb847bb6d7a360caf161cdab188a80fd83ae8f1138c294", "fetched_at": "2026-08-28T04:09:27.572941+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ElderDrivers/EdXposed"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 8}, "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": 2784, "days_push": 1604, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 23, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}