Firelink

A clean, native SwiftUI download manager for Apple Silicon macOS

Swift Version Platform Support Engine License


Firelink brings the efficiency of multi-segmented download managers (like IDM or FDM) to macOS with a modern, native SwiftUI interface. Designed specifically for Apple Silicon, it delivers high-speed concurrent transfers, drag-and-drop queue control, automated file organization, and Keychain-secured authentication—all in a lightweight native package.


Key Features

  • High-Speed Downloads: Multi-segmented download engine powered by aria2c for concurrent connections and optimal bandwidth utilization. Supports HTTP, HTTPS, FTP, and SFTP.
  • 🎨 Native macOS & SwiftUI: Responsive interface designed natively for Apple Silicon, featuring resizable tables, customizable columns, sidebar filters, and an in-app Settings page.
  • 🗂️ Smart Queue & Categories: Drag-and-drop priority ordering, batch link ingestion with smart parsing, and automatic file organization (Musics, Movies, Compressed, Pictures, Documents, Other) based on extension detection.
  • 🔒 Keychain Security: Local macOS Keychain integration for secure site credential storage and matching during transfers.
  • ⚙️ Power & System Integrity: Optional system sleep prevention during active downloads, disk-space safety checks, and automated cleanup of partial .aria2 metadata cache files.
🔍 View Full Feature Index (30+ features)

All native SwiftUI macOS features:

  • Core Download Engine:
    • Segmented downloads with per-file connection/split counts.
    • Multi-threaded, parallel downloading with configurable limits.
    • Support for HTTP, HTTPS, FTP, and SFTP transfers via aria2c.
  • Advanced Queue Control:
    • Drag-and-drop download reordering to manage priorities.
    • Comprehensive download table with resizable, custom columns (Name, Size, Status, ETA, Dates).
    • Individual download controls: pause, resume, stop, and queue actions.
  • Smart Link Ingestion:
    • Batch Add window for pasting multiple links at once.
    • Automated link parsing (whitespaces, newlines, standard separators).
    • Disk space availability checks and total size calculation prior to adding.
  • File Organization:
    • Automatic categorization of files (Music, Movies, Compressed, Documents, Images) into structured subfolders under ~/Downloads.
    • Smart fallback to customizable download folders per category.
    • Automatic cleanup of unfinished .aria2 metadata/cache files on removal.
  • Security & System:
    • Local macOS Keychain integration for site logins.
    • Prevents system sleep while active transfers are in progress, preserving display sleep.
    • Release .app bundle build scripts ready for distribution.

⚙️ Engine Architecture

Firelink leverages aria2c under the hood as its core download engine. Unlike standard curl, aria2c allows:

  • Segmented Downloads: Splits files into multiple streams for maximum transfer speeds.
  • Unified Connection Control: A single slider regulates both the server connection count and segment split count, matching the intuitive behavior of classic managers like IDM/FDM.
  • Built-in Resumability: Seamlessly resumes interrupted or paused downloads without data corruption.

🛠️ Requirements & Setup

1. Install Dependencies

Ensure you have Homebrew and the Swift toolchain installed:

brew install aria2
  • OS Support: macOS 14.0 or newer (built natively for Apple Silicon)
  • Toolchain: Xcode 15+ / Swift 6.0 toolchain

2. Build & Run

Run the application directly via the terminal:

swift run Firelink

Or build a production .app bundle:

make app && open build/Firelink.app

Create a local Apple Silicon DMG:

make dmg

Release

GitHub Actions builds and publishes the macOS ARM64 DMG when a version tag is pushed:

git tag v0.1.0
git push origin v0.1.0

🗺️ Roadmap

  • Data Persistence: Store history, column layout preferences, and active queues across restarts.
  • Zero-Config Setup: Automatically bundle and configure aria2c inside the .app bundle.
  • Bandwidth Limits: Add global and per-download speed caps and calendar schedules.
  • Browser Extensions: Capture links directly from Safari, Chrome, and Firefox.
  • Advanced Transfer Features: Checksum validation, cookie/header ingestion, and smart mirror failovers.
  • Distribution: Notarized release builds, automated Sparkle updates, and Homebrew formulae.

📄 License

Firelink is released under the MIT License. See LICENSE for details.

S
Description
Languages
TypeScript 55.2%
Rust 37.4%
JavaScript 3.8%
CSS 3.6%