{"adoption": {"forks": 1442, "observed_at": "2026-08-28T04:10:35.966079+00:00", "stars": 9594}, "canonical_url": "https://ross.abutalabs.com/products/ctf-wiki", "card": {"archived": false, "artifact_type": "learning-resource", "description": "Come and join us, we need you!", "domain": ["security", "tutorials", "developer-tools"], "enriched": true, "function": ["documentation", "security", "penetration-testing", "reverse-engineering"], "health_score": 79, "homepage": "https://ctf-wiki.org", "language": "Python", "license": "NOASSERTION", "license_family": "other", "maturity": "active", "member_repos": ["ctf-wiki/ctf-wiki"], "name": "ctf-wiki/ctf-wiki", "platform": ["python"], "pushed_at": "2026-08-23T03:50:38+00:00", "repo": "ctf-wiki/ctf-wiki", "stars": 9594, "tags": ["ctf", "capture-the-flag", "wiki", "pwn", "cryptography", "mkdocs", "hacking-tutorial", "web-server"], "topics": ["ctf", "wiki", "pwn", "reverse", "crypto", "misc", "mobile", "web"], "urls": [], "use_cases": ["learn ctf basics as a beginner", "study pwn and binary exploitation techniques", "learn reverse engineering for ctf challenges", "understand ctf cryptography challenges", "find a systematic ctf learning roadmap", "prepare for a capture the flag competition"], "what_it_is": "CTF Wiki is a community-maintained, open documentation site that systematically teaches Capture The Flag (CTF) cybersecurity competition skills across categories like pwn, reverse engineering, crypto, web, mobile, and misc. It is built with MkDocs and deployed at ctf-wiki.org, aimed at helping beginners learn CTF in a structured way.", "when_to_avoid": ["you need a hands-on practice platform with live challenges rather than documentation", "you want commercial, certified, or book-format security training", "you need professional penetration testing methodology beyond CTF scope"], "when_to_choose": ["you want a free, community-driven, systematic introduction to CTF topics", "you need structured learning material covering pwn, reverse, crypto, web, and misc", "you prefer open documentation that is continuously updated with new techniques"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/ctf-wiki", "repo": "ctf-wiki/ctf-wiki", "role": "main", "score": 77}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:10:35.966079+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:21:54.273999+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a033167873de362a7a9fc47b5e41a0fe729f988824c7d586264c3ba913933d4b", "fetched_at": "2026-08-28T04:10:35.966079+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ctf-wiki/ctf-wiki"}, {"content_hash": "df90ff24869726dcc461e5313032f1f4b72e4302b204fc12b3c40eaf64979b8c", "fetched_at": "2026-08-29T08:21:24.763690+00:00", "kind": "homepage", "missing": false, "url": "https://ctf-wiki.org"}, {"content_hash": "29e1df866dcc21455189a701a36a5954a050184bd3c1d6996ca852794549bef0", "fetched_at": "2026-08-29T08:21:24.773276+00:00", "kind": "site_page", "missing": false, "url": "https://ctf-wiki.org/contribute/documentation-requirement"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:10:35.966079+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:21:54.273999+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a033167873de362a7a9fc47b5e41a0fe729f988824c7d586264c3ba913933d4b", "fetched_at": "2026-08-28T04:10:35.966079+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ctf-wiki/ctf-wiki"}, {"content_hash": "df90ff24869726dcc461e5313032f1f4b72e4302b204fc12b3c40eaf64979b8c", "fetched_at": "2026-08-29T08:21:24.763690+00:00", "kind": "homepage", "missing": false, "url": "https://ctf-wiki.org"}, {"content_hash": "29e1df866dcc21455189a701a36a5954a050184bd3c1d6996ca852794549bef0", "fetched_at": "2026-08-29T08:21:24.773276+00:00", "kind": "site_page", "missing": false, "url": "https://ctf-wiki.org/contribute/documentation-requirement"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:21:54.273999+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a033167873de362a7a9fc47b5e41a0fe729f988824c7d586264c3ba913933d4b", "fetched_at": "2026-08-28T04:10:35.966079+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ctf-wiki/ctf-wiki"}, {"content_hash": "df90ff24869726dcc461e5313032f1f4b72e4302b204fc12b3c40eaf64979b8c", "fetched_at": "2026-08-29T08:21:24.763690+00:00", "kind": "homepage", "missing": false, "url": "https://ctf-wiki.org"}, {"content_hash": "29e1df866dcc21455189a701a36a5954a050184bd3c1d6996ca852794549bef0", "fetched_at": "2026-08-29T08:21:24.773276+00:00", "kind": "site_page", "missing": false, "url": "https://ctf-wiki.org/contribute/documentation-requirement"}], "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:10:35.966079+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:10:35.966079+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:10:35.966079+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:21:54.273999+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a033167873de362a7a9fc47b5e41a0fe729f988824c7d586264c3ba913933d4b", "fetched_at": "2026-08-28T04:10:35.966079+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ctf-wiki/ctf-wiki"}, {"content_hash": "df90ff24869726dcc461e5313032f1f4b72e4302b204fc12b3c40eaf64979b8c", "fetched_at": "2026-08-29T08:21:24.763690+00:00", "kind": "homepage", "missing": false, "url": "https://ctf-wiki.org"}, {"content_hash": "29e1df866dcc21455189a701a36a5954a050184bd3c1d6996ca852794549bef0", "fetched_at": "2026-08-29T08:21:24.773276+00:00", "kind": "site_page", "missing": false, "url": "https://ctf-wiki.org/contribute/documentation-requirement"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:10:35.966079+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:10:35.966079+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:21:54.273999+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a033167873de362a7a9fc47b5e41a0fe729f988824c7d586264c3ba913933d4b", "fetched_at": "2026-08-28T04:10:35.966079+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ctf-wiki/ctf-wiki"}, {"content_hash": "df90ff24869726dcc461e5313032f1f4b72e4302b204fc12b3c40eaf64979b8c", "fetched_at": "2026-08-29T08:21:24.763690+00:00", "kind": "homepage", "missing": false, "url": "https://ctf-wiki.org"}, {"content_hash": "29e1df866dcc21455189a701a36a5954a050184bd3c1d6996ca852794549bef0", "fetched_at": "2026-08-29T08:21:24.773276+00:00", "kind": "site_page", "missing": false, "url": "https://ctf-wiki.org/contribute/documentation-requirement"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:10:35.966079+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:10:35.966079+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:10:35.966079+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:21:54.273999+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a033167873de362a7a9fc47b5e41a0fe729f988824c7d586264c3ba913933d4b", "fetched_at": "2026-08-28T04:10:35.966079+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ctf-wiki/ctf-wiki"}, {"content_hash": "df90ff24869726dcc461e5313032f1f4b72e4302b204fc12b3c40eaf64979b8c", "fetched_at": "2026-08-29T08:21:24.763690+00:00", "kind": "homepage", "missing": false, "url": "https://ctf-wiki.org"}, {"content_hash": "29e1df866dcc21455189a701a36a5954a050184bd3c1d6996ca852794549bef0", "fetched_at": "2026-08-29T08:21:24.773276+00:00", "kind": "site_page", "missing": false, "url": "https://ctf-wiki.org/contribute/documentation-requirement"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:10:35.966079+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:10:35.966079+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:21:54.273999+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a033167873de362a7a9fc47b5e41a0fe729f988824c7d586264c3ba913933d4b", "fetched_at": "2026-08-28T04:10:35.966079+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ctf-wiki/ctf-wiki"}, {"content_hash": "df90ff24869726dcc461e5313032f1f4b72e4302b204fc12b3c40eaf64979b8c", "fetched_at": "2026-08-29T08:21:24.763690+00:00", "kind": "homepage", "missing": false, "url": "https://ctf-wiki.org"}, {"content_hash": "29e1df866dcc21455189a701a36a5954a050184bd3c1d6996ca852794549bef0", "fetched_at": "2026-08-29T08:21:24.773276+00:00", "kind": "site_page", "missing": false, "url": "https://ctf-wiki.org/contribute/documentation-requirement"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:21:54.273999+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a033167873de362a7a9fc47b5e41a0fe729f988824c7d586264c3ba913933d4b", "fetched_at": "2026-08-28T04:10:35.966079+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ctf-wiki/ctf-wiki"}, {"content_hash": "df90ff24869726dcc461e5313032f1f4b72e4302b204fc12b3c40eaf64979b8c", "fetched_at": "2026-08-29T08:21:24.763690+00:00", "kind": "homepage", "missing": false, "url": "https://ctf-wiki.org"}, {"content_hash": "29e1df866dcc21455189a701a36a5954a050184bd3c1d6996ca852794549bef0", "fetched_at": "2026-08-29T08:21:24.773276+00:00", "kind": "site_page", "missing": false, "url": "https://ctf-wiki.org/contribute/documentation-requirement"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:21:54.273999+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a033167873de362a7a9fc47b5e41a0fe729f988824c7d586264c3ba913933d4b", "fetched_at": "2026-08-28T04:10:35.966079+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ctf-wiki/ctf-wiki"}, {"content_hash": "df90ff24869726dcc461e5313032f1f4b72e4302b204fc12b3c40eaf64979b8c", "fetched_at": "2026-08-29T08:21:24.763690+00:00", "kind": "homepage", "missing": false, "url": "https://ctf-wiki.org"}, {"content_hash": "29e1df866dcc21455189a701a36a5954a050184bd3c1d6996ca852794549bef0", "fetched_at": "2026-08-29T08:21:24.773276+00:00", "kind": "site_page", "missing": false, "url": "https://ctf-wiki.org/contribute/documentation-requirement"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:21:54.273999+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "a033167873de362a7a9fc47b5e41a0fe729f988824c7d586264c3ba913933d4b", "fetched_at": "2026-08-28T04:10:35.966079+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ctf-wiki/ctf-wiki"}, {"content_hash": "df90ff24869726dcc461e5313032f1f4b72e4302b204fc12b3c40eaf64979b8c", "fetched_at": "2026-08-29T08:21:24.763690+00:00", "kind": "homepage", "missing": false, "url": "https://ctf-wiki.org"}, {"content_hash": "29e1df866dcc21455189a701a36a5954a050184bd3c1d6996ca852794549bef0", "fetched_at": "2026-08-29T08:21:24.773276+00:00", "kind": "site_page", "missing": false, "url": "https://ctf-wiki.org/contribute/documentation-requirement"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 99, "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": 3377, "days_push": 10, "days_rel": null, "gap_med": null, "n_releases_24m": 0}, "score": 77, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}