The repository is a data pipeline that generates Shadowrocket configuration files for selective traffic routing, particularly targeting users in Russia who need to bypass censorship while maintaining access to local services. It automates the collection, processing, and formatting of domain and IP lists from various sources into Shadowrocket-compatible rule sets and configuration files. The pipeline fetches data from diverse sources including GitHub repositories, websites (like the Central Bank of Russia), and manually curated lists. It then processes this data through a series of transformations: filtering, formatting, IDN conversion, section-based processing, and DNS resolution, to produce standardized output files that adhere to Shadowrocket's rule syntax. The processed data is used to generate configuration files that define which traffic should go through proxies and which should connect directly. Key reusable components within the pipeline include an IDN decoding script that properly handles internationalized domain names by detecting non-ASCII characters and converting to punycode while preserving original formatting, and a section-based list processor that applies different transformations to file segments based on markers. These components demonstrate non-obvious skill in handling specific data challenges and follow patterns that could be extracted for use in other data processing projects. The pipeline is executed on a daily schedule via GitHub Actions, ensuring the generated configuration files remain up-to-date with the latest domain and IP information from the source feeds. This automation allows users to benefit from continuously improved routing rules without manual intervention.
This repository is a comprehensive collection of proxy routing rule sets and configuration files for multiple proxy clients (Surge, Loon, Quantumult X, Stash, Shadowrocket, mihomo, sing-box, Egern). It provides pre-curated domain/IP lists for services (e.g., Netflix, Telegram, OpenAI), ad-blocking (e.g., Ads_AWAvenue, EasyListChina), and China network identification (e.g., ChinaASN with 5076 entries). The rules are duplicated across platforms with format adaptations, and the repository includes full client configuration templates and server deployment examples (e.g., sing-box Hysteria2, AnyTLS). A few Surge panel scripts (Peekabo, Aliyun ECS CDT, Lightsail) demonstrate self-contained HTTP API client patterns with HMAC signing and caching. While not a software application itself, the repository is a dependency for proxy clients and includes several reusable script components.
This is a curated content hub for Shadowrocket, an iOS network proxy app, hybrid in nature: its user-facing value is a Chinese-language README catalog of installable resources (original .sgmodule modules for ad-blocking, traffic-splitting policies for DeepSeek/Emby/Wi-Fi Calling, DNS overrides for CMCC IPTV; .list rule sets; a lazy configuration; 30+ original color themes encoded as shadowrocket://color URL schemes), while its only executable surface is a scheduled data-aggregation pipeline. The live GitHub Pages site referenced throughout the README (redirect.html, theme.html, images) is not present in this branch's file tree β only README.md, a generated modules.json, a CI workflow, and one build script are visible, so the repo-as-code is essentially an ETL job, not a runtime service. The functional core is scripts/build-modules.js, a dependency-free Node.js script executed by GitHub Actions every 6 hours. It parses the repo's own README for .sgmodule/.srmodule/.module URLs, enumerates module files from community repos (fmz200/wool_scripts, zirawell/R-Store) via the GitHub Trees API, probes each module's first 2KB using HTTP Range requests to extract #! metadata (name, description, icon), enriches entries with icons resolved from three icon libraries using Chinese/English app-alias matching, deduplicates and pins key tools (Script-Hub, Sub-Store, BoxJs), then writes modules.json β the feed consumed by the ShadowStore module directory (shadowstore.dpdns.org). External dependencies are GitHub API endpoints, raw.githubusercontent.com, and a GITHUB_TOKEN for API rate limits; there is no package.json or npm dependency graph. There are no unit tests and the script is tuned to Shadowrocket/Surge file formats, but it demonstrates transferable engineering patterns: github.com/blob to raw.githubusercontent.com URL normalization, partial-content fetch for cheap metadata extraction, 404/invalid-content detection, a bounded-concurrency worker pool with progress logging, and alias-based fuzzy icon resolution. Maintenance is genuinely active (automated syncs commit modules.json regularly; last commit 2026-09-04), and technical drift is low β Node 22 LTS, current GitHub Actions checkout/setup-node v5, modern JS syntax (global fetch, AbortController, nullish coalescing).
This repository generates rule sets (RULE-SET) for the Clash Premium proxy tool, specifically tailored for users in China. The core of the repo is a GitHub Actions workflow (run.yml) that daily fetches domain and IP lists from multiple upstream sources (e.g., v2ray-rules-dat, domain-list-custom, dnsmasq-china-list, geoip) and transforms them into Clash-compatible YAML payload files. The output rule sets categorize domains into direct, proxy, reject, private, Apple, Google, GFW, etc. The codebase itself is minimal (only CI configuration) and the actual data artifacts are stored in a separate 'release' branch. The repository acts as a data pipeline, not an application, with the workflow serving as the sole processing logic. The pipeline is straightforward but effective, relying on standard Unix tools (curl, grep, perl, sed) for data transformation.
This is a configuration-only repository for Shadowrocket, an iOS VPN/proxy application. It provides dozens of pre-built rule sets that control how network traffic is routed (direct vs. proxy) and includes ad-blocking rules compiled from multiple public sources such as GFWList, EasyList, and community-maintained domain lists. The repository does not contain any application code, libraries, or data processing pipelines; it is solely a collection of static `.conf` files. The build process that generates these configurations resides in a separate `build` branch (not included in the release branch), using Python scripts to merge and format rules daily via GitHub Actions. Users import these configuration files directly into Shadowrocket for automatic traffic splitting and ad filtering. The rules are continuously updated (daily cron) and include specialized modes like whitelist, blacklist, China-only, and lazy configurations with proxy groups for fine-grained control.
This repository provides curated rule lists for the Shadowrocket iOS proxy application, categorizing tens of thousands of domains and IP ranges into DIRECT (no proxy), PROXY (route through proxy), and REJECT (block) sets. The rules are distributed as Shadowrocket modules that can be loaded independently or combined to implement white-list or black-list routing strategies. The data is aggregated from multiple public sources including dnsmasq-china-list, v2fly domain list, gfwlist, adblock lists, and custom additions for services like TikTok, OpenAI, Telegram, and Google Gemini. The repository also includes a minimal configuration example and factory files that allow users to customize rule sets by appending or excluding specific entries before automated builds. There is no application code; the entire output is data files consumed by Shadowrocket. The repository relies on external CI (not visible in the file tree) to regenerate the modules daily.
This repository is a massive, curated collection of network proxy routing rules (εζ΅θ§ε) for multiple proxy tools including Surge, Loon, QuantumultX, Shadowrocket, Clash, Stash, and AdGuard. The rules are auto-generated by an internal 'RULE GENERATOR' from public data sources (e.g., LM-Firefly/Rules, ACL4SSR, kr328.app) and cover thousands of servicesβfrom streaming platforms and social media to banking and gaming. Each rule set is provided in multiple formats (`.list`, `.yaml`, `.sgmodule`, `.plugin`) and distributed via daily-updated master and irregular release branches with CDN mirrors. The repository also includes a smaller set of automation scripts (JavaScript) that run inside proxy clients, performing tasks such as ad removal, cookie harvesting, daily check-ins, and TestFlight beta joining. These scripts rely on a custom cross-platform framework called MagicJS, which abstracts the APIs of Surge, Loon, QuantumultX, and Node.js. While the primary character is data aggregation and transformation (rule generation), the presence of application-like automation scripts makes it a hybrid repository. The rule sets are the core deliverable and are widely used by the proxy tool community. The automation scripts are secondary but demonstrate non-trivial engineering for multi-account session management and persistent storage. The repository is actively maintained (last commit 2026-08-21, though some rule sets show stale timestamps from 2024) and has a large user base (27k stars). However, technical drift is medium due to reliance on external data sources, embedded library duplication, and lack of automated testing. Reproducibility is low because the rule generator is not publicly available, and the scripts require specific proxy tool environments and MITM setup.
This repository is a curated collection of proxy rule configurations for multiple proxy clients (Clash, Stash, Shadowrocket, Surge, Surfboard, QuantumultX, Egern). It provides pre-built rule sets for routing traffic for specific services (YouTube, Netflix, Disney+, Bilibili, TikTok, HoYoGames, etc.), ad blocking via MITM rewriting, DNS configuration, and various utility overrides (e.g., cron scripts for JD sign-in, Bilibili manga, Epic free games). The repository is essentially a personal configuration template set, with the actual logic and maintenance delegated to external upstream rule repositories (e.g., blackmatrix7/ios_rule_script, NobyDa, app2smile). The code (configs) is well-organized by tool and purpose, with clear Chinese comments. It demonstrates a thorough understanding of proxy tool capabilities, especially Stash's override system for advanced MITM rewriting and ad blocking. However, it is not a reusable software library or application; it is a static configuration archive. The primary value is for users of these proxy tools who want an out-of-the-box rule set with minimal customization.