OpenFetch is a flagship, production-ready, open-source desktop download manager built on Tauri 2, Rust, and React 19. Designed to feel like modern power-user tools like VS Code or Discord, OpenFetch delivers blazing performance, low resource consumption, and a plugin-first architecture.
| Platform | Installer Type | Direct Download Link |
|---|---|---|
| 🪟 Windows | Setup Executable (.exe) |
Download .exe |
| 🪟 Windows | MSI Package (.msi) |
Download .msi |
| 🍎 macOS | Disk Image (.dmg) |
Download .dmg |
| 🐧 Linux | Universal AppImage | Download .AppImage |
| 🐧 Linux | Debian / Ubuntu (.deb) |
Download .deb |
| 🐧 Linux | Fedora / RedHat (.rpm) |
Download .rpm |
- ⚡ Blazing Fast Engine: Core download engine built with Rust,
tokio, andreqwestfeaturing multi-threaded chunked downloads and range requests. - 🎨 Glassmorphism UI: Dark-first interface styled with Tailwind CSS, custom design tokens, and smooth Framer Motion micro-animations.
- 🧩 Plugin-First Architecture: Source extractors and download handlers run as modular plugins (
generic-http,github-releases, and extensible custom plugins). - 📋 Intelligent URL Analyzer: Instant analysis of pasted URLs showing file title, media type, estimated size, content headers, and required plugin.
- 📂 Smart Organization: Auto-categorization of downloads into Videos, Music, Documents, Archives, Software, and Repositories.
- 📊 Detailed Analytics: In-app charts tracking daily bandwidth, average speed, domain distribution, and completion rates.
- 🔒 Privacy-First & Offline-First: Zero telemetry, no tracking, local SQLite database storage for history and queues.
OpenFetch Monorepo
├── apps/
│ └── desktop/ # Tauri 2 App (Rust Backend + React 19 Frontend)
├── packages/
│ ├── core/ # Shared TypeScript types & utility helpers
│ ├── plugin-sdk/ # Plugin manifest schema & SDK interfaces
│ └── ui/ # Shared design system components
├── plugins/
│ ├── generic-http/ # Rust HTTP chunk downloader plugin
│ ├── github-releases/ # GitHub release asset extractor plugin
│ ├── ftp/ # FTP protocol plugin (stub)
│ ├── sftp/ # SFTP protocol plugin (stub)
│ └── google-drive/ # Cloud storage plugin (stub)
└── docs/ # Developer & Plugin documentation
- Frontend: React 19, TypeScript, Tailwind CSS, TanStack Query, Zustand, Framer Motion, Recharts
- Backend & Native Desktop: Tauri v2, Rust 2021, Tokio, Reqwest, Rusqlite, Arboard
- Monorepo Management: pnpm workspaces, Turborepo
- Node.js (v20+) & pnpm (v9+)
- Rust Toolchain (
rustup,cargo)
# Clone the repository
git clone https://github.com/allanabtech/OpenFetch.git
cd OpenFetch
# Install workspace dependencies
pnpm install
# Run desktop app in development mode
pnpm devpnpm --filter desktop tauri buildOpenFetch is designed so the community can build custom plugins without modifying the core codebase.
- Read the Plugin Development Documentation
- Check out the System Architecture Guide
- Explore the @openfetch/plugin-sdk package
Contributions of all kinds are welcome! Please read our Contributing Guide before submitting a Pull Request.
This project is licensed under the MIT License.