explaingit

abolix/xplex

20GoAudience · ops devopsComplexity · 3/5LicenseSetup · hard

TLDR

A Go tool that keeps your internet connection alive by sending traffic through several VPN-style tunnels at once, so if one path drops the others continue without any interruption to your application.

Mindmap

mindmap
  root((xplex))
    What it does
      Multi-path tunneling
      Connection redundancy
      Local SOCKS5 proxy
    Tech Stack
      Go
      xray proxy
      ChaCha20-Poly1305 encryption
      MIT license
    Use Cases
      Crypto mining uptime
      Stable video calls
      Trading app resilience
      Remote work reliability
    Setup
      VPS server required
      xray share links file
      Shared secret key
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Keep a cryptocurrency mining connection alive by routing it through several tunnels so a single dropped path does not interrupt earnings.

USE CASE 2

Make video calls or trading app sessions resilient to network drops by pointing them at a local SOCKS5 proxy backed by multiple parallel tunnels.

USE CASE 3

Replace a single-tunnel VPN with multi-path routing to eliminate dropped-connection events during remote work or live streaming.

Tech stack

GoxraySOCKS5ChaCha20-Poly1305

Getting it running

Difficulty · hard Time to first run · 1h+

Requires a VPS to run the XPlex server and existing xray share links for the tunnel connections, pre-built binaries available for Linux, Windows, macOS, FreeBSD, and OpenBSD.

Use freely for any purpose, including commercial use, as long as you keep the copyright notice.

In plain English

XPlex is a tool that keeps your internet connection alive by routing your traffic through multiple VPN-style tunnels at the same time. Instead of relying on a single connection, it sends every piece of data across several parallel paths simultaneously. Whichever path delivers the data first wins, the duplicates are discarded. If one path goes down mid-session, the others keep flowing without your application ever noticing a drop. The tool is built on top of xray, an existing proxy software used for tunneling internet traffic. XPlex sits in front of xray and manages a pool of xray connections, then exposes a single local SOCKS5 proxy port that any application can connect to. You point your browser, mining software, or trading app at that local port, and XPlex handles the multi-path routing transparently. The trade-off is bandwidth: because every byte is duplicated across N tunnels, you consume roughly two to three times as much data as you would with a single connection. The README lists crypto mining, video calls, trading, and remote work as the target use cases, specifically situations where a dropped connection has a real cost. To reduce waste when connections are stable, XPlex has an adaptive controller that can downgrade slower tunnels to a receive-only mode, cutting duplication until conditions change. All traffic between the XPlex client and server is encrypted with ChaCha20-Poly1305, a modern encryption scheme. This means xray tunnel operators cannot read or alter your data. Setting it up requires running an XPlex server on a VPS you control, placing your xray share links in a text file on the client side, and generating a shared secret key. Pre-built binaries are available for Linux, Windows, macOS, FreeBSD, and OpenBSD across a wide range of processor types. The license is MIT.

Copy-paste prompts

Prompt 1
I have an XPlex server running on my VPS and my xray share links saved in a text file locally. Walk me through generating a shared secret key, starting the XPlex client, and pointing my browser at the SOCKS5 proxy port.
Prompt 2
How does XPlex's adaptive controller decide to put a slow tunnel into receive-only mode, and how does it recover that tunnel when the connection improves?
Prompt 3
I want to route my trading app through XPlex to prevent dropped connections. How do I configure the app to use the local SOCKS5 proxy that XPlex exposes?
Prompt 4
With three tunnels active in XPlex, how much extra bandwidth will I use compared to a single VPN connection, and can I reduce the duplication when connections are stable?
Open on GitHub → Explain another repo

← abolix on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.