MIT License

项目介绍

anmolkapil/plexo 是一个托管在 GitHub 上的开源项目,主要使用 TypeScript 编写,采用 MIT License 许可证,目前获得 5.6k 个 Star、405 次 Fork。

仓库全名
anmolkapil/plexo
开源许可证
MIT License
Star 数
5.6k
Fork 数
405
未关闭 Issue
67

README 摘要

Plexo Download files and torrents faster by combining all your internet connections. Plexo combines Wi-Fi, Ethernet, mobile networks, and other available connections to boost your download speeds. Download · Features · Troubleshooting · How it works · Build For anything private, email [email protected] https://github.com/user-attachments/assets/e57728f4-fb63-441f-839c-174eef954b17 Features Multi-network downloads…

完整内容见 GitHub 原始 README 或本页 。

常见问题

plexo 用什么语言开发?

主要使用 TypeScript 编写,采用 MIT License 许可证,目前有 5.6k 个 Star。

plexo 可以免费商用吗?

仓库采用 MIT License 许可证,可免费使用与修改,商业使用请遵守许可证条款(例如保留版权声明与许可声明)。

如何获取 plexo 的源码?

可以直接克隆仓库:git clone https://github.com/anmolkapil/plexo.git,默认分支为 main;安装与运行步骤见仓库 README。

plexo 最近还在维护吗?

仓库最近一次更新为 1 天前,当前有 67 个未关闭 Issue;Star 数为 5.6k,可作为社区活跃度的参考。

关于

GitHub 原始描述(英文)

Speed up downloads by combining multiple network connections in parallel

描述取自 GitHub 官方 API,保持仓库作者书写的原文。

语言占比

CSS
HTML
JavaScript
NSIS
TypeScript

Release

README

Plexo icon

Plexo

Download files and torrents faster by combining all your internet connections.
Plexo combines Wi-Fi, Ethernet, mobile networks, and other available connections to boost your download speeds.

Download · Features · Troubleshooting · How it works · Build

Latest release Downloads CI status macOS, Windows and Linux MIT license

Buy me a coffee on Ko-fi

For anything private, email [email protected]

anmolkapil%2Fplexo | Trendshift anmolkapil%2Fplexo | Trendshift anmolkapil%2Fplexo | Trendshift

https://github.com/user-attachments/assets/e57728f4-fb63-441f-839c-174eef954b17

Features

Multi-network downloads

  • Combine multiple internet connections for faster downloads
  • Enable or disable networks during a download
  • Rename networks and customize their colors
  • Download file chunks in parallel across connections
  • Balance chunks across connections, with faster networks handling more of the download
  • Automatically adjust parallel streams to network, server and disk performance
  • Race slow chunks on idle connections to avoid a slow finish
  • View live speeds, time remaining and per-network progress

Browser integration

  • Capture downloads or send individual links to Plexo
  • Download files using your browser’s authenticated session
  • Exclude websites and skip small files

Download management

  • Download direct links, magnet links, .torrent files and Usenet NZBs
  • Select torrent files before or during a download
  • Pause and resume supported downloads across restarts
  • Automatically reconnect downloads after sleep
  • Replace expired links without losing progress
  • Queue downloads and configure concurrent downloads
  • Pause, resume, retry or remove downloads in bulk

Bandwidth controls

  • Set global and per-network speed limits
  • Switch to Slow mode for calls and streaming
  • Set daily, weekly or monthly data allowances
  • Schedule downloads by time and day

Troubleshooting

If your problem isn’t covered here, open an issue.

Windows says "Windows protected your PC"

The installer isn’t code-signed yet. Click More info, then Run anyway.

A second network doesn't make downloads faster

Plexo adds speed only when each network reaches the internet through its own connection. Wi-Fi from your home router plus a phone tethered over USB works. Wi-Fi and Ethernet plugged into the same router doesn’t: both share one connection, so the total stays the same.

VPN, virtual, and isolated adapters show up in Plexo too, so check each network’s latency and speed there.

A network doesn't appear in Plexo

Plexo can use any connection your operating system shows as a network adapter.

  • iPhone on macOS: in System Settings › Network, open iPhone USB and turn off Disable unless needed
  • Android on macOS: install TetherKit, as described below
  • Phone on Windows: install your phone maker’s driver if the phone doesn’t appear in Network Settings
Windows uses only one network

If Windows turns Wi-Fi off when Ethernet is plugged in, open the Group Policy Editor (gpedit.msc), go to Computer Configuration › Administrative Templates › Network › Windows Connection Manager, and set Minimize the number of simultaneous connections to the Internet or a Windows domain to Disabled.

If both stay connected but one sits idle in Plexo, Windows may be sending its traffic out the other network. Add your setup to #65.

A network stays idle after reconnecting a phone

Pause the download, then resume it.

Downloads to a hard drive are slow

Leave Streams on Auto in New download. Auto lowers the streams when the disk can’t keep up; a fixed number doesn’t.

Use an Android phone over USB on macOS

macOS has no driver for RNDIS, the protocol Android’s USB tethering uses, so the phone charges but no network adapter appears. TetherKit is an open-source app that adds one without a kernel extension.

  1. Install TetherKit: brew install XiaoMiku01/tap/tetherkit
  2. Connect your phone over USB.
  3. On the phone, open Settings › Network & internet › Hotspot & tethering and turn on USB tethering.
  4. Open TetherKit. On first run, approve its helper with your password.
  5. Pick your phone, click Connect, then apply the IP settings.
  6. Open Plexo. The phone appears in the networks list.

Thanks to @XiaoMiku01 for building and open-sourcing TetherKit.

How it works

Plexo downloads different parts of the same file through each internet connection you select, then assembles them on disk.

For direct downloads, Plexo uses HTTP range requests to fetch chunks in parallel. Streams take new chunks from a shared queue as they finish, so faster connections handle more of the file. Plexo adjusts stream counts to network, server and disk performance. Near the end, idle streams can race slow chunks; the first to finish wins. Servers without range support use a single stream.

For torrents, Plexo distributes peer connections across your selected networks. New peers connect through the network with the fewest peers.

For Usenet NZBs, Plexo shares your news server account’s connections evenly across your selected networks. Each article is decoded and written straight to its place in its file; articles the server no longer has are left as gaps. Plexo doesn’t repair or unpack downloads.

Each network needs its own internet connection to add bandwidth. Plexo combines connections for its own downloads and requires no VPN or virtual network adapter.

Build from source

You need Node.js 22.13 or later and npm 9 or later.

git clone https://github.com/anmolkapil/plexo.git
cd plexo
npm ci
npm run dev
Command What it does
npm run test:e2e:smoke Playwright smoke tests
npm run test:e2e The full end-to-end suite
npm run build:mac Creates macOS packages in dist/
npm run build:win Creates the Windows installer in dist/
npm run build:unpack Creates an unpacked app for the current platform in dist/
npm run build:linux Creates AppImage, .deb, .rpm and .tar.gz in dist/
npm run build:extension Builds the Chrome and Firefox extensions in extension/dist/

Run platform packaging commands on the corresponding operating system. Local builds are unsigned unless signing credentials are configured. CONTRIBUTING.md covers packaging requirements, extension setup and testing.

Contributing

Start with open issues, or contribute a reproducible bug report, a fix, network compatibility testing or documentation improvements.

See CONTRIBUTING.md for setup, required checks and pull request guidance. For a substantial feature, open an issue to discuss the approach before implementing it.

Acknowledgements

Special thanks to Dhananjay Bhosale for code signing and notarizing the macOS app.

License

MIT, copyright 2026 Anmol Kapil.

评论

暂无评论