{"adoption": {"forks": 1007, "observed_at": "2026-08-28T04:09:48.693652+00:00", "stars": 6800}, "canonical_url": "https://ross.abutalabs.com/products/whatweb", "card": {"archived": false, "artifact_type": "cli-tool", "description": "Next generation web scanner", "domain": ["security", "penetration-testing", "web-development", "developer-tools"], "enriched": true, "function": ["security", "penetration-testing", "http-client", "web-scraping"], "health_score": 83, "homepage": "https://www.morningstarsecurity.com/research/whatweb", "language": "Ruby", "license": "GPL-2.0", "license_family": "copyleft", "maturity": "stable", "member_repos": ["urbanadventurer/WhatWeb"], "name": "urbanadventurer/WhatWeb", "platform": ["windows", "cli", "ruby"], "pushed_at": "2026-04-02T15:43:24+00:00", "repo": "urbanadventurer/WhatWeb", "stars": 6800, "tags": ["web-fingerprinting", "recon", "technology-detection", "owasp", "kali-linux", "appsec", "linux", "macos"], "topics": ["security", "web", "scanner", "ruby", "penetration-testing", "kali-linux", "owasp", "penetration-testing-tools", "penetration-test", "hacking", "hacking-tools", "network-security", "recon", "appsec", "application-security", "pentesting", "pentesting-tools", "pentest", "web-hacking", "security-tools"], "urls": [], "use_cases": ["identify what technologies a website is built with", "fingerprint CMS and web server versions during recon", "detect WordPress sites even with generator tags removed", "enumerate web technologies across many target URLs", "gather reconnaissance before a penetration test", "find exposed email addresses and SQL errors on a site"], "what_it_is": "WhatWeb is a command-line web scanner that identifies the technologies powering websites, including CMSs, web servers, JavaScript libraries, and analytics packages, using over 1800 plugins. It supports adjustable aggression levels, from fast stealthy single-request scans to thorough penetration-test modes, and detects version numbers, email addresses, and SQL errors.", "when_to_avoid": ["you need a full vulnerability scanner rather than technology identification", "you want a GUI-driven scanning experience", "you need authenticated or deep crawling of web applications", "you require active exploitation capabilities"], "when_to_choose": ["you need fast, scriptable web technology fingerprinting from the CLI", "you want a large plugin ecosystem covering CMSs, servers, and frameworks", "you are doing recon or appsec assessment on public websites", "you need a tool available in Kali Linux and other pentest toolkits"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/whatweb", "repo": "urbanadventurer/WhatWeb", "role": "main", "score": 76}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.693652+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T17:42:05.615364+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "17ba2522ace6c93284522c27a34b53385c05191589637f9602bc330dcc59e703", "fetched_at": "2026-08-28T04:09:48.693652+00:00", "kind": "readme", "missing": false, "url": "https://github.com/urbanadventurer/WhatWeb"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.693652+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T17:42:05.615364+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "17ba2522ace6c93284522c27a34b53385c05191589637f9602bc330dcc59e703", "fetched_at": "2026-08-28T04:09:48.693652+00:00", "kind": "readme", "missing": false, "url": "https://github.com/urbanadventurer/WhatWeb"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T17:42:05.615364+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "17ba2522ace6c93284522c27a34b53385c05191589637f9602bc330dcc59e703", "fetched_at": "2026-08-28T04:09:48.693652+00:00", "kind": "readme", "missing": false, "url": "https://github.com/urbanadventurer/WhatWeb"}], "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:09:48.693652+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.693652+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.693652+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T17:42:05.615364+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "17ba2522ace6c93284522c27a34b53385c05191589637f9602bc330dcc59e703", "fetched_at": "2026-08-28T04:09:48.693652+00:00", "kind": "readme", "missing": false, "url": "https://github.com/urbanadventurer/WhatWeb"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.693652+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.693652+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T17:42:05.615364+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "17ba2522ace6c93284522c27a34b53385c05191589637f9602bc330dcc59e703", "fetched_at": "2026-08-28T04:09:48.693652+00:00", "kind": "readme", "missing": false, "url": "https://github.com/urbanadventurer/WhatWeb"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.693652+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.693652+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.693652+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T17:42:05.615364+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "17ba2522ace6c93284522c27a34b53385c05191589637f9602bc330dcc59e703", "fetched_at": "2026-08-28T04:09:48.693652+00:00", "kind": "readme", "missing": false, "url": "https://github.com/urbanadventurer/WhatWeb"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.693652+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:09:48.693652+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T17:42:05.615364+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "17ba2522ace6c93284522c27a34b53385c05191589637f9602bc330dcc59e703", "fetched_at": "2026-08-28T04:09:48.693652+00:00", "kind": "readme", "missing": false, "url": "https://github.com/urbanadventurer/WhatWeb"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T17:42:05.615364+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "17ba2522ace6c93284522c27a34b53385c05191589637f9602bc330dcc59e703", "fetched_at": "2026-08-28T04:09:48.693652+00:00", "kind": "readme", "missing": false, "url": "https://github.com/urbanadventurer/WhatWeb"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T17:42:05.615364+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "17ba2522ace6c93284522c27a34b53385c05191589637f9602bc330dcc59e703", "fetched_at": "2026-08-28T04:09:48.693652+00:00", "kind": "readme", "missing": false, "url": "https://github.com/urbanadventurer/WhatWeb"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T17:42:05.615364+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "17ba2522ace6c93284522c27a34b53385c05191589637f9602bc330dcc59e703", "fetched_at": "2026-08-28T04:09:48.693652+00:00", "kind": "readme", "missing": false, "url": "https://github.com/urbanadventurer/WhatWeb"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 75, "longevity": 100, "rhythm": 65}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 5816, "days_push": 153, "days_rel": 153, "gap_med": 53, "n_releases_24m": 4}, "score": 76, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}