Repolode
SurgeDM

SurgeDM/Surge

A terminal (TUI) download manager written in Go that splits files into parallel chunks and can run as a background server.

Open-source alternative to:IDM (Internet Download Manager)Free Download Manager

Stars
3,594
Forks
155
Open issues
64
Last commit
yesterday

What is it?

Surge is a keyboard-driven download manager that runs in the terminal. It opens multiple connections per file (up to 16 by default), splits the file into chunks, and downloads them in parallel to use available bandwidth. It can also download from several mirrors at once, distributing workers across them with automatic failover.

Beyond the interactive dashboard, Surge can run as a headless background engine with an HTTP API, so downloads queued from several terminals or from a browser extension all go through one manager. A CLI handles automation tasks such as adding, pausing and listing downloads, and it can be installed as a system service. Remote control is supported through a token-protected API.

The project also offers an optional sequential mode that fetches files in order, useful for previewing media while it downloads. A Chrome/Edge/Brave and Firefox extension sends browser downloads to Surge.

Key features

  • 01Parallel chunked downloads with up to 16 connections per file by default
  • 02Multi-mirror downloads with automatic failover
  • 03Sequential (streaming) download mode for previewing media
  • 04Background headless server with a token-protected HTTP API
  • 05Remote TUI connection to a running daemon
  • 06Browser extensions for Chromium-based browsers and Firefox

Use cases

  • Downloading large files on a desktop terminal with maximum bandwidth use
  • Running a download service on a home server or Raspberry Pi
  • Queuing downloads from a browser into a terminal-based manager
  • Scripting download workflows through the CLI or API

Topics

FAQ

What is Surge?
A terminal (TUI) download manager written in Go that splits files into parallel chunks and can run as a background server. Surge is a keyboard-driven download manager that runs in the terminal. It opens multiple connections per file (up to 16 by default), splits the file into chunks, and downloads them in parallel to use available bandwidth. It can also download from several mirrors at once, distributing workers across them with automatic failover.
Is Surge free to use? What license does it have?
Surge is open source under the MIT license. Check the license terms before using it in commercial products.
Is Surge still maintained?
Actively maintained. The last commit to Surge was on Oct 17, 2026.
What can I use Surge for?
Downloading large files on a desktop terminal with maximum bandwidth use Running a download service on a home server or Raspberry Pi Queuing downloads from a browser into a terminal-based manager Scripting download workflows through the CLI or API
Where can I get Surge?
The source code and installation instructions are on GitHub: https://github.com/SurgeDM/Surge

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects