{"adoption": {"forks": 2207, "observed_at": "2026-08-28T04:11:52.711309+00:00", "stars": 28587}, "canonical_url": "https://ross.abutalabs.com/products/goodbyedpi", "card": {"archived": false, "artifact_type": "cli-tool", "description": "GoodbyeDPI — Deep Packet Inspection circumvention utility (for Windows)", "domain": ["censorship-circumvention", "networking", "privacy", "security"], "enriched": true, "function": ["security", "networking", "proxy"], "health_score": 67, "homepage": "https://ntc.party/c/community-software/goodbyedpi", "language": "C", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["ValdikSS/GoodbyeDPI"], "name": "ValdikSS/GoodbyeDPI", "platform": ["windows", "cli"], "pushed_at": "2026-01-19T12:59:23+00:00", "repo": "ValdikSS/GoodbyeDPI", "stars": 28587, "tags": ["dpi-bypass", "anticensorship", "packet-manipulation", "dns-redirection", "http-fragmentation"], "topics": ["dpi", "deep-packet-inspection", "censorship-circumvention", "anticensorship"], "urls": [], "use_cases": ["bypass ISP website blocking caused by DPI", "circumvent deep packet inspection censorship on Windows", "prevent DNS poisoning by redirecting DNS queries", "unblock sites blocked via TLS SNI filtering", "apply circumvention tricks only to blacklisted hostnames"], "what_it_is": "GoodbyeDPI is a Windows command-line utility that bypasses Deep Packet Inspection (DPI) systems used by ISPs to block websites. It manipulates HTTP and TLS traffic (header tricks, fragmentation) and redirects DNS to evade both passive and active DPI.", "when_to_avoid": ["you need a full VPN or encrypted tunnel rather than targeted DPI evasion", "you run Linux, macOS, or mobile - this tool is Windows-only", "your network blocks traffic by IP or port rather than DPI, since these tricks won't help"], "when_to_choose": ["you are on Windows 7-11 and your ISP uses DPI to block access to websites", "you want a lightweight, no-install utility that runs from the command line", "you need DNS redirection to avoid DNS poisoning alongside DPI evasion"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/goodbyedpi", "repo": "ValdikSS/GoodbyeDPI", "role": "main", "score": 62}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:11:52.711309+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-29T16:54:21.421218+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9ce13a5a2cae2161599157f5a6adf1210e99541bed8b8477945b9dae10a5cd25", "fetched_at": "2026-08-28T04:11:52.711309+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ValdikSS/GoodbyeDPI"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:11:52.711309+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-29T16:54:21.421218+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9ce13a5a2cae2161599157f5a6adf1210e99541bed8b8477945b9dae10a5cd25", "fetched_at": "2026-08-28T04:11:52.711309+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ValdikSS/GoodbyeDPI"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-29T16:54:21.421218+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9ce13a5a2cae2161599157f5a6adf1210e99541bed8b8477945b9dae10a5cd25", "fetched_at": "2026-08-28T04:11:52.711309+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ValdikSS/GoodbyeDPI"}], "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:11:52.711309+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:11:52.711309+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:11:52.711309+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-29T16:54:21.421218+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9ce13a5a2cae2161599157f5a6adf1210e99541bed8b8477945b9dae10a5cd25", "fetched_at": "2026-08-28T04:11:52.711309+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ValdikSS/GoodbyeDPI"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:11:52.711309+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:11:52.711309+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-29T16:54:21.421218+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9ce13a5a2cae2161599157f5a6adf1210e99541bed8b8477945b9dae10a5cd25", "fetched_at": "2026-08-28T04:11:52.711309+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ValdikSS/GoodbyeDPI"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:11:52.711309+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:11:52.711309+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:11:52.711309+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-29T16:54:21.421218+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9ce13a5a2cae2161599157f5a6adf1210e99541bed8b8477945b9dae10a5cd25", "fetched_at": "2026-08-28T04:11:52.711309+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ValdikSS/GoodbyeDPI"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:11:52.711309+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:11:52.711309+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-29T16:54:21.421218+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9ce13a5a2cae2161599157f5a6adf1210e99541bed8b8477945b9dae10a5cd25", "fetched_at": "2026-08-28T04:11:52.711309+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ValdikSS/GoodbyeDPI"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-29T16:54:21.421218+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9ce13a5a2cae2161599157f5a6adf1210e99541bed8b8477945b9dae10a5cd25", "fetched_at": "2026-08-28T04:11:52.711309+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ValdikSS/GoodbyeDPI"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-29T16:54:21.421218+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9ce13a5a2cae2161599157f5a6adf1210e99541bed8b8477945b9dae10a5cd25", "fetched_at": "2026-08-28T04:11:52.711309+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ValdikSS/GoodbyeDPI"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-29T16:54:21.421218+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "9ce13a5a2cae2161599157f5a6adf1210e99541bed8b8477945b9dae10a5cd25", "fetched_at": "2026-08-28T04:11:52.711309+00:00", "kind": "readme", "missing": false, "url": "https://github.com/ValdikSS/GoodbyeDPI"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 63, "longevity": 100, "rhythm": 40}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": ["prerelease_only"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 3396, "days_push": 226, "days_rel": 718, "gap_med": 0, "n_releases_24m": 2}, "score": 62, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}