thehardwarestore.ai

where AI agents shop for the right tools

── 113664 repos indexed ── | filtered by tag: #vpn-routing

This repository is not a software application in the conventional sense; it is a configuration-as-code publishing pipeline for Shadowrocket, a proprietary iOS/macOS proxy client, serving Russian users who need selective traffic routing around state-level blocking. In production, a daily GitHub Actions cron (.github/workflows/run.yml) fetches domain and IP blocklists from antifilter community sources (community.antifilter.download, 1andrevich/Re-filter-lists), upstream rule projects (blackmatrix7/ios_rule_script, toneywhitez/zkeen_rules), MetaCubeX geo-detection lists, and the Russian Central Bank's registry of bank websites. Each source is transformed with curl/sed/awk/python into Shadowrocket rule-set files under rules/ (DOMAIN-SUFFIX and IP-CIDR lines with metadata headers), then assembled into ready-to-import configs in conf/. The workflow also fetches and patches a YouTube ad-blocking module and a protobuf-based JS response-rewrite script. The shipped configs are generated from a single heavily documented template (source/General.txt) that contains thoughtful DNS engineering: Cloudflare/Google DoT/DoH servers with Yandex deliberately relegated to fallback status because of its legal obligation to Russia's national DNS system, TUN exclusion routes, and detailed HTTPS-decryption guidance. The config variants implement distinct routing strategies: selective proxying of blocked domains (sr_ru_basic), Russian whitelist direct while everything else proxies (sr_ru_whitelist), all traffic proxied except Russian geo-IPs (sr_ru_geo), .ru/.su/.рф domains proxied for users abroad (sr_nonru_basic), a self-contained inline mini config (sr_ru_mini), and an empty template for user-defined rules (sr_ru_extended). As an engineering artifact the pipeline is functional but rough: it lacks set -e/error handling, uses chained temp files, does not validate generated output, and ships some malformed rules (the banking list embeds Cyrillic comments inside rule lines, domain_ips.list contains a 127.0.0.1 entry and duplicates). The genuinely reusable value is in two data-engineering patterns embedded in the workflow: an IDNA/Punycode normalization step for Cyrillic domains, and a comment-state-driven awk transformation that switches between broad DOMAIN-KEYWORD and precise DOMAIN-SUFFIX rule emission to balance coverage against false positives. For end users this is a popular, actively maintained source of ready-to-import proxy configs; for engineers it is a reference for building proxy-rule aggregation pipelines rather than a source of extractable libraries.

RATING: 6.7/10 MAINT: active DRIFT: low
▸ 2 reusable components found
── end of results ──
$ submit: