mirror of
https://github.com/StuffAnThings/qbit_manage.git
synced 2025-10-09 13:29:15 +08:00
# Requirements Updated - "fastapi==0.116.2" # Improvements - **Desktop App**: Adds minimize to tray and automatic startup on boot - **Desktop App**: Support for CLI args passthrough to desktop app - **Webhooks**: Adds additional information (commands and execution_options) to run_start webhook - **WebUI**: Adds direct link to latest release when updates are available # Bug Fixes - Fix broken pypi builds - **Web UI**: Fix config validation causing runs to be stuck in progress - **Web UI**: Fix config validation causing run start webhooks to trigger **Full Changelog**: https://github.com/StuffAnThings/qbit_manage/compare/v4.6.2...v4.6.3 --------- Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> |
||
---|---|---|
.. | ||
css | ||
img | ||
js | ||
index.html | ||
README.md |
qBit Manage Web UI
Overview
The qBit Manage Web UI provides a modern interface for configuring and managing qBit Manage. It offers real-time editing of YAML configuration files through an intuitive visual interface, eliminating the need for manual file editing.
Project Structure
web-ui/
├── css/ # Stylesheets
│ ├── components/ # Component-specific styles
│ ├── main.css # Global styles
│ ├── responsive.css # Responsive layouts
│ └── themes.css # Theme definitions
├── img/ # Application images and icons
├── js/ # Application logic
│ ├── api.js # Backend communication
│ ├── app.js # Main application
│ ├── components/ # UI components
│ ├── config-schemas/ # Configuration schemas
│ └── utils/ # Helper functions
└── index.html # Application entry point
Key Features
- Visual Configuration Editor: Intuitive forms for editing YAML configurations
- Real-time Validation: Instant feedback on configuration errors
- Undo/Redo History: Track and revert changes with history management
- Theme Support: Light/dark mode with system preference detection
- Responsive Design: Works on desktop and mobile devices
- YAML Preview: Real-time preview of generated configuration
Configuration Sections
The UI organizes configuration into logical sections:
- Commands: Manage script execution workflows
- qBittorrent Connection: Configure qBittorrent API access
- Settings: Application preferences and behavior
- Directory Paths: Define important filesystem locations
- Categories: Torrent category management
- Category Changes: Bulk category modification rules
- Tracker Configuration: Per-tracker settings
- No Hard Links: Category-specific hardlink handling
- Share Limits: Ratio and seeding time rules
- Recycle Bin: Deleted torrent management
- Orphaned Files: Cleanup of unregistered files
- Notifications: Alert configuration
- Logs: View application logs
Technical Architecture
Frontend Components
- ConfigForm.js: Dynamic form generator based on JSON schemas
- CommandPanel.js: Interface for executing management commands
- LogViewer.js: Real-time log display component
- HistoryManager.js: Undo/Redo functionality implementation
API Integration
The UI communicates with the backend through a RESTful API:
sequenceDiagram
participant UI as Web UI
participant API as FastAPI Backend
participant QBM as qBit Manage
UI->>API: HTTP Request (GET/POST)
API->>QBM: Process Configuration
QBM-->>API: YAML Validation
API-->>UI: Response with Status
Key API endpoints:
GET /api/configs
: List available configurationsPUT /api/configs/{filename}
: Update configuration filePOST /api/run-command
: Execute management commandsGET /api/logs
: Stream application logs
Error handling includes:
- JWT authentication
- Automatic retry on network failures
- Websocket support for real-time updates
Usage Notes
- Ensure the qBit Manage backend is running
- Open
index.html
in a modern browser - Select a configuration file from the dropdown
- Navigate sections using the sidebar
- Use the preview button to see generated YAML
- Save changes when complete
Keyboard Shortcuts:
Ctrl+S
: Save current configurationCtrl+R
: Toggle Run Commands modalCtrl+Z
: Undo last changeCtrl+Y
: Redo last changeCtrl+/
: Toggle Help modalCtrl+P
orCmd+P
: Toggle YAML previewEscape
: Close modals/panels