{"adoption": {"forks": 425, "observed_at": "2026-08-28T04:05:09.933411+00:00", "stars": 1604}, "canonical_url": "https://ross.abutalabs.com/products/atx", "card": {"archived": true, "artifact_type": "library", "description": "Smart phone automation tool. Support iOS, Android, WebApp and game.", "domain": ["testing", "mobile-development"], "enriched": true, "function": ["testing", "e2e-testing", "image-processing", "workflow-automation"], "health_score": 10, "homepage": null, "language": "Python", "license": "Apache-2.0", "license_family": "permissive", "maturity": "abandoned", "member_repos": ["NetEaseGame/ATX"], "name": "NetEaseGame/ATX", "platform": ["python", "windows"], "pushed_at": "2019-03-01T03:54:36+00:00", "repo": "NetEaseGame/ATX", "stars": 1604, "tags": ["mobile-automation", "image-recognition", "uiautomator", "game-testing", "deprecated", "superseded-by-uiautomator2", "game-development", "automation", "android", "ios", "macos", "linux"], "topics": ["atx", "android", "python", "ios", "test-automation"], "urls": [], "use_cases": ["automate testing of android apps with python", "automate ios app testing", "automate mobile game testing using image recognition", "write automated ui tests for hybrid web apps on phones", "generate test reports for mobile automation runs"], "what_it_is": "ATX (AutomatorX) is a Python-based smartphone automation and testing tool supporting native apps, web apps, and games on iOS and Android, combining image recognition with UI control locating. The project is no longer maintained and has been split into uiautomator2 (Android) and facebook-wda (iOS).", "when_to_avoid": ["starting a new android automation project - use openatx/uiautomator2 instead", "starting a new ios automation project - use openatx/facebook-wda instead", "you need actively maintained tooling or modern python support"], "when_to_choose": ["you need image-recognition-based automation for mobile games on legacy python setups", "you are maintaining an existing codebase already built on atx"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/atx", "repo": "NetEaseGame/ATX", "role": "main", "score": 10}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:09.933411+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:52:18.864328+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "22d8090e2d963f7e37853e1035b5c15bacccad2547787bb2732982febecc5100", "fetched_at": "2026-08-28T04:05:09.933411+00:00", "kind": "readme", "missing": false, "url": "https://github.com/NetEaseGame/ATX"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:09.933411+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:52:18.864328+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "22d8090e2d963f7e37853e1035b5c15bacccad2547787bb2732982febecc5100", "fetched_at": "2026-08-28T04:05:09.933411+00:00", "kind": "readme", "missing": false, "url": "https://github.com/NetEaseGame/ATX"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:52:18.864328+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "22d8090e2d963f7e37853e1035b5c15bacccad2547787bb2732982febecc5100", "fetched_at": "2026-08-28T04:05:09.933411+00:00", "kind": "readme", "missing": false, "url": "https://github.com/NetEaseGame/ATX"}], "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:05:09.933411+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:09.933411+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:09.933411+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:52:18.864328+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "22d8090e2d963f7e37853e1035b5c15bacccad2547787bb2732982febecc5100", "fetched_at": "2026-08-28T04:05:09.933411+00:00", "kind": "readme", "missing": false, "url": "https://github.com/NetEaseGame/ATX"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:09.933411+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:09.933411+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:52:18.864328+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "22d8090e2d963f7e37853e1035b5c15bacccad2547787bb2732982febecc5100", "fetched_at": "2026-08-28T04:05:09.933411+00:00", "kind": "readme", "missing": false, "url": "https://github.com/NetEaseGame/ATX"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:09.933411+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:09.933411+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:09.933411+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:52:18.864328+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "22d8090e2d963f7e37853e1035b5c15bacccad2547787bb2732982febecc5100", "fetched_at": "2026-08-28T04:05:09.933411+00:00", "kind": "readme", "missing": false, "url": "https://github.com/NetEaseGame/ATX"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:09.933411+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:09.933411+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:52:18.864328+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "22d8090e2d963f7e37853e1035b5c15bacccad2547787bb2732982febecc5100", "fetched_at": "2026-08-28T04:05:09.933411+00:00", "kind": "readme", "missing": false, "url": "https://github.com/NetEaseGame/ATX"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:52:18.864328+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "22d8090e2d963f7e37853e1035b5c15bacccad2547787bb2732982febecc5100", "fetched_at": "2026-08-28T04:05:09.933411+00:00", "kind": "readme", "missing": false, "url": "https://github.com/NetEaseGame/ATX"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:52:18.864328+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "22d8090e2d963f7e37853e1035b5c15bacccad2547787bb2732982febecc5100", "fetched_at": "2026-08-28T04:05:09.933411+00:00", "kind": "readme", "missing": false, "url": "https://github.com/NetEaseGame/ATX"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:52:18.864328+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "22d8090e2d963f7e37853e1035b5c15bacccad2547787bb2732982febecc5100", "fetched_at": "2026-08-28T04:05:09.933411+00:00", "kind": "readme", "missing": false, "url": "https://github.com/NetEaseGame/ATX"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["archived"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3842, "days_push": 2742, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 10, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}