FireFetch is a desktop downloader built with Electron + Express, powered by yt-dlp, aria2c, and ffmpeg.
- Open source / free code: the source in this repository is free to use and modify.
- Binary distribution: prebuilt releases are available on Itch.io as donationware (free download, optional donation).
- Sponsor: Sponsored by Playcast.io.
- Video downloads via
yt-dlp(format selection, metadata, many supported sites depending on your bundledyt-dlpversion) - Direct file downloads via
aria2c - Torrent / magnet support
- Queue UI with pause/resume, retries, reordering, and persistence
- Cookie upload (optional) for sites that require login (stored locally)
- Dependency Manager to check/update bundled tools
- Node.js + npm
- Windows is the primary target in this repo (bundled tools are
.exe)
npm install
npm startFireFetch stores its data relative to the app’s base directory:
- Settings:
settings.json - Download queue state:
downloads-state.json - Download output:
downloads/(configurable in Settings) - Cookie storage:
cookies/(only used if you upload cookies) - Bundled tools:
dep/
- DRM: FireFetch does not bypass DRM-protected content.
- App authentication: FireFetch does not require an app login. Cookies are only for site authentication when needed.
Developer-facing docs are in docs/:
docs/api-reference.mddocs/frontend-architecture.mddocs/build-deployment.mddocs/external-dependencies.mddocs/troubleshooting.md
See the repository’s license (and/or package.json) for the current licensing terms.