{"adoption": {"forks": 509, "observed_at": "2026-08-28T04:07:23.930250+00:00", "stars": 2820}, "canonical_url": "https://ross.abutalabs.com/products/eycorsican-leaf", "card": {"archived": false, "artifact_type": "framework", "description": "A versatile and efficient proxy framework.", "domain": ["networking", "privacy", "security", "cross-platform"], "enriched": true, "function": ["proxy", "networking", "security", "privacy"], "health_score": 90, "homepage": null, "language": "Rust", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["eycorsican/leaf"], "name": "eycorsican/leaf", "platform": ["windows", "rust", "cli"], "pushed_at": "2026-06-18T05:29:10+00:00", "repo": "eycorsican/leaf", "stars": 2820, "tags": ["shadowsocks", "trojan", "vmess", "vless", "tun", "transparent-proxy", "proxy-chaining", "quic", "websocket-transport", "multiplexing", "linux", "macos", "android", "ios"], "topics": [], "urls": [], "use_cases": ["build a custom proxy client in Rust", "run a transparent VPN-like proxy on mobile or desktop", "set up Shadowsocks or Trojan tunnels with TLS and WebSocket", "chain multiple proxies with failover and health checks", "aggregate bandwidth across multiple links with multi-path transport", "embed proxy functionality into an iOS or Android app"], "what_it_is": "Leaf is a versatile and efficient proxy framework written in Rust, supporting multiple proxy protocols such as Shadowsocks, Trojan, VMess, Vless, and SOCKS5. It provides transparent proxying via TUN and NetFilter, transports like WebSocket, TLS, and QUIC, plus traffic control features like proxy chaining and failover.", "when_to_avoid": ["you only need a simple ready-made proxy client with a GUI", "you require inbound VMess/Vless support, which is not implemented", "you need TPROXY-based transparent proxying on Linux today, as it is not yet supported"], "when_to_choose": ["you need a Rust-based, embeddable proxy framework across many platforms", "you want modern transports like QUIC, Reality, or multiplexing", "you need transparent proxying via TUN on Linux, macOS, Windows, iOS, or Android"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/eycorsican-leaf", "repo": "eycorsican/leaf", "role": "main", "score": 85}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:07:23.930250+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T07:38:19.897736+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8349e78b404cafd2415db08657c5d321f425c034f0099aec1e5bb40d17a9720e", "fetched_at": "2026-08-28T04:07:23.930250+00:00", "kind": "readme", "missing": false, "url": "https://github.com/eycorsican/leaf"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:07:23.930250+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T07:38:19.897736+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8349e78b404cafd2415db08657c5d321f425c034f0099aec1e5bb40d17a9720e", "fetched_at": "2026-08-28T04:07:23.930250+00:00", "kind": "readme", "missing": false, "url": "https://github.com/eycorsican/leaf"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T07:38:19.897736+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8349e78b404cafd2415db08657c5d321f425c034f0099aec1e5bb40d17a9720e", "fetched_at": "2026-08-28T04:07:23.930250+00:00", "kind": "readme", "missing": false, "url": "https://github.com/eycorsican/leaf"}], "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:07:23.930250+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:07:23.930250+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:07:23.930250+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T07:38:19.897736+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8349e78b404cafd2415db08657c5d321f425c034f0099aec1e5bb40d17a9720e", "fetched_at": "2026-08-28T04:07:23.930250+00:00", "kind": "readme", "missing": false, "url": "https://github.com/eycorsican/leaf"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:07:23.930250+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:07:23.930250+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T07:38:19.897736+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8349e78b404cafd2415db08657c5d321f425c034f0099aec1e5bb40d17a9720e", "fetched_at": "2026-08-28T04:07:23.930250+00:00", "kind": "readme", "missing": false, "url": "https://github.com/eycorsican/leaf"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:07:23.930250+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:07:23.930250+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:07:23.930250+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T07:38:19.897736+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8349e78b404cafd2415db08657c5d321f425c034f0099aec1e5bb40d17a9720e", "fetched_at": "2026-08-28T04:07:23.930250+00:00", "kind": "readme", "missing": false, "url": "https://github.com/eycorsican/leaf"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:07:23.930250+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:07:23.930250+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T07:38:19.897736+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8349e78b404cafd2415db08657c5d321f425c034f0099aec1e5bb40d17a9720e", "fetched_at": "2026-08-28T04:07:23.930250+00:00", "kind": "readme", "missing": false, "url": "https://github.com/eycorsican/leaf"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T07:38:19.897736+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8349e78b404cafd2415db08657c5d321f425c034f0099aec1e5bb40d17a9720e", "fetched_at": "2026-08-28T04:07:23.930250+00:00", "kind": "readme", "missing": false, "url": "https://github.com/eycorsican/leaf"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T07:38:19.897736+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8349e78b404cafd2415db08657c5d321f425c034f0099aec1e5bb40d17a9720e", "fetched_at": "2026-08-28T04:07:23.930250+00:00", "kind": "readme", "missing": false, "url": "https://github.com/eycorsican/leaf"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T07:38:19.897736+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "8349e78b404cafd2415db08657c5d321f425c034f0099aec1e5bb40d17a9720e", "fetched_at": "2026-08-28T04:07:23.930250+00:00", "kind": "readme", "missing": false, "url": "https://github.com/eycorsican/leaf"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 88, "longevity": 100, "rhythm": 72}, "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": 2166, "days_push": 76, "days_rel": 189, "gap_med": 9.0, "n_releases_24m": 5}, "score": 85, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}