{"adoption": {"forks": 790, "observed_at": "2026-08-28T04:06:54.663259+00:00", "stars": 2470}, "canonical_url": "https://ross.abutalabs.com/products/sl4a", "card": {"archived": true, "artifact_type": "library", "description": "SL4A brings scripting languages to Android by allowing you to edit and execute scripts and interactive interpreters directly on the Android device.", "domain": ["android-tools", "developer-tools"], "enriched": true, "function": ["interpreter", "sdk", "cli"], "health_score": 10, "homepage": null, "language": "C", "license": "Apache-2.0", "license_family": "permissive", "maturity": "abandoned", "member_repos": ["damonkohler/sl4a"], "name": "damonkohler/sl4a", "platform": [], "pushed_at": "2024-03-27T12:42:56+00:00", "repo": "damonkohler/sl4a", "stars": 2470, "tags": ["scripting", "android-scripting", "python-on-android", "legacy", "automation", "android"], "topics": [], "urls": [], "use_cases": ["run python scripts on android", "automate tasks on android device", "access android apis from scripting languages", "interactive interpreter on android", "prototype android automation with scripts"], "what_it_is": "SL4A (Scripting Layer for Android) lets you edit and execute scripts and interactive interpreters (Python, Perl, JRuby, Lua, BeanShell, JavaScript, Tcl, shell) directly on Android devices, with simplified access to Android APIs. It is alpha-quality software and no longer under active development.", "when_to_avoid": ["you are starting a new Android automation project - use an active fork or modern alternatives like Termux", "you need production-quality, maintained software", "you need support for recent Android versions"], "when_to_choose": ["you need to run scripts in multiple languages on an old Android device", "you want lightweight Android API access without writing a full app", "you are maintaining a legacy project already built on SL4A"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/sl4a", "repo": "damonkohler/sl4a", "role": "main", "score": 10}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:54.663259+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:29:09.507498+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "345737f1e89b65ec203c6a7b1cb442421f04e1101ea1ff9d24730cef346783db", "fetched_at": "2026-08-28T04:06:54.663259+00:00", "kind": "readme", "missing": false, "url": "https://github.com/damonkohler/sl4a"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:54.663259+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:29:09.507498+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "345737f1e89b65ec203c6a7b1cb442421f04e1101ea1ff9d24730cef346783db", "fetched_at": "2026-08-28T04:06:54.663259+00:00", "kind": "readme", "missing": false, "url": "https://github.com/damonkohler/sl4a"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:29:09.507498+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "345737f1e89b65ec203c6a7b1cb442421f04e1101ea1ff9d24730cef346783db", "fetched_at": "2026-08-28T04:06:54.663259+00:00", "kind": "readme", "missing": false, "url": "https://github.com/damonkohler/sl4a"}], "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:06:54.663259+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:54.663259+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:54.663259+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:29:09.507498+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "345737f1e89b65ec203c6a7b1cb442421f04e1101ea1ff9d24730cef346783db", "fetched_at": "2026-08-28T04:06:54.663259+00:00", "kind": "readme", "missing": false, "url": "https://github.com/damonkohler/sl4a"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:54.663259+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:54.663259+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:29:09.507498+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "345737f1e89b65ec203c6a7b1cb442421f04e1101ea1ff9d24730cef346783db", "fetched_at": "2026-08-28T04:06:54.663259+00:00", "kind": "readme", "missing": false, "url": "https://github.com/damonkohler/sl4a"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:54.663259+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:54.663259+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:54.663259+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:29:09.507498+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "345737f1e89b65ec203c6a7b1cb442421f04e1101ea1ff9d24730cef346783db", "fetched_at": "2026-08-28T04:06:54.663259+00:00", "kind": "readme", "missing": false, "url": "https://github.com/damonkohler/sl4a"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:54.663259+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:54.663259+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:29:09.507498+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "345737f1e89b65ec203c6a7b1cb442421f04e1101ea1ff9d24730cef346783db", "fetched_at": "2026-08-28T04:06:54.663259+00:00", "kind": "readme", "missing": false, "url": "https://github.com/damonkohler/sl4a"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:29:09.507498+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "345737f1e89b65ec203c6a7b1cb442421f04e1101ea1ff9d24730cef346783db", "fetched_at": "2026-08-28T04:06:54.663259+00:00", "kind": "readme", "missing": false, "url": "https://github.com/damonkohler/sl4a"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:29:09.507498+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "345737f1e89b65ec203c6a7b1cb442421f04e1101ea1ff9d24730cef346783db", "fetched_at": "2026-08-28T04:06:54.663259+00:00", "kind": "readme", "missing": false, "url": "https://github.com/damonkohler/sl4a"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:29:09.507498+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "345737f1e89b65ec203c6a7b1cb442421f04e1101ea1ff9d24730cef346783db", "fetched_at": "2026-08-28T04:06:54.663259+00:00", "kind": "readme", "missing": false, "url": "https://github.com/damonkohler/sl4a"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases", "archived"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4723, "days_push": 889, "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}}