{"adoption": {"forks": 1419, "observed_at": "2026-08-28T04:12:01.554604+00:00", "stars": 37780}, "canonical_url": "https://ross.abutalabs.com/products/freecodecampcn", "card": {"archived": false, "artifact_type": "learning-resource", "description": "FCC China open source codebase and curriculum. Learn to code and help nonprofits.", "domain": ["education", "web-development", "tutorials"], "enriched": true, "function": ["developer-tools", "documentation"], "health_score": 20, "homepage": "https://fcc.asia/", "language": "CSS", "license": "NOASSERTION", "license_family": "other", "maturity": "maintenance", "member_repos": ["FreeCodeCampChina/freecodecamp.cn"], "name": "FreeCodeCampChina/freecodecamp.cn", "platform": ["cross-platform"], "pushed_at": "2023-07-16T16:48:59+00:00", "repo": "FreeCodeCampChina/freecodecamp.cn", "stars": 37780, "tags": ["curriculum", "certification", "learn-to-code", "javascript", "react", "d3", "nonprofit", "community", "chinese-localization", "nodejs", "web-server"], "topics": ["freecodecamp", "cn-freecodecamp", "nodejs", "education", "javascript", "curriculum", "certification", "community", "react", "career", "nonprofits", "learn-to-code", "math", "d3"], "urls": [], "use_cases": ["learn full stack javascript development for free", "earn web development certifications online", "practice html css and javascript through guided curriculum", "build react and d3 data visualization projects", "learn nodejs express and mongodb backend development", "contribute to an open source education platform", "learn to code in chinese"], "what_it_is": "The Chinese localization of the freeCodeCamp open-source codebase and curriculum, offering a self-paced, browser-based full-stack JavaScript learning platform. Learners earn certifications in front-end, data visualization, back-end, and full-stack development while building real projects for nonprofits.", "when_to_avoid": ["you need a quick reference or API documentation rather than a full curriculum", "you want to learn languages outside the JavaScript full-stack track", "you need actively maintained content - the repo's latest release dates to 2023 and the upstream freeCodeCamp curriculum has since evolved"], "when_to_choose": ["you want a structured, self-paced curriculum to learn full-stack JavaScript", "you prefer learning content in Chinese", "you want certification-style milestones and portfolio projects", "you want to contribute to or self-host an open-source learning platform"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/freecodecampcn", "repo": "FreeCodeCampChina/freecodecamp.cn", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.554604+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T16:25:12.707418+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "233c278fef64fea4297d7d8a71bf82d782baebcef29c24b4110e12ee1f82a522", "fetched_at": "2026-08-28T04:12:01.554604+00:00", "kind": "readme", "missing": false, "url": "https://github.com/FreeCodeCampChina/freecodecamp.cn"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.554604+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T16:25:12.707418+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "233c278fef64fea4297d7d8a71bf82d782baebcef29c24b4110e12ee1f82a522", "fetched_at": "2026-08-28T04:12:01.554604+00:00", "kind": "readme", "missing": false, "url": "https://github.com/FreeCodeCampChina/freecodecamp.cn"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T16:25:12.707418+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "233c278fef64fea4297d7d8a71bf82d782baebcef29c24b4110e12ee1f82a522", "fetched_at": "2026-08-28T04:12:01.554604+00:00", "kind": "readme", "missing": false, "url": "https://github.com/FreeCodeCampChina/freecodecamp.cn"}], "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:12:01.554604+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.554604+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.554604+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T16:25:12.707418+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "233c278fef64fea4297d7d8a71bf82d782baebcef29c24b4110e12ee1f82a522", "fetched_at": "2026-08-28T04:12:01.554604+00:00", "kind": "readme", "missing": false, "url": "https://github.com/FreeCodeCampChina/freecodecamp.cn"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.554604+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.554604+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T16:25:12.707418+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "233c278fef64fea4297d7d8a71bf82d782baebcef29c24b4110e12ee1f82a522", "fetched_at": "2026-08-28T04:12:01.554604+00:00", "kind": "readme", "missing": false, "url": "https://github.com/FreeCodeCampChina/freecodecamp.cn"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.554604+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.554604+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.554604+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T16:25:12.707418+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "233c278fef64fea4297d7d8a71bf82d782baebcef29c24b4110e12ee1f82a522", "fetched_at": "2026-08-28T04:12:01.554604+00:00", "kind": "readme", "missing": false, "url": "https://github.com/FreeCodeCampChina/freecodecamp.cn"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.554604+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:12:01.554604+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T16:25:12.707418+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "233c278fef64fea4297d7d8a71bf82d782baebcef29c24b4110e12ee1f82a522", "fetched_at": "2026-08-28T04:12:01.554604+00:00", "kind": "readme", "missing": false, "url": "https://github.com/FreeCodeCampChina/freecodecamp.cn"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T16:25:12.707418+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "233c278fef64fea4297d7d8a71bf82d782baebcef29c24b4110e12ee1f82a522", "fetched_at": "2026-08-28T04:12:01.554604+00:00", "kind": "readme", "missing": false, "url": "https://github.com/FreeCodeCampChina/freecodecamp.cn"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T16:25:12.707418+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "233c278fef64fea4297d7d8a71bf82d782baebcef29c24b4110e12ee1f82a522", "fetched_at": "2026-08-28T04:12:01.554604+00:00", "kind": "readme", "missing": false, "url": "https://github.com/FreeCodeCampChina/freecodecamp.cn"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T16:25:12.707418+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "233c278fef64fea4297d7d8a71bf82d782baebcef29c24b4110e12ee1f82a522", "fetched_at": "2026-08-28T04:12:01.554604+00:00", "kind": "readme", "missing": false, "url": "https://github.com/FreeCodeCampChina/freecodecamp.cn"}], "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": 3624, "days_push": 1144, "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}}