{"adoption": {"forks": 713, "observed_at": "2026-08-28T04:06:43.724247+00:00", "stars": 2398}, "canonical_url": "https://ross.abutalabs.com/products/chocolate-doom", "card": {"archived": false, "artifact_type": "application", "description": "Chocolate Doom is a Doom source port that is minimalist and historically accurate.", "domain": ["gaming-tools", "cross-platform"], "enriched": true, "function": ["game-engine", "gui", "cli"], "health_score": 94, "homepage": "https://www.chocolate-doom.org/", "language": "C", "license": "GPL-2.0", "license_family": "copyleft", "maturity": "active", "member_repos": ["chocolate-doom/chocolate-doom"], "name": "chocolate-doom/chocolate-doom", "platform": ["windows", "cross-platform", "cpp"], "pushed_at": "2026-08-24T16:33:12+00:00", "repo": "chocolate-doom/chocolate-doom", "stars": 2398, "tags": ["doom", "source-port", "retrogaming", "fps", "sdl2", "heretic", "hexen", "strife", "vanilla-doom", "wad-files", "game-development", "linux", "macos"], "topics": ["games", "fps-game", "fps", "retro", "retrogaming", "sdl", "sdl2", "c", "gplv2", "heretic", "hexen", "strife", "doom"], "urls": [], "use_cases": ["play original Doom on modern computers", "run classic Doom WADs and mods with vanilla-accurate behavior", "play Heretic, Hexen, or Strife on Linux", "record or replay DOS Doom demos with compatibility", "preserve retro 1990s Doom feel including original bugs", "run total conversions with -merge without modifying IWADs"], "what_it_is": "Chocolate Doom is a minimalist, historically accurate source port of Doom, Heretic, Hexen, and Strife that reproduces the original DOS gameplay experience on modern systems. It prioritizes vanilla compatibility, including bugs, demo/savegame/config compatibility, and cross-platform portability.", "when_to_avoid": ["you want modern features like jumping, looking up/down, or enhanced graphics", "you want a feature-rich port with new gameplay options (try Crispy Doom or GZDoom)", "you want high-resolution rendering or widescreen support"], "when_to_choose": ["you want the most accurate vanilla Doom experience, bugs included", "you need compatibility with old demos, savegames, and config files", "you want a conservative port that never changes gameplay", "you want to play Heretic, Hexen, or Strife authentically"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/chocolate-doom", "repo": "chocolate-doom/chocolate-doom", "role": "main", "score": 68}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:06:43.724247+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T02:34:18.499454+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fae07086b52660137e7271396e7f50c90104f4d7af1d3e31036fd83b09967198", "fetched_at": "2026-08-28T04:06:43.724247+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chocolate-doom/chocolate-doom"}, {"content_hash": "d27b821aa372a054ffb9b8c7f9af68420c26f52118e4d48b1aa1fe82561680c2", "fetched_at": "2026-08-29T10:14:48.440462+00:00", "kind": "homepage", "missing": false, "url": "https://www.chocolate-doom.org/"}, {"content_hash": "e292e5e162fafeefa37e6136ed1126ca610a047536a3a7c38b8b15770640ecbd", "fetched_at": "2026-08-29T10:14:48.449314+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/About"}, {"content_hash": "0d32fcb65a57ad33eca7efd8300f9d716d671ec8b78f08279fdc9680031b73a2", "fetched_at": "2026-08-29T10:14:48.453659+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/Wiki:About"}, {"content_hash": "ca1ccf5adec62188ac7081932949860674e7cc84292a21992dd8e9a87e77abef", "fetched_at": "2026-08-29T10:14:48.451415+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/FAQ"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:06:43.724247+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T02:34:18.499454+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fae07086b52660137e7271396e7f50c90104f4d7af1d3e31036fd83b09967198", "fetched_at": "2026-08-28T04:06:43.724247+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chocolate-doom/chocolate-doom"}, {"content_hash": "d27b821aa372a054ffb9b8c7f9af68420c26f52118e4d48b1aa1fe82561680c2", "fetched_at": "2026-08-29T10:14:48.440462+00:00", "kind": "homepage", "missing": false, "url": "https://www.chocolate-doom.org/"}, {"content_hash": "e292e5e162fafeefa37e6136ed1126ca610a047536a3a7c38b8b15770640ecbd", "fetched_at": "2026-08-29T10:14:48.449314+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/About"}, {"content_hash": "0d32fcb65a57ad33eca7efd8300f9d716d671ec8b78f08279fdc9680031b73a2", "fetched_at": "2026-08-29T10:14:48.453659+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/Wiki:About"}, {"content_hash": "ca1ccf5adec62188ac7081932949860674e7cc84292a21992dd8e9a87e77abef", "fetched_at": "2026-08-29T10:14:48.451415+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/FAQ"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T02:34:18.499454+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fae07086b52660137e7271396e7f50c90104f4d7af1d3e31036fd83b09967198", "fetched_at": "2026-08-28T04:06:43.724247+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chocolate-doom/chocolate-doom"}, {"content_hash": "d27b821aa372a054ffb9b8c7f9af68420c26f52118e4d48b1aa1fe82561680c2", "fetched_at": "2026-08-29T10:14:48.440462+00:00", "kind": "homepage", "missing": false, "url": "https://www.chocolate-doom.org/"}, {"content_hash": "e292e5e162fafeefa37e6136ed1126ca610a047536a3a7c38b8b15770640ecbd", "fetched_at": "2026-08-29T10:14:48.449314+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/About"}, {"content_hash": "0d32fcb65a57ad33eca7efd8300f9d716d671ec8b78f08279fdc9680031b73a2", "fetched_at": "2026-08-29T10:14:48.453659+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/Wiki:About"}, {"content_hash": "ca1ccf5adec62188ac7081932949860674e7cc84292a21992dd8e9a87e77abef", "fetched_at": "2026-08-29T10:14:48.451415+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/FAQ"}], "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:06:43.724247+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:06:43.724247+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:06:43.724247+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T02:34:18.499454+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fae07086b52660137e7271396e7f50c90104f4d7af1d3e31036fd83b09967198", "fetched_at": "2026-08-28T04:06:43.724247+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chocolate-doom/chocolate-doom"}, {"content_hash": "d27b821aa372a054ffb9b8c7f9af68420c26f52118e4d48b1aa1fe82561680c2", "fetched_at": "2026-08-29T10:14:48.440462+00:00", "kind": "homepage", "missing": false, "url": "https://www.chocolate-doom.org/"}, {"content_hash": "e292e5e162fafeefa37e6136ed1126ca610a047536a3a7c38b8b15770640ecbd", "fetched_at": "2026-08-29T10:14:48.449314+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/About"}, {"content_hash": "0d32fcb65a57ad33eca7efd8300f9d716d671ec8b78f08279fdc9680031b73a2", "fetched_at": "2026-08-29T10:14:48.453659+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/Wiki:About"}, {"content_hash": "ca1ccf5adec62188ac7081932949860674e7cc84292a21992dd8e9a87e77abef", "fetched_at": "2026-08-29T10:14:48.451415+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/FAQ"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:06:43.724247+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:06:43.724247+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T02:34:18.499454+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fae07086b52660137e7271396e7f50c90104f4d7af1d3e31036fd83b09967198", "fetched_at": "2026-08-28T04:06:43.724247+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chocolate-doom/chocolate-doom"}, {"content_hash": "d27b821aa372a054ffb9b8c7f9af68420c26f52118e4d48b1aa1fe82561680c2", "fetched_at": "2026-08-29T10:14:48.440462+00:00", "kind": "homepage", "missing": false, "url": "https://www.chocolate-doom.org/"}, {"content_hash": "e292e5e162fafeefa37e6136ed1126ca610a047536a3a7c38b8b15770640ecbd", "fetched_at": "2026-08-29T10:14:48.449314+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/About"}, {"content_hash": "0d32fcb65a57ad33eca7efd8300f9d716d671ec8b78f08279fdc9680031b73a2", "fetched_at": "2026-08-29T10:14:48.453659+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/Wiki:About"}, {"content_hash": "ca1ccf5adec62188ac7081932949860674e7cc84292a21992dd8e9a87e77abef", "fetched_at": "2026-08-29T10:14:48.451415+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/FAQ"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:06:43.724247+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:06:43.724247+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:06:43.724247+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T02:34:18.499454+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fae07086b52660137e7271396e7f50c90104f4d7af1d3e31036fd83b09967198", "fetched_at": "2026-08-28T04:06:43.724247+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chocolate-doom/chocolate-doom"}, {"content_hash": "d27b821aa372a054ffb9b8c7f9af68420c26f52118e4d48b1aa1fe82561680c2", "fetched_at": "2026-08-29T10:14:48.440462+00:00", "kind": "homepage", "missing": false, "url": "https://www.chocolate-doom.org/"}, {"content_hash": "e292e5e162fafeefa37e6136ed1126ca610a047536a3a7c38b8b15770640ecbd", "fetched_at": "2026-08-29T10:14:48.449314+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/About"}, {"content_hash": "0d32fcb65a57ad33eca7efd8300f9d716d671ec8b78f08279fdc9680031b73a2", "fetched_at": "2026-08-29T10:14:48.453659+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/Wiki:About"}, {"content_hash": "ca1ccf5adec62188ac7081932949860674e7cc84292a21992dd8e9a87e77abef", "fetched_at": "2026-08-29T10:14:48.451415+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/FAQ"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:06:43.724247+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:06:43.724247+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T02:34:18.499454+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fae07086b52660137e7271396e7f50c90104f4d7af1d3e31036fd83b09967198", "fetched_at": "2026-08-28T04:06:43.724247+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chocolate-doom/chocolate-doom"}, {"content_hash": "d27b821aa372a054ffb9b8c7f9af68420c26f52118e4d48b1aa1fe82561680c2", "fetched_at": "2026-08-29T10:14:48.440462+00:00", "kind": "homepage", "missing": false, "url": "https://www.chocolate-doom.org/"}, {"content_hash": "e292e5e162fafeefa37e6136ed1126ca610a047536a3a7c38b8b15770640ecbd", "fetched_at": "2026-08-29T10:14:48.449314+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/About"}, {"content_hash": "0d32fcb65a57ad33eca7efd8300f9d716d671ec8b78f08279fdc9680031b73a2", "fetched_at": "2026-08-29T10:14:48.453659+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/Wiki:About"}, {"content_hash": "ca1ccf5adec62188ac7081932949860674e7cc84292a21992dd8e9a87e77abef", "fetched_at": "2026-08-29T10:14:48.451415+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/FAQ"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T02:34:18.499454+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fae07086b52660137e7271396e7f50c90104f4d7af1d3e31036fd83b09967198", "fetched_at": "2026-08-28T04:06:43.724247+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chocolate-doom/chocolate-doom"}, {"content_hash": "d27b821aa372a054ffb9b8c7f9af68420c26f52118e4d48b1aa1fe82561680c2", "fetched_at": "2026-08-29T10:14:48.440462+00:00", "kind": "homepage", "missing": false, "url": "https://www.chocolate-doom.org/"}, {"content_hash": "e292e5e162fafeefa37e6136ed1126ca610a047536a3a7c38b8b15770640ecbd", "fetched_at": "2026-08-29T10:14:48.449314+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/About"}, {"content_hash": "0d32fcb65a57ad33eca7efd8300f9d716d671ec8b78f08279fdc9680031b73a2", "fetched_at": "2026-08-29T10:14:48.453659+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/Wiki:About"}, {"content_hash": "ca1ccf5adec62188ac7081932949860674e7cc84292a21992dd8e9a87e77abef", "fetched_at": "2026-08-29T10:14:48.451415+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/FAQ"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T02:34:18.499454+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fae07086b52660137e7271396e7f50c90104f4d7af1d3e31036fd83b09967198", "fetched_at": "2026-08-28T04:06:43.724247+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chocolate-doom/chocolate-doom"}, {"content_hash": "d27b821aa372a054ffb9b8c7f9af68420c26f52118e4d48b1aa1fe82561680c2", "fetched_at": "2026-08-29T10:14:48.440462+00:00", "kind": "homepage", "missing": false, "url": "https://www.chocolate-doom.org/"}, {"content_hash": "e292e5e162fafeefa37e6136ed1126ca610a047536a3a7c38b8b15770640ecbd", "fetched_at": "2026-08-29T10:14:48.449314+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/About"}, {"content_hash": "0d32fcb65a57ad33eca7efd8300f9d716d671ec8b78f08279fdc9680031b73a2", "fetched_at": "2026-08-29T10:14:48.453659+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/Wiki:About"}, {"content_hash": "ca1ccf5adec62188ac7081932949860674e7cc84292a21992dd8e9a87e77abef", "fetched_at": "2026-08-29T10:14:48.451415+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/FAQ"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T02:34:18.499454+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "fae07086b52660137e7271396e7f50c90104f4d7af1d3e31036fd83b09967198", "fetched_at": "2026-08-28T04:06:43.724247+00:00", "kind": "readme", "missing": false, "url": "https://github.com/chocolate-doom/chocolate-doom"}, {"content_hash": "d27b821aa372a054ffb9b8c7f9af68420c26f52118e4d48b1aa1fe82561680c2", "fetched_at": "2026-08-29T10:14:48.440462+00:00", "kind": "homepage", "missing": false, "url": "https://www.chocolate-doom.org/"}, {"content_hash": "e292e5e162fafeefa37e6136ed1126ca610a047536a3a7c38b8b15770640ecbd", "fetched_at": "2026-08-29T10:14:48.449314+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/About"}, {"content_hash": "0d32fcb65a57ad33eca7efd8300f9d716d671ec8b78f08279fdc9680031b73a2", "fetched_at": "2026-08-29T10:14:48.453659+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/Wiki:About"}, {"content_hash": "ca1ccf5adec62188ac7081932949860674e7cc84292a21992dd8e9a87e77abef", "fetched_at": "2026-08-29T10:14:48.451415+00:00", "kind": "site_page", "missing": false, "url": "https://www.chocolate-doom.org/wiki/index.php/FAQ"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "longevity": 100, "rhythm": 11}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 6285, "days_push": 9, "days_rel": 382, "gap_med": null, "n_releases_24m": 1}, "score": 68, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}