{"adoption": {"forks": 295, "observed_at": "2026-08-28T04:03:56.311450+00:00", "stars": 1191}, "canonical_url": "https://ross.abutalabs.com/products/awesome-view", "card": {"archived": false, "artifact_type": "learning-resource", "description": "自定义View有这些足够了", "domain": ["android-tools", "mobile-development", "tutorials", "frontend"], "enriched": true, "function": ["ui-components", "animation", "developer-tools"], "health_score": 20, "homepage": null, "language": "Java", "license": null, "license_family": "other", "maturity": "maintenance", "member_repos": ["xinghongfei/awesome-view"], "name": "xinghongfei/awesome-view", "platform": [], "pushed_at": "2017-04-30T09:04:39+00:00", "repo": "xinghongfei/awesome-view", "stars": 1191, "tags": ["awesome-list", "custom-view", "android-ui", "touch-events", "canvas", "property-animation", "chinese-language", "android", "mobile"], "topics": [], "urls": [], "use_cases": ["learn android custom view development", "understand android view drawing pipeline", "learn touch event dispatch mechanism", "find tutorials on canvas and paint in android", "learn property animation in android", "study bezier curves and matrix in custom views"], "what_it_is": "A curated awesome-list of tutorials and articles for learning Android custom View development, covering the drawing pipeline (onMeasure/onLayout/onDraw), touch event dispatch, property animation, and gesture handling. Content is primarily in Chinese and links to external blog series and book recommendations.", "when_to_avoid": ["you need up-to-date material for modern Android (Jetpack Compose)", "you need English-language resources only", "you need runnable code or a library rather than links to articles"], "when_to_choose": ["you are an Android developer learning to build custom UI components", "you prefer curated Chinese-language tutorials and blog series", "you want a structured path through drawing, events, and animation topics"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/awesome-view", "repo": "xinghongfei/awesome-view", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:56.311450+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:22:59.519007+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "26965e410cb678af3cddaef08062c3966cbfa3a6f3a1d8558244919bceb198ba", "fetched_at": "2026-08-28T04:03:56.311450+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xinghongfei/awesome-view"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:56.311450+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:22:59.519007+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "26965e410cb678af3cddaef08062c3966cbfa3a6f3a1d8558244919bceb198ba", "fetched_at": "2026-08-28T04:03:56.311450+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xinghongfei/awesome-view"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:22:59.519007+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "26965e410cb678af3cddaef08062c3966cbfa3a6f3a1d8558244919bceb198ba", "fetched_at": "2026-08-28T04:03:56.311450+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xinghongfei/awesome-view"}], "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:03:56.311450+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:56.311450+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:56.311450+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:22:59.519007+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "26965e410cb678af3cddaef08062c3966cbfa3a6f3a1d8558244919bceb198ba", "fetched_at": "2026-08-28T04:03:56.311450+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xinghongfei/awesome-view"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:56.311450+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:56.311450+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:22:59.519007+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "26965e410cb678af3cddaef08062c3966cbfa3a6f3a1d8558244919bceb198ba", "fetched_at": "2026-08-28T04:03:56.311450+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xinghongfei/awesome-view"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:56.311450+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:56.311450+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:56.311450+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:22:59.519007+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "26965e410cb678af3cddaef08062c3966cbfa3a6f3a1d8558244919bceb198ba", "fetched_at": "2026-08-28T04:03:56.311450+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xinghongfei/awesome-view"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:56.311450+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:56.311450+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:22:59.519007+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "26965e410cb678af3cddaef08062c3966cbfa3a6f3a1d8558244919bceb198ba", "fetched_at": "2026-08-28T04:03:56.311450+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xinghongfei/awesome-view"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:22:59.519007+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "26965e410cb678af3cddaef08062c3966cbfa3a6f3a1d8558244919bceb198ba", "fetched_at": "2026-08-28T04:03:56.311450+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xinghongfei/awesome-view"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:22:59.519007+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "26965e410cb678af3cddaef08062c3966cbfa3a6f3a1d8558244919bceb198ba", "fetched_at": "2026-08-28T04:03:56.311450+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xinghongfei/awesome-view"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:22:59.519007+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "26965e410cb678af3cddaef08062c3966cbfa3a6f3a1d8558244919bceb198ba", "fetched_at": "2026-08-28T04:03:56.311450+00:00", "kind": "readme", "missing": false, "url": "https://github.com/xinghongfei/awesome-view"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_releases", "no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3612, "days_push": 3412, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 32, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}