DEV Community

Sidharat Sami
Sidharat Sami

Posted on

I Built a Bandwidth Bonding Download Manager That Combines WiFi + Ethernet + LTE — Here's How I Finally Shipped It

GitHub “Finish-Up-A-Thon” Challenge Submission

This is a submission for the GitHub Finish-Up-A-Thon
Challenge

What I Built

Burst — a Windows desktop app that bonds multiple network interfaces (WiFi + Ethernet + LTE) into a single high-speed download stream.

The idea came from a very real frustration: at university, there are multiple WiFi networks everywhere, but your OS forces you to pick just one. So even if three networks are available, you're stuck using 10 Mbps instead of 30. I wanted to use all of them at once.

Burst splits files into chunks and binds each chunk to a different network interface at the socket level — no VPN, no VPS, no router-level setup. Just install and go. On a 3-interface setup (WiFi + Ethernet + LTE), you can realistically hit 2–3x your single-connection speed.

GitHub: SidhartSami/Burst

Demo
🔗 Download Burst v1.2.1

🎬 Main Demo — Side-by-side speed comparison

🧲 Torrent/Magnet — Ubuntu download via Burst

💻 burst-cli in action

Key things to see in the demo:

  • Bandwidth bonding with multiple interfaces active simultaneously
  • Browser extension intercepting a magnet link and routing it through Burst (Video 2)
  • System tray running silently on boot
  • burst-cli routing a pip install through the bonding engine

The Comeback Story

I originally built Burst as a personal side project — scratching my own itch as a student tired of slow downloads on a single campus WiFi. I shipped a basic version, posted it on Product Hunt and LinkedIn, got a little traction (40 likes, a few curious DMs), and then university exams hit and the project got shelved.

The core worked — bandwidth bonding, chunked downloads, a basic UI — but it was rough. No installer, no easy way for anyone else to actually run it, and no way to use it without opening the app first.

After exams I came back and properly finished it. Here's what changed:

v1.2.1 — what got finished:

  • 🌐 Browser Extension — right-click any link in Chrome or Edge → "Download with Burst." Native messaging connects it to the desktop app seamlessly
  • 💻 burst-cli — burst-cli pip install torch routes Python package downloads through the bonding engine. No admin prompt, no terminal setup
  • 🖥️ System Tray + Autostart — Burst now runs silently on boot. The extension works without ever opening the app manually
  • 📦 One-Click Installer — proper Inno Setup .exe installer with automated Windows Firewall rule setup. "Next-Next-Finish" and you're done
  • 🧲 Torrent Support — magnet links distributed across all bonded interfaces via libtorrent
  • ⚡ Boost Mode — 3 workers per interface for any download you want to prioritize

The project went from "works on my machine" to something anyone can install and actually use.

My Experience with GitHub Copilot
One of the trickiest early problems with Burst was the core architecture question: how do you actually force different network traffic through different interfaces at the OS level?

My initial idea was to connect to multiple WiFi networks simultaneously — but that's a hardware limitation. Most devices have one WiFi chip. Copilot helped me think through the actual solution: modern machines already have separate hardware for each interface — WiFi, Ethernet, and LTE are physically distinct. Instead of trying to bond at the network level, Burst could bind individual sockets to specific network interfaces using their IP addresses, then distribute download chunks across those sockets. That reframe was the foundation the entire engine is built on.

Copilot also helped throughout the extension development — particularly with the native messaging protocol between the Chrome extension and the Python backend, which has some fiddly JSON framing requirements that are easy to get wrong.

Top comments (0)