{"adoption": {"forks": 382, "observed_at": "2026-08-28T04:04:19.351845+00:00", "stars": 1309}, "canonical_url": "https://ross.abutalabs.com/products/tokenautocomplete", "card": {"archived": false, "artifact_type": "library", "description": "Gmail style MultiAutoCompleteTextView for Android", "domain": ["mobile-development", "frontend"], "enriched": true, "function": ["ui-components", "form-handling"], "health_score": 20, "homepage": null, "language": "Kotlin", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["splitwise/TokenAutoComplete"], "name": "splitwise/TokenAutoComplete", "platform": [], "pushed_at": "2024-03-18T16:12:05+00:00", "repo": "splitwise/TokenAutoComplete", "stars": 1309, "tags": ["android-ui", "autocomplete", "token-input", "chips-input", "custom-view", "text-field", "gmail-style", "multi-select", "email-recipients", "android", "mobile"], "topics": [], "urls": [], "use_cases": ["add a gmail-style recipient chips input to an android app", "android autocomplete text field that turns selections into deletable tokens", "let users pick multiple email contacts as chips in one text box", "multi-select autocomplete dropdown with token views for android", "tag or category input field with filtering on android"], "what_it_is": "An Android library that provides a Gmail-style token auto-complete text view, letting users type filtered suggestions and turn selections into removable inline tokens. It subclasses AppCompatAutoCompleteTextView with a simple API for adding, removing, and listening to token objects.", "when_to_avoid": ["You are not targeting Android, since this is an Android View library", "You are building with Jetpack Compose and need a Compose-native chips input rather than a View", "You only need a plain autocomplete dropdown without tokenized inline input"], "when_to_choose": ["You are building a native Android app and need a tokenized/chips autocomplete input like Gmail's To field", "You want a mature, customizable View-based component with filtering, duplicate handling, and token listeners", "You prefer a small focused library with a simple API published on Maven Central"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/tokenautocomplete", "repo": "splitwise/TokenAutoComplete", "role": "main", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:19.351845+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:50:01.144884+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f6d87ffe0cef39d3830ea211d895906b721aeeed437977b778eb80c71b9293", "fetched_at": "2026-08-28T04:04:19.351845+00:00", "kind": "readme", "missing": false, "url": "https://github.com/splitwise/TokenAutoComplete"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:19.351845+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:50:01.144884+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f6d87ffe0cef39d3830ea211d895906b721aeeed437977b778eb80c71b9293", "fetched_at": "2026-08-28T04:04:19.351845+00:00", "kind": "readme", "missing": false, "url": "https://github.com/splitwise/TokenAutoComplete"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:50:01.144884+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f6d87ffe0cef39d3830ea211d895906b721aeeed437977b778eb80c71b9293", "fetched_at": "2026-08-28T04:04:19.351845+00:00", "kind": "readme", "missing": false, "url": "https://github.com/splitwise/TokenAutoComplete"}], "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:19.351845+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:19.351845+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:19.351845+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:50:01.144884+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f6d87ffe0cef39d3830ea211d895906b721aeeed437977b778eb80c71b9293", "fetched_at": "2026-08-28T04:04:19.351845+00:00", "kind": "readme", "missing": false, "url": "https://github.com/splitwise/TokenAutoComplete"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:19.351845+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:19.351845+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:50:01.144884+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f6d87ffe0cef39d3830ea211d895906b721aeeed437977b778eb80c71b9293", "fetched_at": "2026-08-28T04:04:19.351845+00:00", "kind": "readme", "missing": false, "url": "https://github.com/splitwise/TokenAutoComplete"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:19.351845+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:19.351845+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:19.351845+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:50:01.144884+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f6d87ffe0cef39d3830ea211d895906b721aeeed437977b778eb80c71b9293", "fetched_at": "2026-08-28T04:04:19.351845+00:00", "kind": "readme", "missing": false, "url": "https://github.com/splitwise/TokenAutoComplete"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:19.351845+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:19.351845+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:50:01.144884+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f6d87ffe0cef39d3830ea211d895906b721aeeed437977b778eb80c71b9293", "fetched_at": "2026-08-28T04:04:19.351845+00:00", "kind": "readme", "missing": false, "url": "https://github.com/splitwise/TokenAutoComplete"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:50:01.144884+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f6d87ffe0cef39d3830ea211d895906b721aeeed437977b778eb80c71b9293", "fetched_at": "2026-08-28T04:04:19.351845+00:00", "kind": "readme", "missing": false, "url": "https://github.com/splitwise/TokenAutoComplete"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:50:01.144884+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f6d87ffe0cef39d3830ea211d895906b721aeeed437977b778eb80c71b9293", "fetched_at": "2026-08-28T04:04:19.351845+00:00", "kind": "readme", "missing": false, "url": "https://github.com/splitwise/TokenAutoComplete"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:50:01.144884+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "e2f6d87ffe0cef39d3830ea211d895906b721aeeed437977b778eb80c71b9293", "fetched_at": "2026-08-28T04:04:19.351845+00:00", "kind": "readme", "missing": false, "url": "https://github.com/splitwise/TokenAutoComplete"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "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": 4731, "days_push": 898, "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}}