{"adoption": {"forks": 99, "observed_at": "2026-08-28T04:04:28.024461+00:00", "stars": 1350}, "canonical_url": "https://ross.abutalabs.com/products/nohello", "card": {"archived": false, "artifact_type": "plugin", "description": "A Zygisk module to hide root.", "domain": ["security", "privacy", "android-tools"], "enriched": true, "function": ["security", "privacy"], "health_score": 50, "homepage": null, "language": "C++", "license": "MIT", "license_family": "permissive", "maturity": "active", "member_repos": ["MhmRdd/NoHello"], "name": "MhmRdd/NoHello", "platform": [], "pushed_at": "2025-06-28T00:16:35+00:00", "repo": "MhmRdd/NoHello", "stars": 1350, "tags": ["zygisk", "root-hiding", "magisk", "kernelsu", "apatch", "root-detection-evasion", "android"], "topics": [], "urls": [], "use_cases": ["hide root from banking apps on a rooted Android device", "pass root detection checks in apps that refuse to run on rooted phones", "hide Zygisk from target applications", "configure mount unmounting rules for specific apps", "run rooted device with apps that block Magisk"], "what_it_is": "NoHello is a Zygisk module written in C++ that hides root and Zygisk from Android apps. It supports Magisk, KernelSU, KernelSU Next, and APatch, and includes a configurable Mount Rule System for controlling mount point unmounting.", "when_to_avoid": ["your device is not rooted or you do not use a root solution with Zygisk support", "you need a general-purpose root detector rather than a hider", "you rely on Enforce DenyList, which must be disabled for this module to work"], "when_to_choose": ["you have a rooted Android device with Magisk, KernelSU, or APatch and need to hide root from specific apps", "you want configurable mount unmount rules instead of a simple deny list", "you need whitelist mode where only listed apps are affected"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/nohello", "repo": "MhmRdd/NoHello", "role": "main", "score": 33}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:28.024461+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:42:15.593783+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "90ef306235411eb52f172ac640a1c737e097eea41be1fed7c7a390a54b7e009d", "fetched_at": "2026-08-28T04:04:28.024461+00:00", "kind": "readme", "missing": false, "url": "https://github.com/MhmRdd/NoHello"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:28.024461+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:42:15.593783+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "90ef306235411eb52f172ac640a1c737e097eea41be1fed7c7a390a54b7e009d", "fetched_at": "2026-08-28T04:04:28.024461+00:00", "kind": "readme", "missing": false, "url": "https://github.com/MhmRdd/NoHello"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:42:15.593783+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "90ef306235411eb52f172ac640a1c737e097eea41be1fed7c7a390a54b7e009d", "fetched_at": "2026-08-28T04:04:28.024461+00:00", "kind": "readme", "missing": false, "url": "https://github.com/MhmRdd/NoHello"}], "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:28.024461+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:28.024461+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:28.024461+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:42:15.593783+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "90ef306235411eb52f172ac640a1c737e097eea41be1fed7c7a390a54b7e009d", "fetched_at": "2026-08-28T04:04:28.024461+00:00", "kind": "readme", "missing": false, "url": "https://github.com/MhmRdd/NoHello"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:28.024461+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:28.024461+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:42:15.593783+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "90ef306235411eb52f172ac640a1c737e097eea41be1fed7c7a390a54b7e009d", "fetched_at": "2026-08-28T04:04:28.024461+00:00", "kind": "readme", "missing": false, "url": "https://github.com/MhmRdd/NoHello"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:28.024461+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:28.024461+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:28.024461+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:42:15.593783+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "90ef306235411eb52f172ac640a1c737e097eea41be1fed7c7a390a54b7e009d", "fetched_at": "2026-08-28T04:04:28.024461+00:00", "kind": "readme", "missing": false, "url": "https://github.com/MhmRdd/NoHello"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:28.024461+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:28.024461+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:42:15.593783+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "90ef306235411eb52f172ac640a1c737e097eea41be1fed7c7a390a54b7e009d", "fetched_at": "2026-08-28T04:04:28.024461+00:00", "kind": "readme", "missing": false, "url": "https://github.com/MhmRdd/NoHello"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:42:15.593783+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "90ef306235411eb52f172ac640a1c737e097eea41be1fed7c7a390a54b7e009d", "fetched_at": "2026-08-28T04:04:28.024461+00:00", "kind": "readme", "missing": false, "url": "https://github.com/MhmRdd/NoHello"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:42:15.593783+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "90ef306235411eb52f172ac640a1c737e097eea41be1fed7c7a390a54b7e009d", "fetched_at": "2026-08-28T04:04:28.024461+00:00", "kind": "readme", "missing": false, "url": "https://github.com/MhmRdd/NoHello"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:42:15.593783+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "90ef306235411eb52f172ac640a1c737e097eea41be1fed7c7a390a54b7e009d", "fetched_at": "2026-08-28T04:04:28.024461+00:00", "kind": "readme", "missing": false, "url": "https://github.com/MhmRdd/NoHello"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 28, "longevity": 34, "rhythm": 40}, "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": 478, "days_push": 432, "days_rel": 459, "gap_med": 1.5, "n_releases_24m": 7}, "score": 33, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}