Files
homarr/apps/docs/docs/widgets/downloads/index.mdx
T
2026-08-12 01:05:39 +02:00

131 lines
5.3 KiB
Plaintext

---
title: "Download Client"
description: "Allows you to view and manage your Downloads from both Torrent and Usenet clients."
hide_title: true
---
import { WidgetInteractionGuide } from "@site/src/components/widgets/interactions";
import { aria2Integration } from "@site/docs/integrations/aria2";
import { delugeIntegration } from "@site/docs/integrations/deluge";
import { nzbgetIntegration } from "@site/docs/integrations/nzbget";
import { qBittorentIntegration } from "@site/docs/integrations/q-bittorent";
import { sabnzbdIntegration } from "@site/docs/integrations/sabnzbd";
import { transmissionIntegration } from "@site/docs/integrations/transmission";
import { slskdIntegration } from "@site/docs/integrations/slskd";
import { AddingWidget } from "@site/src/components/widgets/adding";
import { WidgetConfig } from "@site/src/components/widgets/configuration";
import { WidgetHeader } from "@site/src/components/widgets/header";
import { WidgetIntegrations } from "@site/src/components/widgets/integrations";
import { downloadsWidget } from ".";
<WidgetHeader widget={downloadsWidget} categories={["Torrent client", "Usenet client", "Downloads"]} />
This widget displays torrent, Usenet, and miscellaneous download jobs, along with their progress and other relevant information. It supports 7 download client integrations and provides a rich, responsive table interface.
### Screenshots
import downloadsCard from "./img/screenshot.png";
import contextMenuImg from "./img/context-menu.png";
import advancedViewImg from "./img/advanced-view.png";
<div>
<img src={downloadsCard} alt="Downloads widget showing torrent and usenet items" width={128 * 4} />
</div>
#### Download-row context menu
<div>
<img src={contextMenuImg} alt="Downloads row context menu with pause, delete, and copy actions" width={128 * 4} />
</div>
#### Advanced view
<div>
<img
src={advancedViewImg}
alt="Downloads widget in advanced view with stats, sortable columns, and expanded details"
width={128 * 6}
/>
</div>
### Features
- **Responsive table** — columns automatically adapt to widget width, hiding less important columns at smaller sizes
- **Sortable columns** — click any column header to sort ascending/descending
- **Column customization** — choose which columns to display, then hover a header to reveal its grab handle for reordering or drag its edge to resize it; layouts save automatically per widget
- **Right-click context menu** — pause, resume, delete downloads, or copy download names directly from the context menu when the selected integration grants interact access
- **Row expansion** — click any row to see full details inline without opening a separate modal
- **Hover tooltips** — hover a download name to see size, speeds, ETA, ratio, and category; open tooltips close when switching between compact and advanced mode
- **Global stats bar** — show a summary bar with queue progress, total size, speeds, ratio, and per-state counts in compact mode; advanced view always includes it
- **Client filtering** — filter downloads by integration or status using the footer filter panel
- **Global controls** — pause/resume all downloads across all clients from the footer bar
- **Status indicators** — color-coded badges show download state at a glance
- **Speed overview** — total download and upload speeds displayed in the footer
:::note
Compact layouts hide secondary columns as width decreases and can hide the footer on very short tiles. Downloads supports
Advanced view, which restores the denser table, stats, filters, and footer controls in a focused panel.
Pause, resume, delete, and global controls depend on integration permissions. `slskd` does not implement pause, resume,
or delete operations; if shared permission UI exposes those controls, they have no effect for that client.
The screenshot above is a download-row menu, separate from the shared widget context menu described in the board guide.
:::
### Supported Integrations
<WidgetIntegrations
items={[
{
integration: sabnzbdIntegration,
note: "Usenet client",
},
{
integration: nzbgetIntegration,
note: "Usenet client",
},
{
integration: delugeIntegration,
note: "Torrent client",
},
{
integration: transmissionIntegration,
note: "Torrent client",
},
{
integration: qBittorentIntegration,
note: "Torrent client",
},
{
integration: aria2Integration,
note: "Multi-protocol download client",
},
{
integration: slskdIntegration,
note: "Soulseek client (no mutation support)",
},
]}
/>
### Interactions
- **Right-click** any download to open a context menu with the actions allowed by that integration
- **Click** any row to expand it and see full download details inline
- **Hover** a download name for a quick stats tooltip
- **Stats toggle** — show or hide the global stats bar in compact mode; advanced view always shows the stats bar
- **Pause / Resume** all downloads using the footer controls
- **Filter** by integration or status using the filter button in the footer
- **Sort** by clicking column headers; the direction applies to the current view
<WidgetInteractionGuide />
### Adding the widget
<AddingWidget />
### Configuration
<WidgetConfig configuration={downloadsWidget.configuration} />