{"adoption": {"forks": 210, "observed_at": "2026-08-28T04:08:30.943897+00:00", "stars": 3976}, "canonical_url": "https://ross.abutalabs.com/products/mastering-modular-javascript", "card": {"archived": false, "artifact_type": "learning-resource", "description": "📦 Module thinking, principles, design patterns and best practices.", "domain": ["web-development", "developer-tools", "tutorials"], "enriched": true, "function": ["documentation", "developer-tools"], "health_score": 20, "homepage": "https://mjavascript.com", "language": "HTML", "license": "NOASSERTION", "license_family": "other", "maturity": "maintenance", "member_repos": ["mjavascript/mastering-modular-javascript"], "name": "mjavascript/mastering-modular-javascript", "platform": ["cross-platform"], "pushed_at": "2020-10-14T17:54:43+00:00", "repo": "mjavascript/mastering-modular-javascript", "stars": 3976, "tags": ["javascript", "es6", "modularity", "book", "design-patterns", "free-to-read", "web-server"], "topics": ["book", "book-series", "javascript", "modules", "packages", "modular"], "urls": [], "use_cases": ["learn how to structure a JavaScript codebase into modules", "understand ES6 module patterns and best practices", "find design patterns for scaling out large JavaScript applications", "read a free book on modular JavaScript application development", "improve code organization in a growing JavaScript project", "study real-world examples of modular JavaScript"], "what_it_is": "An open-source book, 'Mastering Modular JavaScript', the second in the Modular JavaScript series, teaching module thinking, design patterns, and best practices for modular JavaScript application development with ES6. Its chapters and code samples are freely readable online in HTML format under a Creative Commons license.", "when_to_avoid": ["you need interactive tutorials or video courses rather than prose", "you need up-to-date coverage of modern tooling beyond ES6-era practices", "you are looking for runnable software rather than educational content"], "when_to_choose": ["you want a free, in-depth written resource on JavaScript modularity and ES6", "you are designing or refactoring a JavaScript application's module architecture", "you prefer learning from a book with real-world patterns and explanations"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/mastering-modular-javascript", "repo": "mjavascript/mastering-modular-javascript", "role": "main", "score": 32}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:08:30.943897+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T18:24:19.580003+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2781dac1124ec37f308f891e8982dc15bda7150e3bb4c4bd1a854b537c736d6", "fetched_at": "2026-08-28T04:08:30.943897+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mjavascript/mastering-modular-javascript"}, {"content_hash": "d887eabec747192f5b6305c1a5e9531106e6ce8fc7d45c233a509d0875f204d7", "fetched_at": "2026-08-29T09:17:48.531567+00:00", "kind": "homepage", "missing": false, "url": "https://mjavascript.com"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:08:30.943897+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T18:24:19.580003+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2781dac1124ec37f308f891e8982dc15bda7150e3bb4c4bd1a854b537c736d6", "fetched_at": "2026-08-28T04:08:30.943897+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mjavascript/mastering-modular-javascript"}, {"content_hash": "d887eabec747192f5b6305c1a5e9531106e6ce8fc7d45c233a509d0875f204d7", "fetched_at": "2026-08-29T09:17:48.531567+00:00", "kind": "homepage", "missing": false, "url": "https://mjavascript.com"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T18:24:19.580003+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2781dac1124ec37f308f891e8982dc15bda7150e3bb4c4bd1a854b537c736d6", "fetched_at": "2026-08-28T04:08:30.943897+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mjavascript/mastering-modular-javascript"}, {"content_hash": "d887eabec747192f5b6305c1a5e9531106e6ce8fc7d45c233a509d0875f204d7", "fetched_at": "2026-08-29T09:17:48.531567+00:00", "kind": "homepage", "missing": false, "url": "https://mjavascript.com"}], "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:30.943897+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:08:30.943897+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:08:30.943897+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T18:24:19.580003+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2781dac1124ec37f308f891e8982dc15bda7150e3bb4c4bd1a854b537c736d6", "fetched_at": "2026-08-28T04:08:30.943897+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mjavascript/mastering-modular-javascript"}, {"content_hash": "d887eabec747192f5b6305c1a5e9531106e6ce8fc7d45c233a509d0875f204d7", "fetched_at": "2026-08-29T09:17:48.531567+00:00", "kind": "homepage", "missing": false, "url": "https://mjavascript.com"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:08:30.943897+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:08:30.943897+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T18:24:19.580003+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2781dac1124ec37f308f891e8982dc15bda7150e3bb4c4bd1a854b537c736d6", "fetched_at": "2026-08-28T04:08:30.943897+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mjavascript/mastering-modular-javascript"}, {"content_hash": "d887eabec747192f5b6305c1a5e9531106e6ce8fc7d45c233a509d0875f204d7", "fetched_at": "2026-08-29T09:17:48.531567+00:00", "kind": "homepage", "missing": false, "url": "https://mjavascript.com"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:08:30.943897+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:08:30.943897+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:08:30.943897+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T18:24:19.580003+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2781dac1124ec37f308f891e8982dc15bda7150e3bb4c4bd1a854b537c736d6", "fetched_at": "2026-08-28T04:08:30.943897+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mjavascript/mastering-modular-javascript"}, {"content_hash": "d887eabec747192f5b6305c1a5e9531106e6ce8fc7d45c233a509d0875f204d7", "fetched_at": "2026-08-29T09:17:48.531567+00:00", "kind": "homepage", "missing": false, "url": "https://mjavascript.com"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:08:30.943897+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:08:30.943897+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T18:24:19.580003+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2781dac1124ec37f308f891e8982dc15bda7150e3bb4c4bd1a854b537c736d6", "fetched_at": "2026-08-28T04:08:30.943897+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mjavascript/mastering-modular-javascript"}, {"content_hash": "d887eabec747192f5b6305c1a5e9531106e6ce8fc7d45c233a509d0875f204d7", "fetched_at": "2026-08-29T09:17:48.531567+00:00", "kind": "homepage", "missing": false, "url": "https://mjavascript.com"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T18:24:19.580003+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2781dac1124ec37f308f891e8982dc15bda7150e3bb4c4bd1a854b537c736d6", "fetched_at": "2026-08-28T04:08:30.943897+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mjavascript/mastering-modular-javascript"}, {"content_hash": "d887eabec747192f5b6305c1a5e9531106e6ce8fc7d45c233a509d0875f204d7", "fetched_at": "2026-08-29T09:17:48.531567+00:00", "kind": "homepage", "missing": false, "url": "https://mjavascript.com"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T18:24:19.580003+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2781dac1124ec37f308f891e8982dc15bda7150e3bb4c4bd1a854b537c736d6", "fetched_at": "2026-08-28T04:08:30.943897+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mjavascript/mastering-modular-javascript"}, {"content_hash": "d887eabec747192f5b6305c1a5e9531106e6ce8fc7d45c233a509d0875f204d7", "fetched_at": "2026-08-29T09:17:48.531567+00:00", "kind": "homepage", "missing": false, "url": "https://mjavascript.com"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T18:24:19.580003+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a2781dac1124ec37f308f891e8982dc15bda7150e3bb4c4bd1a854b537c736d6", "fetched_at": "2026-08-28T04:08:30.943897+00:00", "kind": "readme", "missing": false, "url": "https://github.com/mjavascript/mastering-modular-javascript"}, {"content_hash": "d887eabec747192f5b6305c1a5e9531106e6ce8fc7d45c233a509d0875f204d7", "fetched_at": "2026-08-29T09:17:48.531567+00:00", "kind": "homepage", "missing": false, "url": "https://mjavascript.com"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 35}, "computed_at": "2026-09-03T02:20:16.233290+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": 3494, "days_push": 2149, "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}}