Skip to content

MochengCK/LinkCore-Download-Manager

Repository files navigation

LinkCore Download Manager Logo

GitHub release Total Downloads Support Platforms License

📖 Overview

LinkCore Download Manager is a simple, easy-to-use, cross-platform downloader built with modern web technologies. A clean, intuitive UI, straightforward task flow, and minimal required settings make downloads effortless; it supports common protocols and online video downloads, covering everyday scenarios.


At the same time, LinkCore offers professional-grade capabilities: BitTorrent/magnet support, UPnP/NAT-PMP port mapping, automatic tracker updates, task priority and batch management, quick engine switching, and advanced option presets — ready for power users and heavy downloading scenarios.

✨ Key Features

🚀 Performance & Reliability

  • High-Speed Downloads: Optimized for maximum download performance
  • Multi-Threading: Support for up to 64 threads per task
  • Concurrent Downloads: Manage up to 10 simultaneous download tasks
  • Stable Connections: Robust error handling and automatic retry mechanisms

📁 Protocol Support

  • HTTP/HTTPS: Direct downloads from web servers
  • FTP/SFTP: File transfers from FTP servers
  • BitTorrent: Full torrent file support with selective downloading
  • Magnet Links: Instant torrent downloads without .torrent files

🎬 Video Downloads

  • Online Video Parsing: Turn supported web video pages into downloadable tasks with one click
  • Default Quality & Format: Configure preferred resolution and container in “Preferences → Video Settings” and apply them automatically when creating tasks
  • Automatic Muxing/Conversion: Automatically merge audio and video after download and output in the selected container (MP4/MKV/MOV, etc.)
  • Batch Video Management: Manage multiple video downloads alongside other tasks with a unified list for viewing, pausing/resuming, and deleting

🎨 User Experience

  • Clean Interface: Modern, intuitive design with dark mode support
  • System Tray Integration: Quick access and status monitoring
  • Download Notifications: Real-time alerts when downloads complete
  • Speed Control: Set upload and download speed limits
  • File Management: Organize downloads by category and location

🔧 Advanced Features

  • Tracker Updates: Daily automatic tracker list updates for improved torrent performance
  • UPnP/NAT-PMP: Automatic port mapping for better connectivity
  • User-Agent Spoofing: Customize user-agent strings for compatibility
  • Task Scheduling: Set download times and priorities
  • Batch Downloads: Import and export download lists

🧩 Unique Features

  • Auto Categorization: Automatically save files by type
  • Custom Categories: Define your own rules for file categorization
  • Task Priority Value: Set numeric priorities to influence download order and resource allocation
  • Custom Download Suffix: Configure a temporary suffix for downloading files for easier management
  • Set File Modified Time to Completion Time: Optionally set the file's modification time to the moment the download finishes
  • Quick Engine Switching: Switch between different download engines quickly to suit various scenarios
  • Advanced Option Presets: Name, save, select, and delete presets for advanced options
  • Link Input UX Enhancements: Automatically deduplicate links; auto-append newline and place caret after paste or autofill
  • Customizable Shortcuts: Set or reset keyboard shortcuts for common commands in “Preferences → Basic → Shortcuts”

🖥️ Platforms

LinkCore Download Manager is currently available for:

  • Windows (7, 8, 10, 11)
  • macOS (Apple Silicon, arm64)
  • Linux (x64, arm64)

📦 Installation

Windows

  1. Visit the GitHub Releases page
  2. Download the latest LinkCore-Download-Manager-Setup-x.y.z.exe installer
  3. Run the installer and follow the on-screen instructions

macOS

  1. Visit the GitHub Releases page
  2. Download *.dmg or *-arm64-mac.zip (Apple Silicon, arm64)
  3. Using *.dmg: double-click to open, then drag the app to /Applications
  4. Using *-arm64-mac.zip: unzip and move the app to /Applications
  5. If macOS shows “unidentified developer”, go to “System Settings → Privacy & Security” and click “Open Anyway”, or right-click the app in Finder and choose “Open”

Linux

  • AppImage (recommended):

    1. Download *.AppImage (x64 or arm64)
    2. Make it executable: chmod +x LinkCore-Download-Manager-*.AppImage
    3. Run: ./LinkCore-Download-Manager-*.AppImage
  • Debian/Ubuntu (.deb):

    1. Download linkcore-download-manager_*_amd64.deb or linkcore-download-manager_*_arm64.deb
    2. Install: sudo dpkg -i linkcore-download-manager_*.deb
    3. Fix dependencies if needed: sudo apt -f install
  • Other distros: prefer AppImage method.

🖥️ Screenshots

Dark Mode - Task Management Interface

Dark Mode

Light Mode - Task Management Interface

Light Mode

🚀 Quick Start

Basic Usage

  1. Add a Download Task:

    • Click the "+ New Download" button
    • Enter the download URL or upload a torrent file
    • Configure download settings (optional)
    • Click "OK" to start downloading
  2. Manage Downloads:

    • Pause/resume downloads with a single click
    • Monitor download progress in real-time
    • View detailed information about each task
  3. Torrent Downloads:

    • Select specific files to download from a torrent
    • View peer and seed information
    • Adjust torrent-specific settings

Keyboard Shortcuts

  • Ctrl/Cmd + N: New download task
  • Ctrl/Cmd + R: Resume selected task(s)
  • Ctrl/Cmd + P: Pause selected task(s)
  • Ctrl/Cmd + D: Delete selected task(s)
  • Ctrl/Cmd + Q: Quit the application

Tip: You can customize these shortcuts in “Preferences → Basic → Shortcuts”; changes take effect immediately after saving.

💡 Tips

  • In the “Add Task” dialog, you can set a numeric priority for each parsed item. Higher values get scheduled earlier while low-priority tasks are interleaved to keep allocation fair. Priorities are shown on the task card and in the detail panel, and persist across restarts.
  • “Advanced Options” support named presets for quick reuse (UA, Referer, Cookie, proxy, etc.). Saving is blocked when all fields are empty, with a localized warning.

Engine Version & Connections

  • The app ships with and defaults to aria2c 1.37.0. This version does not support setting “max-connection-per-server” to 64 and may fail to start tasks if forced. To ensure stability, the app automatically caps this value to 16 on 1.37.0 while keeping split=64 for high chunk-level concurrency.
  • If you need 64 connections per server, go to “Preferences → Advanced → Engine” and quickly switch to aria2c 1.36.0. This version allows max-connection-per-server=64, and split=64 is retained.
  • Note: For single-source HTTP/FTP downloads, the effective concurrency is min(split, max-connection-per-server). For BitTorrent or multi-mirror downloads, concurrency across sources/peers can stack, so overall throughput is less affected.

🛠️ Development

Prerequisites

  • Node.js (v16.0.0 or higher)
  • npm or yarn
  • Git

Setup

  1. Clone the repository:

    git clone https://github.com/MochengCK/LinkCore-Download-Manager.git
    cd LinkCore-Download-Manager
  2. Install dependencies:

    npm install
    # or
    yarn install
  3. Start development server:

    npm run dev
  4. Build for production:

    npm run build

Project Structure

LinkCore-Download-Manager/
├── src/                  # Main source code
│   ├── main/             # Electron main process
│   ├── renderer/         # Electron renderer process (Vue.js)
│   └── shared/           # Shared utilities
├── static/               # Static assets
├── .electron-vue/        # Electron-Vue configuration
├── screenshots/          # Screenshots for documentation
├── package.json          # Project configuration
└── README.md             # This file

🤝 Contributing

Contributions are welcome! Whether you're fixing bugs, adding new features, or improving documentation, your help is appreciated.

How to Contribute

  1. Fork the repository
  2. Create a new branch (git checkout -b feature/your-feature)
  3. Make your changes
  4. Commit your changes (git commit -m 'Add some feature')
  5. Push to the branch (git push origin feature/your-feature)
  6. Create a Pull Request

Development Guidelines

  • Follow the existing code style
  • Write clear, concise commit messages
  • Include tests for new features
  • Update documentation as needed

🙏 Credits

  • This project is based on the open-source project Motrix by agalwood, and has been significantly modified and extended.
  • UI Framework: Vue.js
  • Desktop Framework: Electron
  • Video Processing: FFmpeg
  • Download Engine: aria2

📞 Support

If you encounter any issues or have questions:

  • Open an issue on GitHub
  • Join our community for discussions and support

📄 License

LinkCore Download Manager is licensed under the MIT License.