{"adoption": {"forks": 181, "observed_at": "2026-08-28T04:05:10.849833+00:00", "stars": 1609}, "canonical_url": "https://ross.abutalabs.com/products/fapro", "card": {"archived": false, "artifact_type": "cli-tool", "description": "Fake Protocol Server", "domain": ["security", "networking", "simulation", "developer-tools"], "enriched": true, "function": ["simulation", "networking", "security", "logging"], "health_score": 30, "homepage": null, "language": "Python", "license": null, "license_family": "other", "maturity": "active", "member_repos": ["fofapro/fapro"], "name": "fofapro/fapro", "platform": ["cross-platform", "python", "windows"], "pushed_at": "2025-01-02T03:21:11+00:00", "repo": "fofapro/fapro", "stars": 1609, "tags": ["honeypot", "protocol-simulation", "fake-server", "deception", "ics-protocols", "network-services", "linux", "macos"], "topics": ["rdp", "ssh", "ftp", "protocols", "samba", "simulation", "rtsp", "mysql", "postgresql", "snmp", "imap", "smtp", "pop3", "elasticsearch", "tns", "oracle", "network", "mssql"], "urls": [], "use_cases": ["simulate fake ssh and rdp servers for honeypot detection", "run multiple fake network protocols on one machine", "log tcp syn, udp, and icmp traffic from scanners", "emulate ics/scada protocols like modbus, s7, and dnp3", "create a virtual network of fake services for security research", "deceive attackers with fake mysql and redis login interactions"], "what_it_is": "FaPro is a free, cross-platform, single-file mass network protocol server simulator written in Python. It can start or stop many fake network services (SSH, RDP, MySQL, SMB, and dozens more) with deep interaction support, useful for honeypots and network simulation.", "when_to_avoid": ["you need production-grade real protocol servers", "you require a maintained, licensed project for compliance-sensitive use", "you need a GUI-managed honeypot platform"], "when_to_choose": ["you need a honeypot or deception service supporting many protocols", "you want to simulate network services for testing detection tools", "you need cross-platform, single-file deployment of fake servers"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/fapro", "repo": "fofapro/fapro", "role": "main", "score": 23}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:05:10.849833+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T03:51:16.368840+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f56d5fb7ee953459b1e697a039d38d40af5647cbd8784060e859133df2dfbd40", "fetched_at": "2026-08-28T04:05:10.849833+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fofapro/fapro"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:05:10.849833+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T03:51:16.368840+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f56d5fb7ee953459b1e697a039d38d40af5647cbd8784060e859133df2dfbd40", "fetched_at": "2026-08-28T04:05:10.849833+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fofapro/fapro"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T03:51:16.368840+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f56d5fb7ee953459b1e697a039d38d40af5647cbd8784060e859133df2dfbd40", "fetched_at": "2026-08-28T04:05:10.849833+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fofapro/fapro"}], "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:05:10.849833+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:05:10.849833+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:05:10.849833+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T03:51:16.368840+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f56d5fb7ee953459b1e697a039d38d40af5647cbd8784060e859133df2dfbd40", "fetched_at": "2026-08-28T04:05:10.849833+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fofapro/fapro"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:05:10.849833+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:05:10.849833+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T03:51:16.368840+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f56d5fb7ee953459b1e697a039d38d40af5647cbd8784060e859133df2dfbd40", "fetched_at": "2026-08-28T04:05:10.849833+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fofapro/fapro"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:05:10.849833+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:05:10.849833+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:05:10.849833+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T03:51:16.368840+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f56d5fb7ee953459b1e697a039d38d40af5647cbd8784060e859133df2dfbd40", "fetched_at": "2026-08-28T04:05:10.849833+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fofapro/fapro"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:05:10.849833+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:05:10.849833+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T03:51:16.368840+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f56d5fb7ee953459b1e697a039d38d40af5647cbd8784060e859133df2dfbd40", "fetched_at": "2026-08-28T04:05:10.849833+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fofapro/fapro"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T03:51:16.368840+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f56d5fb7ee953459b1e697a039d38d40af5647cbd8784060e859133df2dfbd40", "fetched_at": "2026-08-28T04:05:10.849833+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fofapro/fapro"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T03:51:16.368840+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f56d5fb7ee953459b1e697a039d38d40af5647cbd8784060e859133df2dfbd40", "fetched_at": "2026-08-28T04:05:10.849833+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fofapro/fapro"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T03:51:16.368840+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "f56d5fb7ee953459b1e697a039d38d40af5647cbd8784060e859133df2dfbd40", "fetched_at": "2026-08-28T04:05:10.849833+00:00", "kind": "readme", "missing": false, "url": "https://github.com/fofapro/fapro"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 0, "longevity": 100, "rhythm": 8}, "computed_at": "2026-09-02T17:46:02.011165+00:00", "flags": ["no_license"], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 1818, "days_push": 608, "days_rel": 608, "gap_med": null, "n_releases_24m": 1}, "score": 23, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}