huuhoa143 / proxy-farm
git clone https://github.com/huuhoa143/proxy-farm.git
v0.2.0 · 14d ago
Turn your own VPN subscription into local SOCKS5/HTTP proxy ports — one fixed exit IP per port. Desktop app for macOS and Windows, no Docker.
+0
stars, 24h · #38,741
+~0
stars, 7 days · #43,916
+75
stars, 30 days · #9,023
75
★ total
50
forks · 5 open issues
Star history (as recorded here)
LanguageTypeScript
LicenseMIT
Created2026-10-01 (22d ago)
Last push1d ago
Watchers0
OwnerUser
GitHub topics
Links
README excerpt
# Proxy Farm **English** · Tiếng Việt Proxy Farm is a desktop app that turns your own VPN subscription into many local SOCKS5/HTTP proxy ports. Each port is an independent tunnel pinned to one VPN server, so each port has its own stable exit IP. - **Runs on your computer.** No Docker, no VM, no admin rights, no terminal. Proxies listen on `127.0.0.1` by default. - **Bring your own subscription.** Proxy Farm does not sell or provide VPN access. - **No telemetry.** See PRIVACY.md for every network call the app makes. ## Contents - Features - Supported providers - Install - Quick start - How it works - Building from source - Support - Security - Privacy - Contributing - Legal notice - Disclaimer - License - v1 (Docker) ## Features - One port = one VPN server = one exit IP. A location with several servers can hold several ports, each with a different IP. - Every port serves **both SOCKS5 and HTTP** on the same port number, with a proxy username and password generated on first run. - **Change IP** moves a port to another free server of the same location and confirms the exit IP changed. Optional auto-rotate every N minutes. - **Sticky exit IPs.** A dropped port retries the same server first. It moves to another server only when that server is judged dead or refuses your account. - Live status per port (queued, connecting, verifying, online, retrying with a countdown and reason, failed with guidance), exit IP and country, latency. - Per-port test and optional speed test; per-port logs in the Details drawer, with secrets redacted. - Multiple accounts per provider; ports are spread across them. - Filter ports by status (alive, dead, connecting, stopped), provider, or a search over location, IP and port number; "Check all" checks the ports shown. - Bulk actions, and export in 5 formats: `host:port:user:pass`, `socks5://user:pass@host:port`, `host:port`, `curl`, CSV; copy or save to a file. - Optional rotate webhook (off by default): `POST /rotate/ ` with a Bearer key. - Tray icon, launch at login (opt-in), keep-awake while ports are on, stop on sleep and restart on wake. - English and Vietnamese UI, light and dark theme, in-app updates from GitHub Releases. ## Supported providers | Provider | Protocol | What you enter | Notes | |---|---|---|---| | **HMA** | OpenVPN | Nothing: the app reads the device credentials of the HMA app installed on the same computer | On Windows, click **Enable HMA support** once (one administrator prompt); see below. | | **ZoogVPN** | OpenVPN | Account email and password | Your plan decides which servers accept you; refused servers are skipped. | | **Surfshark** | WireGuard | Your WireGuard private key (Surfshark manual setup page) | The server list comes from Surfshark's public API. | | **NordVPN** | WireGuard (NordLynx) | An access token from Nord Account (NordVPN → Advanced settings → Get access token), or your NordLynx private key | The token is used once to fetch the key and is not kept. The server list comes from