{"adoption": {"forks": 420, "observed_at": "2026-08-28T04:04:50.176748+00:00", "stars": 1476}, "canonical_url": "https://ross.abutalabs.com/products/wheel-awesome", "card": {"archived": false, "artifact_type": "learning-resource", "description": "天天造轮子，手写面试常见源码。", "domain": ["frontend", "web-development", "tutorials", "developer-tools", "education"], "enriched": true, "function": ["developer-tools", "testing", "templating", "state-management", "build-tool"], "health_score": 20, "homepage": null, "language": "JavaScript", "license": null, "license_family": "other", "maturity": "maintenance", "member_repos": ["su37josephxia/wheel-awesome"], "name": "su37josephxia/wheel-awesome", "platform": ["cross-platform"], "pushed_at": "2024-03-13T15:32:22+00:00", "repo": "su37josephxia/wheel-awesome", "stars": 1476, "tags": ["frontend-interview", "reinvent-the-wheel", "handwritten-source-code", "vue-mini", "webpack-mini", "vite-mini", "promise", "virtual-dom", "tdd", "jest", "chinese-language", "nodejs", "javascript"], "topics": [], "urls": [], "use_cases": ["prepare for frontend JavaScript interview questions about implementing Promise from scratch", "learn how call apply and bind work by writing them by hand", "understand virtual DOM and dom diff by building a mini version", "study how a bundler like Webpack or Vite works via simplified implementations", "practice test-driven development with Jest on small JavaScript exercises", "learn Vue reactivity and state management internals through code"], "what_it_is": "A Chinese-language educational repository where a frontend engineer reimplements common interview-relevant library internals ('wheels') in JavaScript, such as Promise, call/apply/bind, virtual DOM, a mini Vue, and simplified Webpack/Rollup/Vite. It pairs code exercises with TDD/Jest practice and linked articles and videos.", "when_to_avoid": ["you need production-ready libraries or frameworks to ship in a real project", "you work outside the JavaScript/frontend ecosystem", "you need English-language documentation only, since the primary content is in Chinese", "you need an actively maintained project with a license and regular releases"], "when_to_choose": ["you are a JavaScript/frontend developer preparing for interviews that ask you to hand-write library internals", "you want guided mini-implementations of Vue, Webpack, Vite, or Promise with accompanying articles and videos", "you want to practice TDD and Jest on small, well-scoped code exercises"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/wheel-awesome", "repo": "su37josephxia/wheel-awesome", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:04:50.176748+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T04:34:28.981261+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7a3d92749cbc31310c44e620e6cfb995f00e8a2aa973b64ad555a9a45a22437c", "fetched_at": "2026-08-28T04:04:50.176748+00:00", "kind": "readme", "missing": false, "url": "https://github.com/su37josephxia/wheel-awesome"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:04:50.176748+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T04:34:28.981261+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7a3d92749cbc31310c44e620e6cfb995f00e8a2aa973b64ad555a9a45a22437c", "fetched_at": "2026-08-28T04:04:50.176748+00:00", "kind": "readme", "missing": false, "url": "https://github.com/su37josephxia/wheel-awesome"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T04:34:28.981261+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7a3d92749cbc31310c44e620e6cfb995f00e8a2aa973b64ad555a9a45a22437c", "fetched_at": "2026-08-28T04:04:50.176748+00:00", "kind": "readme", "missing": false, "url": "https://github.com/su37josephxia/wheel-awesome"}], "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:50.176748+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:04:50.176748+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:04:50.176748+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T04:34:28.981261+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7a3d92749cbc31310c44e620e6cfb995f00e8a2aa973b64ad555a9a45a22437c", "fetched_at": "2026-08-28T04:04:50.176748+00:00", "kind": "readme", "missing": false, "url": "https://github.com/su37josephxia/wheel-awesome"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:04:50.176748+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:04:50.176748+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T04:34:28.981261+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7a3d92749cbc31310c44e620e6cfb995f00e8a2aa973b64ad555a9a45a22437c", "fetched_at": "2026-08-28T04:04:50.176748+00:00", "kind": "readme", "missing": false, "url": "https://github.com/su37josephxia/wheel-awesome"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:04:50.176748+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:04:50.176748+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:04:50.176748+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T04:34:28.981261+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7a3d92749cbc31310c44e620e6cfb995f00e8a2aa973b64ad555a9a45a22437c", "fetched_at": "2026-08-28T04:04:50.176748+00:00", "kind": "readme", "missing": false, "url": "https://github.com/su37josephxia/wheel-awesome"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:04:50.176748+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:04:50.176748+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T04:34:28.981261+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7a3d92749cbc31310c44e620e6cfb995f00e8a2aa973b64ad555a9a45a22437c", "fetched_at": "2026-08-28T04:04:50.176748+00:00", "kind": "readme", "missing": false, "url": "https://github.com/su37josephxia/wheel-awesome"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T04:34:28.981261+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7a3d92749cbc31310c44e620e6cfb995f00e8a2aa973b64ad555a9a45a22437c", "fetched_at": "2026-08-28T04:04:50.176748+00:00", "kind": "readme", "missing": false, "url": "https://github.com/su37josephxia/wheel-awesome"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T04:34:28.981261+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7a3d92749cbc31310c44e620e6cfb995f00e8a2aa973b64ad555a9a45a22437c", "fetched_at": "2026-08-28T04:04:50.176748+00:00", "kind": "readme", "missing": false, "url": "https://github.com/su37josephxia/wheel-awesome"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T04:34:28.981261+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "7a3d92749cbc31310c44e620e6cfb995f00e8a2aa973b64ad555a9a45a22437c", "fetched_at": "2026-08-28T04:04:50.176748+00:00", "kind": "readme", "missing": false, "url": "https://github.com/su37josephxia/wheel-awesome"}], "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": 2251, "days_push": 903, "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}}