Desktop Downloader Electron + Express • Windows-first

FireFetch

Fast, resilient downloads with a real queue UI. Powered by yt-dlp, aria2c, and ffmpeg.

Open source
Free to modify
Queue UI
Pause / resume
Storage
Local-first
FireFetch application interface screenshot
Powered by yt-dlp aria2c ffmpeg

Everything you need for serious downloading

FireFetch combines a clean desktop experience with proven tooling under the hood. Build a queue, pick formats, retry when networks are flaky, and keep your state between sessions.

Video downloads

Format selection and metadata via yt-dlp (supported sites depend on your bundled yt-dlp version).

Direct downloads

Robust file downloading via aria2c for non-video URLs.

Queue UI

Pause/resume, retries, reordering, and persistence so work continues smoothly.

Torrent & magnet

Bring torrents and magnet links into the same queue-driven flow.

Optional cookies

Upload cookies for sites that require login. Stored locally and only used if you enable them.

Dependency Manager

Check/update bundled tools to keep downloads working as sites evolve.

How it works

  1. Add links (video, direct file, or magnet/torrent).
  2. Choose options (formats/quality where applicable).
  3. Run the queue with pause/resume and retries.
  4. Pick up later with local state persistence.
DRM note: FireFetch does not bypass DRM-protected content.

Local-first storage

FireFetch stores data relative to the app’s base directory.

  • settings.jsonSettings
  • downloads-state.jsonQueue state
  • downloads/Download output
  • cookies/Only if you upload cookies
  • dep/Bundled tools
No app login: Cookies are only for site authentication when needed.

Run from source

Requirements: Node.js + npm. Windows is the primary target in this repo (bundled tools are .exe).

npm install
npm start
Developer Docs
Architecture, build, external dependencies, troubleshooting.
Open docs
Supported Sites
Depends on your bundled yt-dlp version.
View list

Download FireFetch

Get the donationware build on Itch.io, or browse the full source on GitHub.