The sleekest looking WEBUI for qBittorrent made with Vuejs!
Find a file
dependabot[bot] 891fa4715b
chore(deps): bump the all group with 9 updates
Bumps the all group with 9 updates:

| Package | From | To |
| --- | --- | --- |
| [@vueuse/core](https://github.com/vueuse/vueuse/tree/HEAD/packages/core) | `11.2.0` | `11.3.0` |
| [apexcharts](https://github.com/apexcharts/apexcharts.js) | `4.0.0` | `4.1.0` |
| [axios](https://github.com/axios/axios) | `1.7.7` | `1.7.8` |
| [vue-router](https://github.com/vuejs/router) | `4.4.5` | `4.5.0` |
| [vue3-apexcharts](https://github.com/apexcharts/vue3-apexcharts) | `1.7.0` | `1.8.0` |
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `22.9.0` | `22.9.4` |
| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.15.0` | `8.16.0` |
| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.15.0` | `8.16.0` |
| [typescript](https://github.com/microsoft/TypeScript) | `5.6.3` | `5.7.2` |


Updates `@vueuse/core` from 11.2.0 to 11.3.0
- [Release notes](https://github.com/vueuse/vueuse/releases)
- [Commits](https://github.com/vueuse/vueuse/commits/v11.3.0/packages/core)

Updates `apexcharts` from 4.0.0 to 4.1.0
- [Release notes](https://github.com/apexcharts/apexcharts.js/releases)
- [Commits](https://github.com/apexcharts/apexcharts.js/compare/v4.0.0...v4.1.0)

Updates `axios` from 1.7.7 to 1.7.8
- [Release notes](https://github.com/axios/axios/releases)
- [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md)
- [Commits](https://github.com/axios/axios/compare/v1.7.7...v1.7.8)

Updates `vue-router` from 4.4.5 to 4.5.0
- [Release notes](https://github.com/vuejs/router/releases)
- [Commits](https://github.com/vuejs/router/compare/v4.4.5...v4.5.0)

Updates `vue3-apexcharts` from 1.7.0 to 1.8.0
- [Commits](https://github.com/apexcharts/vue3-apexcharts/commits)

Updates `@types/node` from 22.9.0 to 22.9.4
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Updates `@typescript-eslint/eslint-plugin` from 8.15.0 to 8.16.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.16.0/packages/eslint-plugin)

Updates `@typescript-eslint/parser` from 8.15.0 to 8.16.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.16.0/packages/parser)

Updates `typescript` from 5.6.3 to 5.7.2
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.6.3...v5.7.2)

---
updated-dependencies:
- dependency-name: "@vueuse/core"
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all
- dependency-name: apexcharts
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all
- dependency-name: axios
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: all
- dependency-name: vue-router
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all
- dependency-name: vue3-apexcharts
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: all
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: all
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: all
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: all
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: all
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-11-25 23:56:55 +00:00
.github
.vscode
public
src perf(backend): Rework sync behaviour (#2050) 2024-11-25 19:34:56 +01:00
tests
.env.development perf(backend): Rework sync behaviour (#2050) 2024-11-25 19:34:56 +01:00
.eslintignore
.eslintrc.cjs
.gitignore
.prettierignore
.prettierrc.json
.release-please-manifest.json chore(master): release 2.18.0 (#2040) 2024-11-17 18:19:44 +01:00
CHANGELOG.md chore: update translations (#2060) 2024-11-24 12:45:02 +01:00
docker-compose.yml
Dockerfile
index.html
LICENSE
package-lock.json chore(deps): bump the all group with 9 updates 2024-11-25 23:56:55 +00:00
package.json chore(deps): bump the all group with 9 updates 2024-11-25 23:56:55 +00:00
README.md
release-please-config.json
tsconfig.json
tsconfig.node.json
vite.config.ts perf(backend): Rework sync behaviour (#2050) 2024-11-25 19:34:56 +01:00
VueTorrent-logo.png
write-version.cjs

VueTorrent

The sleekest looking WebUI for qBittorrent made with Vue.js!

Discord

VueTorrent

Vue Vuetify qBittorrent

stars Forks Issues Closed Closed PR Version Test Status Downloads Contributor Covenant

Screenshots

  • Desktop

Screenshot Desktop (Light Mode)

  • Desktop Dark Mode

Screenshot Desktop (Dark Mode)

  • Mobile Light Mode

Screenshot Mobile Dashboard (Light Mode) Screenshot Mobile Navbar (Light Mode)

  • Mobile Dark Mode

Screenshot Mobile Dashboard (Dark Mode) Screenshot Mobile Navbar (Dark Mode)

Demo

A live demo with mocked data is available here: https://vuetorrent.github.io/demo

[!NOTE] This version isn't connected to a qBittorrent instance.

Don't try to download torrents or change preferences, it won't work 😉

Installation

Checkout the wiki!

Development

  • Clone the repo
  • npm install
  • npm start
  • npm run lint (to format the code)
  • docker-compose up -d (starts a qbittorrent docker, optional)
  • Open the WebUI on localhost with the default credentials
    • See #1720 for more details
  • Make sure WebUI > "Host header validation" is disabled in the qBittorrent preferences
  • Edit env.development to tweak your dev environment (e.g. mocked data)

Features

  • Torrents
    • add / remove / pause / resume / rename torrents
    • selectively download files
    • view info / trackers / peers / content / tags & categories
    • search for new torrents straight from the WebUI!
  • Keyboard shortcuts!
    • Mac keymap is supported (use Cmd instead of Ctrl)
    • Press Escape to dismiss any dialogs or to return to Dashboard view
    • Dashboard
      • Select all torrents with Ctrl-A
      • Focus search input with Ctrl-F
        • Press again to enable native browser search
      • When no dialogs are opened, press Escape to unfocus search input
        • Press again to unselect all torrents
      • Delete selected torrents with Delete (Fn-Backspace on Mac)
      • Ctrl-click on a torrent card to enable multi-select mode
      • Hold Shift and click on a torrent card to select all torrents between the last selected torrent and the clicked torrent
  • System
    • see session stats (down / upload speed, session uploaded / downloaded, free space)
    • beautiful transfer graphs
    • change the most common settings
  • Extra features the default WebUI doesn't have
    • mobile friendly! (can be installed as a PWA)
    • Configureable Dashboard: choose which torrent properties are shown for both busy and completed torrents
  • Optimized for the latest version of qBittorrent
  • Additional backend for improved experience, see the repo for more info
    • This is a work in progress, and is not required to use VueTorrent
    • Stores server-side settings
  • Supports qBittorrent Enhanced Edition preferences

Important Information

VueTorrent is a WebUI (think of it as a "visual skin") that uses qBittorrent's API, enabling compatibility with automation solutions like the Servarr stack.

Everything that is compatible with the classic qBittorrent WebUI will work regardless of the WebUI you chose to use, whether its VueTorrent or another one.

Contributing

We gladly accept contributions!

Any help is appreciated, whether it's reporting bugs, suggesting enhancements, contributing code or localizing the app.

See the Contributing Guidelines for more information.

Support

  • Discord
  • Wiki
  • FAQ

If any of the above didn't help, feel free to open an issue!

See the Contributing Guidelines for more information.

Funding

All donations are appreciated but purely optional.

Checkout the sponsor section of the repository.

Contributors