You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
2 weeks ago | |
|---|---|---|
| .. | ||
| crates | 2 weeks ago | |
| docs | 2 weeks ago | |
| locales | 2 weeks ago | |
| package | 2 weeks ago | |
| src-tauri | 2 weeks ago | |
| ui | 2 weeks ago | |
| .gitignore | 2 weeks ago | |
| CLAUDE.md | 2 weeks ago | |
| Cargo.toml | 2 weeks ago | |
| LICENSE | 2 weeks ago | |
| README.md | 2 weeks ago | |
| build-msix.ps1 | 2 weeks ago | |
| dev-install.ps1 | 2 weeks ago | |
README.md
Cloudreve Desktop
A Windows desktop client for Cloudreve cloud storage, built with Tauri and React. Provides seamless file synchronization using the Windows Cloud Files API.
Features
- Real-time bidirectional file synchronization
- On-demand file hydration (files download only when accessed)
- Windows Explorer integration (context menus, thumbnails, custom states)
- Multiple storage provider support, aligned with Cloudreve server
- System tray application
Prerequisites
For Users
- Windows 10 version 1903 (build 18362) or later
- A Cloudreve server instance
For Developers
- Windows 10/11 with Developer Mode enabled
- Rust toolchain (install via rustup)
- Node.js 18+ and Yarn
- Windows SDK (for MSIX packaging)
Enable Developer Mode:
Settings → Privacy & security → For developers → Developer Mode → On
Install Rust targets for cross-compilation:
rustup target add x86_64-pc-windows-msvc
rustup target add aarch64-pc-windows-msvc
Build & Run
Quick Start (Development)
# Install frontend dependencies
cd ui
yarn install
cd ..
# Run in development mode with hot reload
cargo tauri dev
Release Build
cargo tauri build
The built binary will be at target/release/cloudreve-desktop.exe.
Development Installation (Full Feature Testing)
The basic cargo tauri dev/build only produces the binary. For testing shell integration features (context menus, thumbnails, cloud file states), you need to register the app as an MSIX package.
Using dev-install.ps1
# Build and register for development
.\dev-install.ps1
# Skip build if binary already exists
.\dev-install.ps1 -SkipBuild
# Use custom version
.\dev-install.ps1 -Version "0.2.0"
This script will:
- Build the Tauri application (release mode)
- Copy the binary to
package/ - Update
AppxManifest.xmlwith correct architecture and version - Register the package with
Add-AppxPackage -Register
Unregister Development Package
Get-AppxPackage *Cloudreve* | Remove-AppxPackage
Building MSIX Packages
For distribution, use build-msix.ps1 to create signed MSIX packages.
# Build for both x64 and ARM64, create bundle
.\build-msix.ps1
# Build for specific architecture
.\build-msix.ps1 -Arch x64
.\build-msix.ps1 -Arch arm64
# Skip build (use existing binaries)
.\build-msix.ps1 -SkipBuild
# Custom version
.\build-msix.ps1 -Version "1.0.0"
Output files:
dist/
├── Cloudreve.x64.msix
├── Cloudreve.arm64.msix
└── Cloudreve.msixbundle
Requirements for MSIX Building
- Windows SDK with
makeappx.exe(automatically detected) - For Store submission, packages must be signed with a certificate
Project Structure
├── src-tauri/ # Tauri application shell
├── crates/
│ ├── cloudreve-sync/ # Core sync service
│ ├── cloudreve-api/ # REST client for Cloudreve server
│ └── win32_notif/ # Windows notification utilities
├── ui/ # React frontend (Vite + MUI)
├── package/ # MSIX packaging assets
├── dev-install.ps1 # Dev build + register script
└── build-msix.ps1 # Production MSIX builder
