GopeedLab

    GopeedLab/gopeed

    A modern download manager that supports all platforms. Built with Golang and Flutter.

    android
    mobile
    networking
    ios
    bittorrent
    cross-platform
    debian
    downloader
    flutter
    golang
    http
    https
    macos
    magnet
    torrent
    ubuntu
    windows
    Dart
    GPL-3.0
    21.5K stars
    1.5K forks
    21.5K watching
    Updated 2/27/2026
    View on GitHub
    Backblaze Advertisement

    Loading star history...

    Health Score

    24.18

    Weekly Growth

    +0

    +0.0% this week

    Contributors

    1

    Total contributors

    Open Issues

    232

    Generated Insights

    About gopeed

    Test Status Codecov Release Download Donate Discord

    GopeedLab%2Fgopeed | Trendshift

    ko-fi

    English | 中文 | 日本語 | 正體中文 | Tiếng Việt

    🚀 Introduction

    Gopeed (full name Go Speed), a high-speed downloader developed by Golang + Flutter, supports (HTTP, BitTorrent, Magnet) protocol, and supports all platforms. In addition to basic download functions, Gopeed is also a highly customizable downloader that supports implementing more features through integration with APIs or installation and development of extensions.

    Visit ✈ Official Website | 📖 Official Docs

    ⬇️ Download

    🪟 WindowsEXEamd64📥
    Portableamd64📥
    🍎 MacOSDMGuniversal📥
    amd64📥
    arm64📥
    🐧 LinuxFlathubamd64📥
    SNAPamd64📥
    DEBamd64📥
    arm64📥
    AppImageamd64📥
    arm64📥
    🤖 AndroidAPKuniversal📥
    armeabi-v7a📥
    arm64-v8a📥
    x86_64📥
    📱 iOSIPAuniversal📥
    🐳 Docker-universal📥
    💾 QnapQPKGamd64📥
    arm64📥
    🌐 WebWindowsamd64📥
    arm64📥
    386📥
    MacOSamd64📥
    arm64📥
    Linuxamd64📥
    arm64📥
    386📥

    More about installation, please refer to Installation

    🛠️ Command tool

    use go install:

    go install github.com/GopeedLab/gopeed/cmd/gopeed@latest
    

    🔌 Browser Extension

    Gopeed also provides a browser extension to take over browser downloads, supporting browsers such as Chrome, Edge, Firefox, etc., please refer to: https://github.com/GopeedLab/browser-extension

    💝 Donate

    If you like this project, please consider donating to support the development of this project, thank you!

    🖼️ Showcase

    👨‍💻 Development

    This project is divided into two parts, the front end uses flutter, the back end uses Golang, and the two sides communicate through the http protocol. On the unix system, unix socket is used, and on the windows system, tcp protocol is used.

    The front code is located in the ui/flutter directory.

    🌍 Environment

    1. Golang 1.23+
    2. Flutter 3.24+

    📋 Clone

    git clone [email protected]:GopeedLab/gopeed.git
    

    🤝 Contributing

    Please refer to CONTRIBUTING.md

    🏗️ Build

    Desktop

    First, you need to configure the environment according to the official Flutter desktop website documention, then you will need to ensure the cgo environment is set up accordingly. For detailed instructions on setting up the cgo environment, please refer to relevant resources available online.

    command:

    • windows
    go build -tags nosqlite -ldflags="-w -s" -buildmode=c-shared -o ui/flutter/windows/libgopeed.dll github.com/GopeedLab/gopeed/bind/desktop
    cd ui/flutter
    flutter build windows
    
    • macos
    go build -tags nosqlite -ldflags="-w -s" -buildmode=c-shared -o ui/flutter/macos/Frameworks/libgopeed.dylib github.com/GopeedLab/gopeed/bind/desktop
    cd ui/flutter
    flutter build macos
    
    • linux
    go build -tags nosqlite -ldflags="-w -s" -buildmode=c-shared -o ui/flutter/linux/bundle/lib/libgopeed.so github.com/GopeedLab/gopeed/bind/desktop
    cd ui/flutter
    flutter build linux
    

    Mobile

    Same as before, you also need to prepare the cgo environment, and then install gomobile:

    go install golang.org/x/mobile/cmd/gomobile@latest
    go get golang.org/x/mobile/bind
    gomobile init
    

    command:

    • android
    gomobile bind -tags nosqlite -ldflags="-w -s -checklinkname=0" -o ui/flutter/android/app/libs/libgopeed.aar -target=android -androidapi 21 -javapkg="com.gopeed" github.com/GopeedLab/gopeed/bind/mobile
    cd ui/flutter
    flutter build apk
    
    • ios
    gomobile bind -tags nosqlite -ldflags="-w -s" -o ui/flutter/ios/Frameworks/Libgopeed.xcframework -target=ios github.com/GopeedLab/gopeed/bind/mobile
    cd ui/flutter
    flutter build ios --no-codesign
    

    Web

    command:

    cd ui/flutter
    flutter build web
    cd ../../
    rm -rf cmd/web/dist
    cp -r ui/flutter/build/web cmd/web/dist
    go build -tags nosqlite,web -ldflags="-s -w" -o bin/ github.com/GopeedLab/gopeed/cmd/web
    

    ❤️ Credits

    👥 Contributors

    🏢 JetBrains

    goland

    📄 License

    GPLv3

    Discover Repositories

    Search across tracked repositories by name or description