NimBold f603b74a99 feat(release): add cross-platform packaging
Add target-aware engine provisioning, platform package configs, and CI/release verification for macOS arm64, Windows x64, and Linux AppImage.
2026-06-23 21:26:51 +03:30

Firelink

Firelink

A fast, focused desktop download manager powered by Rust and Tauri.

Version Platform Tauri Rust License CI

Features · Install · Development · Project status

Firelink brings segmented downloads, media extraction, scheduling, and browser integration into one native-feeling desktop application. The current app uses a Rust backend with a React and TypeScript interface, replacing the original SwiftUI implementation.

Features

  • Fast transfers with segmented downloading powered by aria2
  • Media downloads through yt-dlp, FFmpeg, and Deno
  • Persistent queues with configurable concurrency and speed limits
  • Download scheduling with optional post-queue system actions
  • Pause, resume, retry, and duplicate-file handling
  • Smart organization with categories and configurable destinations
  • Browser integration through the Firelink Companion extension
  • Secure local handoff using authenticated extension pairing
  • System integration including tray controls, notifications, and sleep prevention
  • Built-in update checks backed by GitHub Releases

Installation

Important

The Rust and Tauri application is still completing release packaging. The current v0.7.3 macOS asset on GitHub Releases belongs to the archived SwiftUI implementation.

For now, run the maintained application from source using the development instructions below. New packaged builds will be published through GitHub Releases once the migration is complete.

Production bundles include target-specific media engines, so packaged releases do not require separate aria2, yt-dlp, FFmpeg, Deno, Python, or package-manager installations.

macOS builds are distributed without Apple code signing or notarization. Users must approve the downloaded app through Finder or System Settings → Privacy & Security. Firelink does not claim Gatekeeper trust.

Browser Extension

Install Firelink Companion for Firefox to send browser downloads directly to Firelink. Pair the extension from Settings → Integrations using the generated local token.

Project Status

The migration from SwiftUI to Rust, Tauri, React, and TypeScript is in its final stage. The new application is the maintained implementation at the repository root.

Target Status
macOS arm64 Automated build, engine validation, and unsigned DMG packaging
Windows x64 Native CI and NSIS packaging configured; first clean-run validation pending
Linux x64 Native CI and AppImage packaging configured; desktop-matrix validation pending

See the changelog for release history and recent work.

Development

Requirements

Clone the repository with its browser-extension submodule:

git clone --recurse-submodules https://github.com/nimbold/Firelink.git
cd Firelink

Install dependencies and launch the desktop app:

npm install
npm run tauri dev

Run the frontend build and backend tests:

npm run build
cd src-tauri
cargo test --all-targets

Create a production bundle:

npm run tauri build

macOS development uses locked payloads in src-tauri/binaries. Windows and Linux payloads are provisioned from checksum-pinned archives:

node scripts/provision-engines.js --target x86_64-pc-windows-msvc
node scripts/provision-engines.js --target x86_64-unknown-linux-gnu

Build staging includes only current target. See engines.lock.json, engine-sources.lock.json, and RELEASE.md.

Repository Structure

.
├── src/                  React and TypeScript interface
├── src-tauri/            Rust backend and Tauri configuration
├── Extensions/Firefox/   Firelink Companion submodule
└── legacy/swift/         Archived SwiftUI application

Technology

License

Firelink is available under the MIT License.

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