{"adoption": {"forks": 171, "observed_at": "2026-08-28T04:05:30.126435+00:00", "stars": 1740}, "canonical_url": "https://ross.abutalabs.com/products/keyboardvisibilityevent", "card": {"archived": false, "artifact_type": "library", "description": "Android Library to handle software keyboard visibility change event.", "domain": ["mobile-development", "android-tools"], "enriched": true, "function": ["ui-components", "developer-tools"], "health_score": 20, "homepage": null, "language": "Kotlin", "license": "Apache-2.0", "license_family": "permissive", "maturity": "maintenance", "member_repos": ["yshrsmz/KeyboardVisibilityEvent"], "name": "yshrsmz/KeyboardVisibilityEvent", "platform": [], "pushed_at": "2021-09-29T09:59:20+00:00", "repo": "yshrsmz/KeyboardVisibilityEvent", "stars": 1740, "tags": ["android-library", "keyboard-visibility", "soft-keyboard", "kotlin", "event-listener", "android", "mobile"], "topics": ["android", "android-library"], "urls": [], "use_cases": ["detect when the soft keyboard opens or closes in an Android activity", "adjust UI layout when the keyboard appears", "check if the keyboard is currently visible", "programmatically show or hide the soft keyboard", "auto-unregister keyboard listeners when an activity or fragment is destroyed"], "what_it_is": "An Android library that lets apps listen for soft keyboard visibility change events and check whether the keyboard is currently open. It also includes helper methods to programmatically show or hide the keyboard.", "when_to_avoid": ["your activity uses windowSoftInputMode modes like adjustNothing that don't change activity height", "you want an actively maintained library — the author has stated they no longer maintain it", "you're on modern Android where WindowInsetsCompat APIs cover this need"], "when_to_choose": ["you need keyboard visibility callbacks on Android with lifecycle-aware auto-unregistration", "you want a small, simple library for show/hide keyboard utilities"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/keyboardvisibilityevent", "repo": "yshrsmz/KeyboardVisibilityEvent", "role": "main", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:30.126435+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:30:12.470467+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7ff401c8c5b8c0102ff060e351a4905c449b5bdebda41d34bc49a483b4d4911d", "fetched_at": "2026-08-28T04:05:30.126435+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yshrsmz/KeyboardVisibilityEvent"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:30.126435+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:30:12.470467+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7ff401c8c5b8c0102ff060e351a4905c449b5bdebda41d34bc49a483b4d4911d", "fetched_at": "2026-08-28T04:05:30.126435+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yshrsmz/KeyboardVisibilityEvent"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:30:12.470467+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7ff401c8c5b8c0102ff060e351a4905c449b5bdebda41d34bc49a483b4d4911d", "fetched_at": "2026-08-28T04:05:30.126435+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yshrsmz/KeyboardVisibilityEvent"}], "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:30.126435+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:30.126435+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:30.126435+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:30:12.470467+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7ff401c8c5b8c0102ff060e351a4905c449b5bdebda41d34bc49a483b4d4911d", "fetched_at": "2026-08-28T04:05:30.126435+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yshrsmz/KeyboardVisibilityEvent"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:30.126435+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:30.126435+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:30:12.470467+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7ff401c8c5b8c0102ff060e351a4905c449b5bdebda41d34bc49a483b4d4911d", "fetched_at": "2026-08-28T04:05:30.126435+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yshrsmz/KeyboardVisibilityEvent"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:30.126435+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:30.126435+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:30.126435+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:30:12.470467+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7ff401c8c5b8c0102ff060e351a4905c449b5bdebda41d34bc49a483b4d4911d", "fetched_at": "2026-08-28T04:05:30.126435+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yshrsmz/KeyboardVisibilityEvent"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:30.126435+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:30.126435+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:30:12.470467+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7ff401c8c5b8c0102ff060e351a4905c449b5bdebda41d34bc49a483b4d4911d", "fetched_at": "2026-08-28T04:05:30.126435+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yshrsmz/KeyboardVisibilityEvent"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:30:12.470467+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7ff401c8c5b8c0102ff060e351a4905c449b5bdebda41d34bc49a483b4d4911d", "fetched_at": "2026-08-28T04:05:30.126435+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yshrsmz/KeyboardVisibilityEvent"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:30:12.470467+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7ff401c8c5b8c0102ff060e351a4905c449b5bdebda41d34bc49a483b4d4911d", "fetched_at": "2026-08-28T04:05:30.126435+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yshrsmz/KeyboardVisibilityEvent"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:30:12.470467+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7ff401c8c5b8c0102ff060e351a4905c449b5bdebda41d34bc49a483b4d4911d", "fetched_at": "2026-08-28T04:05:30.126435+00:00", "kind": "readme", "missing": false, "url": "https://github.com/yshrsmz/KeyboardVisibilityEvent"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 4187, "days_push": 1799, "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}}