{"adoption": {"forks": 30, "observed_at": "2026-08-28T04:03:57.299985+00:00", "stars": 1196}, "canonical_url": "https://ross.abutalabs.com/products/tsbattery", "card": {"archived": false, "artifact_type": "plugin", "description": "A new way to save your battery avoid cancer apps hacker it.", "domain": ["android-tools", "privacy", "developer-tools"], "enriched": true, "function": ["security", "developer-tools"], "health_score": 83, "homepage": null, "language": "Kotlin", "license": "AGPL-3.0", "license_family": "copyleft", "maturity": "active", "member_repos": ["fankes/TSBattery"], "name": "fankes/TSBattery", "platform": [], "pushed_at": "2026-08-24T13:00:03+00:00", "repo": "fankes/TSBattery", "stars": 1196, "tags": ["xposed-module", "battery-optimization", "root", "lsposed", "wechat", "qq", "kotlin", "android"], "topics": ["android", "xposedmodule"], "urls": [], "use_cases": ["stop WeChat from draining my battery", "reduce QQ background battery usage", "optimize TIM power consumption on rooted Android", "Xposed module to tame battery-hungry Chinese chat apps", "make WeChat more battery efficient with LSPosed"], "what_it_is": "TSBattery is an open-source Xposed module written in Kotlin that reduces battery drain from QQ, TIM, and WeChat on rooted Android devices. It hooks into these apps to prevent aggressive background behavior that wastes power.", "when_to_avoid": ["your device is not rooted and you cannot use Xposed frameworks", "you do not use QQ, TIM, or WeChat", "you are outside mainland China and do not use these specific apps", "you cannot accept the account-ban risks some non-root Xposed frameworks may carry"], "when_to_choose": ["you have a rooted Android device with LSPosed or a compatible Xposed framework", "you use QQ, TIM, or WeChat and suffer from excessive battery drain", "you want an open-source, community-maintained battery optimization module"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/tsbattery", "repo": "fankes/TSBattery", "role": "main", "score": 67}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:57.299985+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:22:02.265435+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8ae3db8f8f53d9a017adddee806e1e06c3155fab5496d060e921af4ccea4ed3e", "fetched_at": "2026-08-28T04:03:57.299985+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fankes/TSBattery"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:57.299985+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:22:02.265435+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8ae3db8f8f53d9a017adddee806e1e06c3155fab5496d060e921af4ccea4ed3e", "fetched_at": "2026-08-28T04:03:57.299985+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fankes/TSBattery"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:22:02.265435+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8ae3db8f8f53d9a017adddee806e1e06c3155fab5496d060e921af4ccea4ed3e", "fetched_at": "2026-08-28T04:03:57.299985+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fankes/TSBattery"}], "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:57.299985+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:57.299985+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:57.299985+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:22:02.265435+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8ae3db8f8f53d9a017adddee806e1e06c3155fab5496d060e921af4ccea4ed3e", "fetched_at": "2026-08-28T04:03:57.299985+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fankes/TSBattery"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:57.299985+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:57.299985+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:22:02.265435+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8ae3db8f8f53d9a017adddee806e1e06c3155fab5496d060e921af4ccea4ed3e", "fetched_at": "2026-08-28T04:03:57.299985+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fankes/TSBattery"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:57.299985+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:57.299985+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:57.299985+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:22:02.265435+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8ae3db8f8f53d9a017adddee806e1e06c3155fab5496d060e921af4ccea4ed3e", "fetched_at": "2026-08-28T04:03:57.299985+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fankes/TSBattery"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:57.299985+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:57.299985+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:22:02.265435+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8ae3db8f8f53d9a017adddee806e1e06c3155fab5496d060e921af4ccea4ed3e", "fetched_at": "2026-08-28T04:03:57.299985+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fankes/TSBattery"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:22:02.265435+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8ae3db8f8f53d9a017adddee806e1e06c3155fab5496d060e921af4ccea4ed3e", "fetched_at": "2026-08-28T04:03:57.299985+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fankes/TSBattery"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:22:02.265435+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8ae3db8f8f53d9a017adddee806e1e06c3155fab5496d060e921af4ccea4ed3e", "fetched_at": "2026-08-28T04:03:57.299985+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fankes/TSBattery"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:22:02.265435+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8ae3db8f8f53d9a017adddee806e1e06c3155fab5496d060e921af4ccea4ed3e", "fetched_at": "2026-08-28T04:03:57.299985+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fankes/TSBattery"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 8}, "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": 1825, "days_push": 9, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 67, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}