The fanqiang repository is a maintained index of proxy clients, not the clients themselves
翻墙/科学上网、翻墙工具汇总、科学上网客户端大全
At a glance
- What is it?
- free-nodes/fanqiang is a Chinese language index of circumvention clients for Windows, Android, iOS and macOS, with a table per platform giving the client name, its latest version, an official download address, a configuration guide and an update date, plus a shell script and a docs folder. It suits a reader looking for a current official download link for a client, and it is a curated link list that changes as often as the clients it points at.
- Who is it for?
- The fanqiang repository fits a reader who knows which client family they want and needs the current official download address and the configuration guide that goes with it, because the repository's value is that it is updated as the clients move. It does not fit a developer looking for a library to depend on, because there is no package to install and no API, and it does not fit a reader who needs an offline reference, because the tables are only as good as their last update.
- Can I use it commercially?
- Not without permission. GitHub finds no licence file in the repository, and without a licence all rights are reserved by default: you may read the code but not reuse it. Check the README, or ask the authors, before using it.
- Is it still maintained?
- Yes. The repository last received commits 23 days ago.
- What is it written in?
- Mainly Shell, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on October 23, 2026, and from our analysis. They are not legal advice.
Editorial analysis
A documentation repository with no code to install
The fanqiang repository is described in its own project summary as a collection of circumvention tools and clients across platforms, and the primary language of the repository is recorded as Shell. The top level of the tree makes the shape obvious: a .gitignore, a README.md, an assets/ directory, a docs/ directory and a single script called zpush.sh.
There is no package manifest, no build configuration and no library. The README is the product, and it is a set of tables, one per platform, each row being a client.
The structure of a row is consistent across the tables, and it is the useful part. Each entry carries an icon, the client name, a latest version, a download address, a configuration tutorial link and an update date. The version and the update date are both rendered as small image badges, which means the page is regenerated from a script rather than edited by hand, and that the update date is the maintainer's own record of when the row was last checked.
The assets/ directory holds the icons and the version badges, and the docs/ directory holds the configuration guides that the tables link to for the clients that have a local guide rather than an external one. The zpush.sh script is the publishing mechanism that pushes the current state of the page.
So the question this repository answers is narrow and practical: where do I download the current version of a specific client, from the source the client's own project publishes it, and where is the guide that shows me how to configure it.
The rule about downloading from official sources
The most consequential sentence in the documentation is a warning about where not to get the software.
The recommendation is to obtain the needed clients from the official source. The reason given is specific: to avoid third-party storage downloads of the clients being modified or having a virus implanted in them.
That is a real risk in this particular category of software, and it is a risk the index is designed to mitigate. Every download address in the Windows table points at a GitHub releases page for the client's own project, with V2rayN pointing at the 2dust repository, sing-box at SagerNet, Clash Verge Rev at the clash-verge-rev organisation, Hiddify at the hiddify-app repository, Mihome Party at the mihomo-party-org organisation, Netch at netchx, Qv2ray at the Qv2ray organisation, WinXray at TheMRLL, and Clash for Windows at the clashbk repository. The Android table follows the same pattern with v2rayNG, sing-box, NekoBox, Surfboard, Hiddify, ShadowsocksR and Clash for Android all pointing at their own projects' release pages.
The reason the guidance exists is also structural. A proxy client is a program that reads a configuration file, connects to a server you did not choose and routes your traffic through it. A modified copy of that program is not a nuisance, it is a full compromise of everything you send through it, and the configuration file it reads is where the credentials for the service live.
The index also recommends adding the page to your bookmarks if you like trying new tools, and notes that it only includes tools the author is still updating and maintaining.
What each platform table tells you before you download
The Windows table is the fullest one in the documentation, with nine clients listed: V2rayN, sing-box, Clash Verge Rev, Hiddify, Mihome Party, Netch, Qv2ray, WinXray and Clash.
Two details in that table are worth noticing. The Clash row is marked differently from the others, with a badge that reads as discontinued, and its download address is pinned to a specific tagged release rather than a moving latest link, at tag 0.20.39 of the clash_for_windows releases. A pinned address and a discontinued marker together tell you the row is kept for people who still run that client, not for new installs.
The Android table has seven rows: v2rayNG, sing-box, NekoBox, Surfboard, Hiddify, ShadowsocksR and Clash, and again the Clash row carries the discontinued marker with its address pinned at tag 2.5.12 of the clash_for_android releases.
Not every row has a local configuration guide. Where the guide lives in this repository, the link points at a file under docs/, as with the Qv2ray and WinXray rows and the Android rows for v2rayNG, sing-box, Surfboard, Hiddify and ShadowsocksR. Where the guide is hosted elsewhere, the link points out to a wiki, which is the case for the V2rayN, Clash Verge Rev, Hiddify and Mihome Party rows in the Windows table.
The version badges are generated assets rather than text, so a client that has stopped shipping a release simply stops changing. The update date column is the honest signal of whether a row is still current.
iOS is a different proposition entirely
The iOS table comes with a paragraph of caveats that do not apply to the other platforms.
The note says that iOS clients are all paid software, shown with prices in US dollars, and that they need to be downloaded from the US region of the App Store with a US Apple ID, and that you can use a purchasing service or register and buy it yourself.
That constraint is the reason the iOS table looks different from the others. There is no GitHub releases page to send people to, and no free download, and the price is part of the entry rather than an afterthought.
The Android and Windows tables have no equivalent note, because on those platforms the clients are free and the download is a direct link. So the same kind of question, which client should I use, has a completely different answer depending on which platform you are on.
The macOS client table does not appear in the visible portion of the documentation, even though the platform is named in the headings. The README also carries a section of airport recommendations with traffic allowances, monthly prices and discount codes for streaming and AI services, which is the one part of the page that is promotional rather than a link index.
The publishing loop, and what the repository does not contain
The repository layout suggests a small generator rather than a hand maintained page.
The script at the root, zpush.sh, is the piece that pushes the current state of the page, the badges in assets/ are the version markers and the update dates, and the docs/ directory holds the guides the tables link to. The .github/ directory is where the automation for regenerating that state would live.
The last push was on 2026-09-30 and the repository is not archived, and there are no GitHub releases, which is consistent with a repository whose releases are the linked clients rather than anything of its own.
What is not here is worth stating plainly. There is no code that implements a proxy, no protocol implementation, no configuration generator and no test suite. The value of the index is entirely in the accuracy and the currency of its links and dates, which means it inherits the fragility of everything it points at: a client project that changes its repository name, a guide that moves, or a project that stops shipping releases will leave a row that looks current but is not.
The documentation is also careful about scope in one respect and silent in others. It says the page only lists tools the author is still updating and maintaining, which is a real filter. It does not describe how the update dates are verified, whether the configuration guides are reviewed, or what happens to a row when a client is abandoned, and the licence is not one GitHub can classify from the metadata.
Why this is a link list and not a distribution channel
The obvious alternative to this repository is to pick a client project and use its own release page. The difference in approach is worth being concrete about.
A client project's releases page gives you the newest artefact and nothing else: no comparison with the alternatives, no indication of which one is still maintained on each platform, no configuration guide unless the project ships one, and no signal about which clients have a discontinued upstream such as the Clash for Windows row that still appears here with a pinned tag.
What the index adds is the cross product. One page tells you, per platform, which clients exist, which are still being updated, where the official download is, and where the setup instructions live. For someone setting up a device for the first time, that comparison is the whole value, and doing it by hand means opening nine project pages and judging dates yourself.
What it costs is a layer of indirection and the risk that indirection brings. A reader who installs from a link in a table is trusting the table's editor as well as the client project, and the table's editor is a person. The documentation's own warning about third-party storage is the recognition of that, and the sensible response is to treat the table as a map and follow every link through to the client's own release page before you download anything, which costs one extra click and removes the part of the risk the index cannot control.
Editorial conclusion
The fanqiang repository fits a reader who knows which client family they want and needs the current official download address and the configuration guide that goes with it, because the repository's value is that it is updated as the clients move. It does not fit a developer looking for a library to depend on, because there is no package to install and no API, and it does not fit a reader who needs an offline reference, because the tables are only as good as their last update. Before relying on it, follow the download address through to the client project's own releases page rather than installing from any third-party mirror, and check the update date column, since the documentation states that only tools the author is still maintaining are listed.
Frequently asked questions
What does the fanqiang repository contain?
It is an index of circumvention clients for Windows, Android, iOS and macOS, laid out as a table per platform with the client name, latest version, official download address, configuration guide link and update date, plus a docs folder of local guides, an assets folder of icons and badges and a zpush.sh script that publishes the page.
Why does the fanqiang documentation recommend official download addresses?
So that clients downloaded from third-party storage are not modified or have a virus implanted in them. Every download link in the Windows and Android tables points at the client's own project release page on GitHub.
Which clients does the fanqiang list mark as discontinued?
The Clash entries in the Windows and Android tables are marked as discontinued, and their download addresses are pinned to specific tagged releases, 0.20.39 for Clash for Windows and 2.5.12 for Clash for Android, rather than to a moving latest link.
Is there anything unusual about installing iOS clients from the fanqiang list?
Yes. The documentation notes that iOS clients are all paid software with prices in US dollars, and that they must be downloaded from the US region of the App Store using a US Apple ID, either through a purchasing service or by registering and buying directly.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/free-nodes-fanqiang)Was this useful?