A desktop app for rclone. Connect cloud storage, browse and move files, run sync and copy jobs, and mount remotes as folders or drives, without installing or configuring rclone yourself.
Orbit ships its own rclone and runs it as a background daemon (rclone rcd) on the loopback interface. The app talks to it through rclone's JSON remote-control API.
- Platforms: Linux (AppImage,
.deb, snap) and Windows (.msi). - Stack: Tauri 2 (Rust), SvelteKit in SPA mode, TypeScript.
- Design: see SPEC.md. Contributor rules are in CLAUDE.md.
- Changes: see CHANGELOG.md. Licence: Apache-2.0.
| Cloud storage | Backup & sync | Settings |
|---|---|---|
![]() |
![]() |
![]() |
Download the file for your system from the latest release. The releases are not code-signed yet, so both Windows and some Linux desktops will ask you to confirm.
chmod +x orbit_1.0.1_amd64.AppImage
./orbit_1.0.1_amd64.AppImageNeeds a 64-bit x86 system with WebKitGTK 4.1 (Ubuntu 22.04 or newer, Fedora 37 or newer, and
similar). AppImages mount themselves with FUSE 2; if your system has only FUSE 3 and the file
refuses to start, run it with --appimage-extract-and-run. To show cloud storage as a folder,
install FUSE 3 (sudo apt install fuse3 on Debian and Ubuntu); Orbit tells you if it is missing.
sudo apt install ./orbit_1.0.1_amd64.debThis pulls in WebKitGTK and the tray library. Orbit then appears in your application menu as
"Orbit for rclone". Install fuse3 as above to use folders.
sudo snap install orbit-rclone # from the Snap Store
sudo snap install --dangerous ./orbit-rclone_1.0.1_amd64.snap # or from a release file
sudo snap connect orbit-rclone:fuse-support # needed for Drives, see belowThe snap is strictly confined. It can reach the network, your home folder and removable media,
and shows its tray icon through the desktop interfaces. Showing storage as a folder needs
fuse-support, which the store does not connect automatically yet, so run the snap connect
line above once; without it the Folders page says FUSE is unavailable. Everything else works
without it. Inside the snap, "Start Orbit when I sign in" uses the snap's own autostart entry.
The snap is called orbit-rclone (the name orbit was taken on the store); the app still shows
up as "Orbit for rclone", and orbit-rclone on a command line launches it.
Run orbit_1.0.1_x64_en-US.msi. Windows 10 or 11, 64-bit; WebView2 is already present on current
systems. Because the installer is not signed, SmartScreen may show "Windows protected your PC":
click More info, then Run anyway. Orbit installs per machine and adds a Start menu entry.
Drives need WinFsp. To show cloud storage as a drive letter in File Explorer, install WinFsp (free, one minute). Orbit does not bundle it; the Drives page prompts for it with a download button and a "Check again" button once it is installed. Everything else (browsing, transfers, backups) works without it.
Install the new file over the old one. Settings, backups, remembered drives and the rclone config stay in the app data folder (see Where your data lives).
| Area | Status |
|---|---|
| rclone lifecycle: start, health check, restart with backoff, clean stop, no orphan on crash | Done, tested with a real rclone |
| Tray with synced, syncing and disconnected icons; white or dark set by system theme | Done (Linux run; Windows icons compile-checked only) |
| Splash: full intro (about 5.5 s) on first launch and after an update, short (1.5 s) otherwise, or off; skippable; reduced-motion aware | Done; timings tested, not reviewed by eye |
| Plain-language UI with Windows or Linux wording, lucide icons, error details behind "Show details" | Done; checked in screenshots of the built UI with fake data |
| Remote wizards: Google Drive, OneDrive, Dropbox (browser sign-in), S3-compatible, SFTP, network shares (SMB) | Done. Browser sign-in is tested up to the callback only, see below. SMB is tested for parameter handling and failure messages, not against a live server |
| Connection test, edit, rename, delete, status badges (up to date, syncing, disconnected) | Done |
| File browser: list, folders, multi-select, new folder, rename, delete | Done, tested with rclone's alias backend |
| Upload (picker or drag and drop), download, copy and move between remotes | Done, tested |
| Transfer queue with progress, speed, ETA and cancel; concurrency from settings | Done, tested |
| Sync and copy jobs with run history (last 20 runs), logs, error counts | Done, tested |
| Scheduled jobs: every N minutes or hours, or daily at a time, while Orbit is open | Done, tested against a real rclone |
| Mount and unmount (Linux via FUSE 3; Windows via WinFsp with a drive letter) | Done on Linux, tested with a real FUSE mount. Windows not run |
| Settings: theme, concurrent transfers, custom rclone path, log level, intro animation, start at sign-in | Done; start at sign-in not run on a real desktop |
| Remembered drives and folders, reconnected automatically at startup | Done; store tested, reconnection not run on a real desktop |
Packaging: AppImage and .deb, named orbit_<version>_… |
Built in CI on every push |
Packaging: .msi, named orbit_<version>_… |
Built in CI on Windows on every push; not installed on a real machine |
Out of scope for v0.2 (see SPEC §9): cron-style schedules and missed-run catch-up, bisync, conflict handling, the advanced remote editor, auto-update, macOS.
Please read this before relying on v0.2:
- Real cloud accounts. Google Drive, OneDrive and Dropbox sign-in was not completed against live accounts, since none were available. The flow was tested up to rclone's local callback: a bogus code makes rclone report the failure, the call returns, and no stub remote is left behind. S3 and SFTP were tested for their parameter handling and their failure messages, not against live servers.
- Windows at runtime. The Rust tests (including the integration tests against a real rclone, the kill-on-close job object and the no-console spawn path) run on Windows in CI and pass, and the
.msibuilds there. The app itself has not been launched on a Windows desktop: the tray, windows, WinFsp mounting, start-at-sign-in and the installer are unverified by eye. - Look and feel. Pages were reviewed from screenshots of the built UI rendered in Chromium with fake data, not in the real Tauri window.
- GNOME tray. On GNOME, tray icons need the AppIndicator extension. Without it, the tray icon will not appear, though the app still works.
Linux (Debian or Ubuntu):
sudo apt install build-essential pkg-config curl unzip \
libwebkit2gtk-4.1-dev libjavascriptcoregtk-4.1-dev libsoup-3.0-dev \
libgtk-3-dev librsvg2-dev libayatana-appindicator3-dev \
fuse3 # for mounting remotesThen install Rust (stable) and Node.js 22 or newer.
Windows:
- Rust with the MSVC toolchain, Node.js 22 or newer, and PowerShell.
- WebView2 (already installed on current Windows 10 and 11).
- WinFsp to mount remotes. Orbit prompts for it and does not bundle it.
npm install
scripts/fetch-rclone.sh # Windows: scripts\fetch-rclone.ps1
npm run tauri dev # run the appThe fetch script downloads the rclone version pinned in scripts/rclone-version.txt from downloads.rclone.org. It checks the archive against the published SHA256SUMS before installing it into src-tauri/binaries/. Those binaries are not committed.
cargo test --manifest-path src-tauri/Cargo.toml # unit and integration tests
npm run check # svelte-check, strict TypeScript
npm test # vitestIntegration tests run a real rclone rcd. They use the sidecar in src-tauri/binaries/, or an rclone on PATH, or the path in ORBIT_TEST_RCLONE. They skip with a message when none is found. Mount tests skip when FUSE is missing.
npm run bundle:linux # fetch rclone, then AppImage and .deb
npm run bundle:windows # fetch rclone for Windows, then .msi (run on Windows)Outputs go to src-tauri/target/release/bundle/, named orbit_<version>_… (the scripts rename Tauri's "Orbit for rclone_…" files; the display name is unchanged).
- App icon:
npx tauri icon assets/orbit-icon.pngwrites intosrc-tauri/icons/. - Tray icons:
assets/tray-icons-v2/gen.pymakes all sizes and the.icofiles. It needscairosvg,numpyandPillow. Run it from insideassets/tray-icons-v2/.
| Path | Purpose |
|---|---|
src-tauri/src/rclone/ |
Process supervision, RC client |
src-tauri/src/remotes/ |
Provider wizards, rclone config operations, sign-in |
src-tauri/src/files/ |
Browsing, transfer queue |
src-tauri/src/jobs/ |
Sync and copy jobs, run history |
src-tauri/src/mounts.rs |
Mounting, FUSE and WinFsp checks |
src-tauri/tests/ |
Integration tests against real rclone |
src/routes/ |
Screens (splash, overview, remotes, browse, sync, mounts, settings) |
src/lib/ |
Typed API layer, stores, components, helpers |
Everything is under the Tauri app data folder: ~/.local/share/com.orbit.rclone on Linux and %APPDATA%\com.orbit.rclone on Windows.
rclone.confis rclone's own config. It is the only place credentials are stored. Orbit does not keep its own copy.settings.json,jobs.jsonandmounts.jsonhold preferences, backup definitions and remembered drives, with no secrets.logs/holds the rclone log and one log per job run.
- Drives and folders end when Orbit quits. Ones marked "connect automatically" come back once Orbit is running and its engine is up.
- Scheduled jobs run only while Orbit is open. A run that was due while Orbit was closed is not made up, and nothing runs on login.
- Deletes are permanent. Orbit does not use a provider's trash.
- A job's error list shows each new error as it appears, not every error from the run.
- Browser sign-in uses rclone's shared OAuth client IDs, so providers may rate-limit heavy use.
- The rclone that ships with Orbit is what it runs by default. If you choose a custom rclone, a snap-packaged build may not be able to write to the app data folder.
- The WinFsp installer is not bundled. See SPEC §6.
Every push runs CI (tests and a launch-and-quit smoke test on Linux, bundles on Linux and Windows,
the snap). Pushing a tag v* additionally creates a GitHub Release with the AppImage, .deb,
.snap and .msi attached, once the test jobs are green.
Orbit is released under the Apache License 2.0, copyright 2026 QuietByte. See NOTICE for the bundled third-party software.
- rclone, MIT licence, bundled unmodified as a separate sidecar binary and run as a background process. Orbit is not affiliated with the rclone project.
- Inter typeface, SIL Open Font License 1.1, bundled in
static/fonts/with its licence file.
See SPEC §9.


