[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-73251":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":22,"archived":23,"fork":23,"defaultBranch":24,"hasWiki":25,"hasPages":23,"topics":26,"createdAt":10,"pushedAt":10,"updatedAt":36,"readmeContent":37,"aiSummary":38,"trendingCount":16,"starSnapshotCount":16,"syncStatus":39,"lastSyncTime":40,"discoverSource":41},73251,"Surge","SurgeDM\u002FSurge","SurgeDM","Blazing fast TUI download manager built in Go for power users","https:\u002F\u002Fsurgedm.github.io",null,"Go",3218,131,12,50,0,16,34,194,48,105.36,"MIT License",false,"main",true,[27,28,29,30,31,32,33,34,35],"cli","download-manager","downloader","go","golang","hacktoberfest","poweruser","terminal","tui","2026-06-12 04:01:08","\u003Cdiv align=\"center\">\n\n# Surge\n\n**Blazing fast TUI download manager built in Go for power users**\n\n[![Ask DeepWiki](https:\u002F\u002Fdeepwiki.com\u002Fbadge.svg)](https:\u002F\u002Fdeepwiki.com\u002FSurgeDM\u002FSurge)\n[![Release](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fv\u002Frelease\u002FSurgeDM\u002FSurge?style=flat-square&color=blue)](https:\u002F\u002Fgithub.com\u002FSurgeDM\u002FSurge\u002Freleases)\n[![Go Version](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fgo-mod\u002Fgo-version\u002FSurgeDM\u002FSurge?style=flat-square&color=cyan)](go.mod)\n[![License](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FLicense-MIT-grey.svg?style=flat-square)](LICENSE)\n[![BuyMeACoffee](https:\u002F\u002Fraw.githubusercontent.com\u002Fpachadotdev\u002Fbuymeacoffee-badges\u002Fmain\u002Fbmc-violet.svg)](https:\u002F\u002Fwww.buymeacoffee.com\u002Fsurge.downloader)\n[![Stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002FSurgeDM\u002FSurge?style=social)](https:\u002F\u002Fgithub.com\u002FSurgeDM\u002FSurge\u002Fstargazers)\n\n[Installation](#installation) • [Usage](#usage) • [Themes](docs\u002FTHEMES.md) • [Fonts](docs\u002FFONTS.md) • [Benchmarks](#benchmarks) • [Extension](#browser-extension) • [Settings](docs\u002FSETTINGS.md) • [CLI Reference](docs\u002FUSAGE.md)\n\n\u003C\u002Fdiv>\n\n---\n\n## What is Surge?\n\nSurge is designed for power users who prefer a keyboard-driven workflow. It features a beautiful **Terminal User Interface (TUI)**, as well as a background **Headless Server** and a **CLI tool** for automation.\n\n![Surge Demo](assets\u002Fdemo.gif)\n\n---\n\n## Why use Surge?\n\nMost browsers open a single connection for a download. Surge opens multiple (up to 32), splits the file, and downloads chunks in parallel. But we take it a step further:\n\n- **Blazing Fast:** Designed to maximize your bandwidth utilization and download files as quickly as possible.\n- **Multiple Mirrors:** Download from multiple sources simultaneously. Surge distributes workers across all available mirrors and automatically handles failover.\n- **Sequential Download:** Option to download files in strict order (Streaming Mode). Ideal for media files that you want to preview while downloading.\n- **Daemon Architecture:** Surge runs a single background \"engine.\" You can open 10 different terminal tabs and queue downloads; they all funnel into one efficient manager.\n- **Beautiful TUI:** Built with Bubble Tea & Lipgloss, featuring customizable palettes and full theme engine support.\n\nFor a deep dive into how we make downloads faster (like work stealing and slow worker handling), check out our **[Optimization Guide](docs\u002FOPTIMIZATIONS.md)**.\n\n---\n\n## Support the Project\n\nWe are just two CS students building Surge in between classes and exams. We love working on this, but maintaining a project of this scale takes time and resources. That's where you come in!\n\nIf Surge saves you time, consider supporting the development! Donations go directly toward:\n\n- **Publishing the Extension:** Paying the Chrome Web Store fee so you can finally install the extension officially (no more sideloading!).\n- **Dev Tools:** Licenses for tools like **GoReleaser Pro** to help us automate our builds.\n- **Debrid Integration:** Covering subscription costs so we can test and build native Debrid support.\n\n[**☕ Buy us a coffee**](https:\u002F\u002Fwww.buymeacoffee.com\u002Fsurge.downloader)\n\n_Totally optional—your stars, issues, and contributions already mean the world to us! :)_\n\n---\n\n## Installation\n\nSurge is available on multiple platforms. Choose the method that works best for you.\n\n| Platform \u002F Method                  | Command \u002F Instructions                                                           | Notes                                        |\n| :--------------------------------- | :------------------------------------------------------------------------------- | :------------------------------------------- |\n| **Prebuilt Binary**          | [Download from Releases](https:\u002F\u002Fgithub.com\u002FSurgeDM\u002FSurge\u002Freleases\u002Flatest) | Easiest method. Just download and run.       |\n| **Arch Linux (AUR)**         | `yay -S surge`                                                                 | Managed via AUR.                             |\n| **macOS \u002F Linux (Homebrew)** | `brew install SurgeDM\u002Ftap\u002Fsurge`                                      | Recommended for Mac\u002FLinux users.             |\n| **Nix \u002F NixOS**              | `nix run github:SurgeDM\u002FSurge`                                        | Via Nix flake. NixOS config: `inputs.surge.packages.${pkgs.system}.default` |\n| **Windows**         | `winget install surge-downloader.surge`\u003Cbr \u002F>or\u003Cbr \u002F>`scoop install surge` | Recommended for Windows users.               |\n| **Dockerfile**               | [See instructions](#4-server-mode-with-docker-compose)                              | Run Surge in server mode with Docker Compose |\n| **Go Install**               | `go install github.com\u002FSurgeDM\u002FSurge@latest`                          | Requires Go 1.25+                           |\n\n---\n\n## Usage\n\nSurge has two main modes: **TUI (Interactive)** and **Server (Headless)**.\n\nFor a full reference, see the **[Themes Guide](docs\u002FTHEMES.md)**, **[Settings &amp; Configuration Guide](docs\u002FSETTINGS.md)** and the **[CLI Usage Guide](docs\u002FUSAGE.md)**.\n\n### 1. Interactive TUI Mode\n\nJust run `surge` to enter the dashboard. This is where you can visualize progress, manage the queue, and see speed graphs. If you encounter any issues, press `?` to open the bug reporting wizard.\n\n```bash\n# Start the TUI\nsurge\n\n# Start TUI with downloads queued\nsurge https:\u002F\u002Fexample.com\u002Ffile1.zip https:\u002F\u002Fexample.com\u002Ffile2.zip\n\n# Combine URLs and batch file\nsurge https:\u002F\u002Fexample.com\u002Ffile.zip --batch urls.txt\n```\n\n### 2. Server Mode (Headless)\n\nGreat for servers, Raspberry Pis, or background processes.\n\n```bash\n# Start the server\nsurge server\n\n# Start the server with a download\nsurge server https:\u002F\u002Furl.com\u002Ffile.zip\n\n# Start with explicit API token\nsurge server --token \u003Ctoken>\n```\n\n### 3. Auto-Start Service\n\nSurge provides an official way to manage it as a system service (daemon). This is the recommended way for servers and reproducible deployments.\n\n```bash\n# Install Surge as a system service\nsurge service install\n\n# Manage the service\nsurge service start\nsurge service stop\nsurge service status\n\n# Uninstall the service\nsurge service uninstall\n```\n\n> [!NOTE]\n> On Linux, these commands may require `sudo`. On Windows, they should be run in an elevated (Administrator) terminal.\n\n### 4. Remote TUI\n\n`surge` and `surge server` bind the HTTP API to `0.0.0.0` (all interfaces) by default.\nThis means the server is accessible via `localhost` (127.0.0.1) as well as your local network IP.\n\nThe API is token-protected. Generate\u002Fread your token by running:\n\n```bash\nsurge token\n```\n\nAlternatively, you can find it in the TUI under **Settings > Extension**.\n\n### 3. Remote TUI\n\nConnect to a running Surge daemon (local or remote).\n\n```bash\n# Connect to local server (auto-detected)\nsurge connect\n\n# Connect to a remote daemon\nsurge connect 192.168.1.10:1700 --token \u003Ctoken>\n\n# Equivalent global-flag form\nsurge --host 192.168.1.10:1700 --token \u003Ctoken>\n```\n\nBy default, `surge connect` uses:\n\n- `http:\u002F\u002F` for loopback and private IP targets\n- `https:\u002F\u002F` for public\u002Fhostname targets\n\n### 4. Global Connection Flags (CLI + TUI)\n\nThese global flags are available on all commands:\n\n- `--host \u003Chost:port>`: target server for TUI and CLI operations.\n- `--token \u003Ctoken>`: bearer token for authentication.\n\nEnvironment variable fallbacks:\n\n- `SURGE_HOST`\n- `SURGE_TOKEN`\n\n### 5. Server Mode with Docker Compose\n\nDownload the compose file and start the container:\n\n```bash\nwget https:\u002F\u002Fraw.githubusercontent.com\u002FSurgeDM\u002FSurge\u002Frefs\u002Fheads\u002Fmain\u002Fdocker\u002Fcompose.yml\ndocker compose up -d\n```\n\nGet the API token:\n\n```bash\ndocker compose exec surge surge token\n```\n\nSave this token - you'll need it to authenticate API requests and connect remotely.\n\nCheck downloads\u002FAPI availability:\n\n```bash\ndocker compose exec surge surge ls\n```\n\nView logs:\n\n```bash\ndocker compose logs -f surge\n```\n\n---\n\n## Fonts\n\nSurge ships a bundled Nerd Font for the TUI, but your terminal controls the\nactual font selection. See [docs\u002FFONTS.md](docs\u002FFONTS.md) for install steps and\nlicensing details.\n\n---\n\n## Benchmarks\n\nWe tested Surge against standard tools. Because of our connection optimization logic, Surge significantly outperforms single-connection tools.\n\n| Tool            | Time             | Speed                | Comparison    |\n| --------------- | ---------------- | -------------------- | ------------- |\n| **Surge** | **28.93s** | **35.40 MB\u002Fs** | **—**  |\n| aria2c          | 40.04s           | 25.57 MB\u002Fs           | 1.38× slower |\n| curl            | 57.57s           | 17.79 MB\u002Fs           | 1.99× slower |\n| wget            | 61.81s           | 16.57 MB\u002Fs           | 2.14× slower |\n\n> _Test details: 1GB file, Windows 11, Ryzen 5 5600X, 360 Mbps Network. Results averaged over 5 runs._\n\nWe would love to see you benchmark Surge on your system!\n\n---\n\n## Browser Extension\n\nThe Surge extension intercepts browser downloads and sends them straight to your terminal. It communicates with the Surge client on port **1700** by default.\n\n> [!IMPORTANT]\n> An **Auth Token** is required to connect the extension to your Surge server. This can be obtained from the TUI under **Settings > Extension** or by running `surge token`.\n\n### Chrome \u002F Edge \u002F Brave\n\n1. Download `extension-chrome.zip` from the latest GitHub release.\n2. Unzip it somewhere on disk.\n3. Open your browser and navigate to `chrome:\u002F\u002Fextensions`.\n4. Enable **\"Developer mode\"** in the top right corner.\n5. Click **\"Load unpacked\"**.\n6. Select the unzipped `extension-chrome` folder.\n7. Click the Surge icon in your browser toolbar and enter your **Auth Token** in the settings.\n\n### Firefox\n\n1. **Stable:** [Get the Add-on](https:\u002F\u002Faddons.mozilla.org\u002Fen-US\u002Ffirefox\u002Faddon\u002Fsurge\u002F)\n2. **Development:**\n   - Download `extension-firefox.zip` from the latest GitHub release.\n   - Navigate to `about:debugging#\u002Fruntime\u002Fthis-firefox`.\n   - Click **\"Load Temporary Add-on...\"**.\n   - Select the zip file (or unzip and select `manifest.json`).\n   - Click the Surge icon in your browser toolbar and enter your **Auth Token** in the settings.\n\n---\n\n## Acknowledgements\n\nHuge thanks to the teams and sponsors helping us build and ship Surge:\n\n- [Charm](https:\u002F\u002Fcharm.sh\u002F) for the incredible terminal UI ecosystem (Bubble Tea, Lip Gloss, and more).\n- [GoReleaser Pro](https:\u002F\u002Fgoreleaser.com\u002Fpro\u002F) for release automation (provided free for open source).\n\n---\n\n## Community & Contributing\n\nWe love community contributions! Whether it's a bug fix, a new feature, or just cleaning up typos.\nPRs are always welcome. For a quick guide, see [CONTRIBUTING.md](CONTRIBUTING.md).\n\nYou can check out the [Discussions](https:\u002F\u002Fgithub.com\u002FSurgeDM\u002FSurge\u002Fdiscussions) for any questions or ideas, or follow us on [X (Twitter)](https:\u002F\u002Fx.com\u002FSurgeDownloader)!\n\n## License\n\nDistributed under the MIT License. See [LICENSE](https:\u002F\u002Fgithub.com\u002FSurgeDM\u002FSurge\u002Fblob\u002Fmain\u002FLICENSE) for more information.\n\n---\n\n\u003Cdiv align=\"center\">\n\u003Ca href=\"https:\u002F\u002Fstar-history.com\u002F#SurgeDM\u002FSurge&Date\">\n \u003Cpicture>\n   \u003Csource media=\"(prefers-color-scheme: dark)\" srcset=\"https:\u002F\u002Fapi.star-history.com\u002Fsvg?repos=SurgeDM\u002FSurge&type=Date&theme=dark\" \u002F>\n   \u003Csource media=\"(prefers-color-scheme: light)\" srcset=\"https:\u002F\u002Fapi.star-history.com\u002Fsvg?repos=SurgeDM\u002FSurge&type=Date\" \u002F>\n   \u003Cimg alt=\"Star History Chart\" src=\"https:\u002F\u002Fapi.star-history.com\u002Fsvg?repos=SurgeDM\u002FSurge&type=Date\" \u002F>\n \u003C\u002Fpicture>\n\u003C\u002Fa>\n\n\u003Cbr \u002F>\nIf Surge saved you some time, consider giving it a ⭐ to help others find it!\n\u003C\u002Fdiv>\n","Surge 是一个为高级用户设计的高速终端用户界面（TUI）下载管理器。它使用 Go 语言构建，支持多线程下载、多镜像源同时下载以及顺序下载模式，旨在最大化带宽利用率并快速完成文件下载。此外，Surge 还具备后台守护进程架构，允许通过多个终端会话共享同一下载引擎，提高了资源利用效率。其美观且高度可定制的 TUI 界面基于 Bubble Tea 和 Lipgloss 开发，提供了丰富的主题选择。适用于需要高效下载工具，并偏好键盘操作的工作流场景中，如开发者、系统管理员等技术爱好者。",2,"2026-06-11 03:44:41","high_star"]