mangofetch-gui 0.1.0

Graphical interface for MangoFetch download manager (egui + eframe)
docs.rs failed to build mangofetch-gui-0.1.0
Please check the build logs for more information.
See Builds for ideas on how to fix a failed build, or Metadata for how to configure docs.rs builds.
If you believe this is docs.rs' fault, open an issue.

Overview

mangofetch-gui is a premium, hardware-accelerated desktop application designed for managing downloads. Powered by egui and eframe, it implements the MonolithUI industrial design language, featuring sleek dark mode options, smooth physics-based progress meters, and dynamic telemetry widgets.

Under the hood, it harnesses the headless asynchronous download power of mangofetch-core to fetch media and torrent streams.

The mangoSuite

mangofetch-gui is the graphical companion client in the mangoSuite ecosystem:

Key Features

  • MonolithUI Aesthetic: Sleek dark industrial HUD styling, customizable HSL-based palettes, and modern typography.
  • Granular Controls: Choose audio and video qualities, format extensions, and directories visually.
  • Interactive Telemetry: Live download rate graphs, estimated completion times, and speed gauges.
  • Recovery Panel: Browse download history, retry failed links, or pause and resume active downloads with a click.
  • Automatic Provisioning: Fully automated background checking and downloading for dependency tools like yt-dlp and ffmpeg.

GUI Installation

Via Cargo (Recommended)

Install the GUI client directly:

cargo install mangofetch-gui

From Source

Ensure you have your system's graphics drivers and window development packages installed (e.g., libx11-dev and libasound2-dev on Linux).

git clone https://github.com/julesklord/mangofetch-gui.git
cd mangofetch-gui
cargo build --release

How to Run

Launch the application using:

mangofetch-gui

Local Development

Since this repository resolves mangofetch-core directly from crates.io for distribution, you can configure your local workspace to use a path override for development. Add the following to the end of the root Cargo.toml in your local development workspace to point to your local copy of mangofetch:

[patch.crates-io]
mangofetch-core = { path = "../mangofetch/mangofetch-core" }
mangofetch-plugin-sdk = { path = "../mangofetch/mangofetch-plugin-sdk" }

License