{"adoption": {"forks": 506, "observed_at": "2026-08-28T04:08:06.002625+00:00", "stars": 3471}, "canonical_url": "https://ross.abutalabs.com/products/loadsir", "card": {"archived": false, "artifact_type": "library", "description": "A lightweight, good expandability Android library used for displaying different pages like loading, error, empty, timeout or even your custom page when you load a page.(优雅地处理加载中，重试，无数据等)", "domain": ["mobile-development", "android-tools", "frontend"], "enriched": true, "function": ["ui-components", "state-management"], "health_score": 20, "homepage": null, "language": "Java", "license": null, "license_family": "other", "maturity": "maintenance", "member_repos": ["KingJA/LoadSir"], "name": "KingJA/LoadSir", "platform": ["jvm"], "pushed_at": "2020-12-26T03:23:03+00:00", "repo": "KingJA/LoadSir", "stars": 3471, "tags": ["loading-states", "error-pages", "empty-state", "status-page-switching", "android-ui", "android", "mobile"], "topics": ["loadsir", "loadpage", "progresspage", "errorpage", "emptypage", "custompage"], "urls": [], "use_cases": ["show loading spinner while fetching data in android", "display error page with retry button in android app", "show empty state when no data available", "handle network timeout page in android", "switch status pages based on api response codes", "custom placeholder pages in fragments and views"], "what_it_is": "LoadSir is a lightweight, highly extensible Android library for managing load feedback pages, switching between loading, error, empty, timeout, and custom state views when data loads. It works with Activities, Fragments, and Views without modifying layout files, and supports automatic state switching based on network response codes.", "when_to_avoid": ["you are not building an Android app", "you need a library with active maintenance and a clear license", "you prefer Jetpack Compose-based state handling over View-based approaches"], "when_to_choose": ["you need flexible loading/error/empty state handling across Activities, Fragments, and Views", "you want state pages without modifying existing layout files", "you need custom state pages with per-page click handlers and global or per-screen configuration"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/loadsir", "repo": "KingJA/LoadSir", "role": "main", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:06.002625+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:36:37.321662+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "044d266fa0b507347fc2fe6e72346517422437415f1bf0f90a8a402b3db5bce2", "fetched_at": "2026-08-28T04:08:06.002625+00:00", "kind": "readme", "missing": false, "url": "https://github.com/KingJA/LoadSir"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:06.002625+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:36:37.321662+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "044d266fa0b507347fc2fe6e72346517422437415f1bf0f90a8a402b3db5bce2", "fetched_at": "2026-08-28T04:08:06.002625+00:00", "kind": "readme", "missing": false, "url": "https://github.com/KingJA/LoadSir"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:36:37.321662+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "044d266fa0b507347fc2fe6e72346517422437415f1bf0f90a8a402b3db5bce2", "fetched_at": "2026-08-28T04:08:06.002625+00:00", "kind": "readme", "missing": false, "url": "https://github.com/KingJA/LoadSir"}], "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:08:06.002625+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:06.002625+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:06.002625+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:36:37.321662+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "044d266fa0b507347fc2fe6e72346517422437415f1bf0f90a8a402b3db5bce2", "fetched_at": "2026-08-28T04:08:06.002625+00:00", "kind": "readme", "missing": false, "url": "https://github.com/KingJA/LoadSir"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:06.002625+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:06.002625+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:36:37.321662+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "044d266fa0b507347fc2fe6e72346517422437415f1bf0f90a8a402b3db5bce2", "fetched_at": "2026-08-28T04:08:06.002625+00:00", "kind": "readme", "missing": false, "url": "https://github.com/KingJA/LoadSir"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:06.002625+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:06.002625+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:06.002625+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:36:37.321662+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "044d266fa0b507347fc2fe6e72346517422437415f1bf0f90a8a402b3db5bce2", "fetched_at": "2026-08-28T04:08:06.002625+00:00", "kind": "readme", "missing": false, "url": "https://github.com/KingJA/LoadSir"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:06.002625+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:06.002625+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:36:37.321662+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "044d266fa0b507347fc2fe6e72346517422437415f1bf0f90a8a402b3db5bce2", "fetched_at": "2026-08-28T04:08:06.002625+00:00", "kind": "readme", "missing": false, "url": "https://github.com/KingJA/LoadSir"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:36:37.321662+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "044d266fa0b507347fc2fe6e72346517422437415f1bf0f90a8a402b3db5bce2", "fetched_at": "2026-08-28T04:08:06.002625+00:00", "kind": "readme", "missing": false, "url": "https://github.com/KingJA/LoadSir"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:36:37.321662+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "044d266fa0b507347fc2fe6e72346517422437415f1bf0f90a8a402b3db5bce2", "fetched_at": "2026-08-28T04:08:06.002625+00:00", "kind": "readme", "missing": false, "url": "https://github.com/KingJA/LoadSir"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:36:37.321662+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "044d266fa0b507347fc2fe6e72346517422437415f1bf0f90a8a402b3db5bce2", "fetched_at": "2026-08-28T04:08:06.002625+00:00", "kind": "readme", "missing": false, "url": "https://github.com/KingJA/LoadSir"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3287, "days_push": 2076, "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}}