2025-06-26 15:09:20 +08:00
# OpenList Desktop
<div align="center">
<img src="./app-icon.png" alt="OpenList Desktop" width="128" height="128" />
**A cross-platform desktop application for OpenList with cloud storage integration **
[](./LICENSE)
[](https://vuejs.org/)
[](https://tauri.app/)
[](https://www.rust-lang.org/)
[English ](./README.md ) | [中文 ](./README_zh.md )
</div>
2025-07-03 11:56:16 +08:00
## Attention
2025-06-26 15:09:20 +08:00
2025-07-03 11:56:16 +08:00
This project is in the early development stage, with a version number of 0.x.x. There may be significant changes and unstable features.
2025-06-26 15:09:20 +08:00
## 🔍 Overview
2025-07-03 11:56:16 +08:00
OpenList Desktop is a powerful cross-platform desktop application that provides a user-friendly interface for managing OpenList services and performing local mounts via Rclone.
2025-06-26 15:09:20 +08:00
The application serves as a comprehensive solution for:
- Managing OpenList file management services
- Mounting and managing cloud storage (WebDAV)
2025-07-03 11:56:16 +08:00
- Monitoring service status and uptime
2025-06-26 15:09:20 +08:00
- Providing system tray integration for background operations
## ✨ Features
### 🚀 Core Features
- **OpenList Service Management**: Start, stop, and monitor OpenList core services
2025-07-03 11:56:16 +08:00
- **Local Mounting**: Mount via Rclone to the local file system
2025-06-26 15:09:20 +08:00
- **Real-time Monitoring**: Track service status, uptime, and performance metrics
- **Process Management**: Advanced process control with auto-restart capabilities
- **System Tray**: Background operation with system tray notifications
### ⚙️ Management Features
- **Service Control**: Start/stop/restart OpenList and Rclone services
- **Configuration Management**: GUI-based configuration for all services
- **Log Monitoring**: Real-time log viewing and management
- **Update Management**: Automatic update checking and installation
- **Auto-startup**: Configure applications to start with system boot
## 📸 Screenshots
### Home Dashboard

The main dashboard provides a comprehensive overview of your OpenList Desktop environment with:
2025-07-03 11:56:16 +08:00
- OpenList backend status monitoring
2025-06-26 15:09:20 +08:00
- Quick action buttons for common tasks
2025-07-03 11:56:16 +08:00
- OpenList and Rclone version management
2025-06-26 15:09:20 +08:00
- Service management controls
### Mount Management

2025-07-03 11:56:16 +08:00
Easily perform local mounts:
2025-06-26 15:09:20 +08:00
- Add and configure storage remotes
- Mount/unmount cloud storage
- Monitor mount status and statistics
- Configure auto-mounting options
### Log Monitoring

Keep track of system operations:
- Real-time log streaming
- Filter logs by source and level
- Export and clear log functionality
2025-07-03 11:56:16 +08:00
### Settings Configuration

Comprehensive settings management:
- OpenList core configuration
- Startup and automation preferences
- Theme and language selection
2025-06-26 15:09:20 +08:00
### Update Management

Stay up-to-date with the latest versions:
- Download and install updates
- Version history and changelog
- Automatic update scheduling
## 📦 Installation
### Prerequisites
- **Operating System**: Windows 10+, macOS 10.15+, or Linux (Ubuntu 18.04+)
### Download Options
#### 1. GitHub Releases (Recommended)
Download the latest release from [GitHub Releases ](https://github.com/OpenListTeam/openlist-desktop/releases ):
2025-07-03 11:56:16 +08:00
- **Windows**: `OpenList-Desktop_x.x.x_{arch}-setup.exe`
- **macOS**: `OpenList-Desktop_x.x.x_{arch}.dmg`
- **Linux**: `OpenList-Desktop_x.x.x_{arch}.deb` or `OpenList-Desktop_x.x.x_{arch}.rpm`
2025-06-26 15:09:20 +08:00
#### 2. Build from Source
```bash
# Clone the repository
git clone https://github.com/OpenListTeam/openlist-desktop.git
cd openlist-desktop
# Install dependencies
2025-07-03 11:56:16 +08:00
yarn install
2025-06-26 15:09:20 +08:00
# Prepare development environment
2025-07-03 11:56:16 +08:00
yarn run prebuild:dev
2025-06-26 15:09:20 +08:00
# Build the application
2025-07-03 11:56:16 +08:00
yarn run build
yarn run tauri build
2025-06-26 15:09:20 +08:00
```
### Installation Steps
#### Windows
2025-07-12 14:22:08 +08:00
##### Installation via Installer
2025-06-28 13:06:32 +08:00
1. Download the `.exe` installer
2025-06-26 15:09:20 +08:00
2. Run the installer as Administrator
3. Follow the installation wizard
4. Launch from Start Menu or Desktop shortcut
2025-07-12 14:22:08 +08:00
##### Winget
```bash
winget install OpenListTeam.OpenListDesktop
```
2025-06-26 15:09:20 +08:00
#### macOS
1. Download the `.dmg` file
2. Open the DMG and drag OpenList Desktop to Applications
3. Right-click and select "Open" (first time only)
4. Grant necessary permissions when prompted
#### Linux
2025-06-28 13:06:32 +08:00
1. Download the `.deb` or `.rpm` package
2. Use your package manager to install:
```bash
sudo dpkg -i OpenList-Desktop_x.x.x_amd64.deb
# or
sudo rpm -i OpenList-Desktop_x.x.x_amd64.rpm
```
2025-06-26 15:09:20 +08:00
## 🚀 Usage
### First Launch
2025-07-03 11:56:16 +08:00
> **Note**: It is recommended to run OpenList Desktop with Administrator privileges on first launch to ensure proper service installation and configuration.
2025-06-26 15:09:20 +08:00
1. **Initial Setup ** : On first launch, the application will guide you through initial configuration
2. **Service Installation ** : Install the OpenList service when prompted
3. **Storage Configuration ** : Configure your first cloud storage connection
### Basic Operations
#### Starting Services
2025-06-28 13:06:32 +08:00
```bash
2025-07-03 11:56:16 +08:00
Dashboard → Quick Actions → Start OpenList Core
2025-06-26 15:09:20 +08:00
Dashboard → Quick Actions → Start Rclone Backend
```
#### Adding Cloud Storage
1. Navigate to **Mount ** tab
2. Click **Add Remote ** button
3. Configure storage settings:
- **Name**: Unique identifier for your storage
- **Type**: Storage provider (WebDAV)
- **URL**: Storage endpoint URL
- **Credentials**: Username and password
- **Mount Point**: Local directory path
4. Click **Save ** and **Mount **
#### Monitoring Operations
- **Service Status**: Check the dashboard for service health indicators
- **Logs**: Use the Logs tab to monitor system operations
- **Performance**: View uptime and response metrics on the dashboard
### Advanced Features
#### Auto-mounting Configuration
```javascript
// Configure storage to mount automatically on startup
{
"autoMount": true,
"extraFlags": ["--vfs-cache-mode", "full"],
"mountPoint": "/mnt/cloudstorage"
}
```
#### Custom Rclone Flags
Add custom Rclone flags for optimal performance:
2025-07-08 17:37:37 +08:00
- `--vfs-cache-mode=full` : Enable full VFS caching
- `--buffer-size=256M` : Increase buffer size
- `--transfers=10` : Concurrent transfer limit
2025-06-26 15:09:20 +08:00
#### System Tray Operations
- **Right-click tray icon** for quick actions
- **Double-click** to show/hide main window
## ⚙️ Configuration
### Application Settings
#### OpenList Service Configuration
```json
{
"openlist": {
"port": 5244,
2025-07-17 15:22:29 +08:00
"data_dir": "",
2025-06-26 15:09:20 +08:00
"auto_launch": true,
2025-08-25 15:28:00 +08:00
"ssl_enabled": false
2025-06-26 15:09:20 +08:00
}
}
```
#### Rclone Configuration
```json
{
"rclone": {
"config": {
"mycloud": {
"type": "webdav",
"url": "https://cloud.example.com/dav",
"user": "username",
"pass": "encrypted-password",
"mountPoint": "C:/CloudDrive",
"autoMount": true,
"extraFlags": ["--vfs-cache-mode", "full"]
}
},
2025-08-25 15:28:00 +08:00
"api_port": 45572
2025-06-26 15:09:20 +08:00
}
}
```
#### Application Preferences
```json
{
"app": {
"theme": "auto",
"auto_update_enabled": true,
2025-07-13 15:52:29 +08:00
"gh_proxy": "https://ghproxy.com/",
"gh_proxy_api": false,
"open_links_in_browser": true,
2025-08-25 15:28:00 +08:00
"admin_password": "",
"show_window_on_startup": false
2025-06-26 15:09:20 +08:00
}
}
```
## 🔧 Development
### Development Environment Setup
#### Prerequisites
2025-06-28 13:06:32 +08:00
- **Node.js**: v22+ with yarn
2025-07-18 14:56:06 +08:00
- **Rust**: Latest nightly version
2025-06-26 15:09:20 +08:00
- **Git**: Version control
#### Setup Steps
```bash
# Clone repository
git clone https://github.com/OpenListTeam/openlist-desktop.git
cd openlist-desktop
# Install Node.js dependencies
2025-06-28 13:06:32 +08:00
yarn install
2025-06-26 15:09:20 +08:00
# Prepare development environment
2025-06-28 13:06:32 +08:00
yarn run prebuild:dev
2025-06-26 15:09:20 +08:00
# Start development server
2025-07-18 14:56:06 +08:00
yarn tauri dev
2025-06-26 15:09:20 +08:00
```
## 🤝 Contributing
We welcome contributions from the community!
2025-06-28 13:06:32 +08:00
2025-06-26 15:09:20 +08:00
## 📄 License
This project is licensed under the **GNU General Public License v3.0 ** - see the [LICENSE ](./LICENSE ) file for details.
---
<div align="center">
<p>Made with ❤️ by the OpenList Team</p>
<p>
<a href="https://github.com/OpenListTeam/openlist-desktop">GitHub</a> •
<a href="https://openlist.team">Website</a> •
<a href="https://t.me/OpenListTeam">Telegram</a>
</p>
</div>