Skip to content

Commit 87e45fd

Browse files
authored
docs: add feature comparison table to README (#114)
## What Adds a **How Driven compares** section near the top of the README (right after the intro blurb, before Install), with a 14-row Markdown table comparing Driven against five alternatives: **rclone, Google Drive for desktop, Duplicati, restic, and Backblaze Personal Backup**. The framing leads with Driven's honest niche - a native cross-platform desktop app pairing end-to-end encryption with one-way backup to a cloud you already own, plus battery/metered-network awareness and gitignore-aware excludes - and openly marks where Driven is thinner today (single backend, no block-level dedup, per issue #34). ## Driven cells verified against the code/docs on main - Point-in-time restore-by-date: wired end-to-end (`restore.rs` `as_of`, migration `0006_file_versions.sql`, UI `restore.ts` `asOf` + per-source versioning setting). - VSS locked-file backup: shipped (README Features + `driven-vss`). - E2E encryption (XChaCha20-Poly1305, BIP39 recovery phrase), gitignore-aware excludes, battery/metered/offline + sleep awareness, in-app restore browser, auto-update stable/dev, MIT OR Apache-2.0, local SQLite state, Win/mac/Linux: all confirmed in README Features and the crates. - Marked **No** honestly: multiple storage backends and block-level dedup are post-v1 backlog (#34), not shipped. ## Competitor sources checked (2026) - **rclone** - crypt = client-side/zero-knowledge encryption; `bisync` two-way; CLI (GUIs are third-party, e.g. RcloneView); no native versioning/point-in-time restore; no battery/metered awareness. https://rclone.org/crypt/ , https://rclone.org/bisync/ , https://github.com/rclone/rclone - **Google Drive for desktop** - mirror/stream, two-way sync; server-side encryption (CSE only for eligible Workspace admin configs, not consumer); Windows/macOS only (Linux via third-party). https://support.google.com/drive/answer/13401938 , https://workspaceupdates.googleblog.com/2022/06/synchronize-cse-files-with-drive-for-desktop.html - **Duplicati** - AES-256 client-side encryption, file versioning, block-level dedup, Windows VSS, local web UI (runs as a service). https://duplicati.com/ , https://www.cloudwards.net/review/duplicati/ , https://docs.duplicati.com/ - **restic** - AES-256 client-side encryption, snapshots (point-in-time), chunk dedup, `--use-fs-snapshot` for Windows VSS, CLI (GUI via third-party Backrest), cross-platform. https://restic.net/ , https://restic.readthedocs.io/en/stable/040_backup.html , https://github.com/restic/restic - **Backblaze Personal Backup** - backs up to Backblaze's own cloud; optional user private key (passphrase entered server-side on restore); 30-day version history (extendable to 1yr/Forever); Windows/macOS only. https://www.backblaze.com/cloud-backup/personal , https://www.backblaze.com/cloud-backup/features/backup-encryption , https://www.backblaze.com/cloud-backup/features/extended-version-history ## Conventions LF endings, pure ASCII (`file` reports "ASCII text"), no em-dashes. Competitor negatives and Driven's own gaps all carry one-line footnotes, plus a "verified 2026-07" note. No CI markdown-lint gate exists in this repo. Do not merge yet - flagged for review. 🤖 Generated with [Claude Code](https://claude.com/claude-code) https://claude.ai/code/session_01LQMbCLUj5JT2e35qQMvsyA
1 parent 3c6b029 commit 87e45fd

1 file changed

Lines changed: 56 additions & 0 deletions

File tree

README.md

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,62 @@ guide to creating that credential in the Google Cloud Console:
1818

1919
![The credentials step with an expanded, numbered walkthrough for creating a Google OAuth client ID and secret.](docs/screenshots/oauth-walkthrough-dark.png)
2020

21+
## How Driven compares
22+
23+
Driven is a native desktop app that pairs end-to-end encryption with one-way
24+
backup to a cloud you already own, plus laptop-friendly touches (gitignore-aware
25+
excludes, battery and metered-network awareness) that CLI backup tools and
26+
consumer sync clients skip. Where it is thinner today (more backends,
27+
block-level dedup) is marked honestly below.
28+
29+
Legend: :white_check_mark: yes   :large_orange_diamond: partial (see note)   :x: no
30+
31+
| Capability | Driven | rclone | Drive for desktop | Duplicati | restic | Backblaze |
32+
| --- | :---: | :---: | :---: | :---: | :---: | :---: |
33+
| One-way backup, source stays the source of truth | :white_check_mark: | :large_orange_diamond:¹ | :x:² | :white_check_mark: | :white_check_mark: | :white_check_mark: |
34+
| Automatic background sync (file-change watcher) | :white_check_mark: | :x:³ | :white_check_mark: | :x:³ | :x:³ | :white_check_mark: |
35+
| Resumable, crash-safe transfers | :white_check_mark: | :large_orange_diamond:| :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: |
36+
| Backs up to storage you own / control | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :white_check_mark: | :x:|
37+
| No account with the tool's vendor, no vendor servers | :white_check_mark: | :white_check_mark: | :x: | :white_check_mark: | :white_check_mark: | :x: |
38+
| Choice of multiple storage backends | :x:| :white_check_mark: | :x: | :white_check_mark: | :white_check_mark: | :x: |
39+
| End-to-end (client-side) encryption | :white_check_mark: | :white_check_mark: | :x:| :white_check_mark: | :white_check_mark: | :large_orange_diamond:|
40+
| Encrypted file names, not just contents | :white_check_mark: | :white_check_mark: | :x: | :white_check_mark: | :white_check_mark: | :x: |
41+
| Recovery phrase for the encryption key | :white_check_mark: | :x:| :x: | :x:| :x:| :x:|
42+
| Point-in-time restore (an earlier version by date) | :white_check_mark: | :x: | :large_orange_diamond:¹⁰ | :white_check_mark: | :white_check_mark: | :white_check_mark:¹¹ |
43+
| Block-level deduplication | :x:| :x: | :x: | :white_check_mark: | :white_check_mark: | :x: |
44+
| Locked / open-file backup (Windows VSS) | :white_check_mark: | :x: | :large_orange_diamond:¹² | :white_check_mark: | :white_check_mark: | :white_check_mark: |
45+
| Periodic integrity re-verification | :white_check_mark: | :large_orange_diamond:¹³ | :x: | :white_check_mark: | :large_orange_diamond:¹³ | :large_orange_diamond:¹³ |
46+
| Automatic battery / metered-network / sleep awareness | :white_check_mark: | :x: | :x: | :x: | :x: | :x:¹⁴ |
47+
| Per-source include/exclude incl. .gitignore | :white_check_mark: | :large_orange_diamond:¹⁵ | :x: | :large_orange_diamond:¹⁵ | :large_orange_diamond:¹⁵ | :large_orange_diamond:¹⁵ |
48+
| Native desktop GUI app | :white_check_mark: | :x:¹⁶ | :white_check_mark: | :large_orange_diamond:¹⁷ | :x:¹⁶ | :white_check_mark: |
49+
| In-app file search + selective restore | :white_check_mark: | :x: | :white_check_mark: | :white_check_mark: | :large_orange_diamond:¹⁸ | :white_check_mark: |
50+
| Open source (permissive license) | :white_check_mark: | :white_check_mark: | :x: | :white_check_mark: | :white_check_mark: | :x: |
51+
| Cross-platform desktop (Windows, macOS, Linux) | :white_check_mark: | :white_check_mark: | :x:¹⁹ | :white_check_mark: | :white_check_mark: | :x:¹⁹ |
52+
53+
Notes:
54+
55+
- ¹ rclone is a general-purpose sync/copy engine (including two-way `bisync`); backup direction is whatever you script.
56+
- ² Drive for desktop is a two-way sync client, not a one-way backup.
57+
- ³ rclone, restic, and Duplicati back up on a schedule (cron / systemd / built-in scheduler), not from a live file-change watcher.
58+
- ⁴ rclone resumes at file granularity on re-run; mid-file resume of a large object depends on the backend.
59+
- ⁵ Backblaze Personal Backup targets Backblaze's own cloud, not storage you supply.
60+
- ⁶ Google Drive is Driven's only backend today; additional backends and block-level dedup are on the post-v1 backlog ([issue #34](https://github.com/pmaxhogan/driven/issues/34)), not shipped.
61+
- ⁷ Drive uses server-side encryption; client-side encryption exists only for eligible Google Workspace accounts an admin configures, not consumer accounts.
62+
- ⁸ Backblaze defaults to provider-managed keys; a user-set private key is optional, and its passphrase is entered on Backblaze's servers during a web restore.
63+
- ⁹ These tools protect the key with a passphrase you must remember; only Driven generates a BIP39 recovery phrase you can write down to recover the key.
64+
- ¹⁰ Google Drive keeps a limited recent version history; it is not a configurable point-in-time backup.
65+
- ¹¹ Backblaze restores from within a retention window (30 days by default, extendable).
66+
- ¹² Drive for desktop continuously syncs open files but does not take an application-consistent VSS snapshot.
67+
- ¹³ rclone (`check` / `cryptcheck`) and restic (`check`) verify on demand rather than on an automatic schedule; Backblaze runs periodic server-side checks only.
68+
- ¹⁴ Several tools offer manual bandwidth limits or schedules; only Driven automatically defers on battery, metered, or offline networks and resumes on wake.
69+
- ¹⁵ rclone, Duplicati, restic, and Backblaze support custom include/exclude filter rules but not `.gitignore` semantics.
70+
- ¹⁶ rclone and restic are command-line tools; their GUIs are separate third-party projects (for example RcloneView, Backrest).
71+
- ¹⁷ Duplicati runs as a background service with a local web UI plus a tray helper, not a native desktop app.
72+
- ¹⁸ restic search and selective restore are driven from the CLI (or a mounted snapshot), not an in-app browser.
73+
- ¹⁹ Windows and macOS only; Linux needs third-party tools.
74+
75+
Feature sets verified 2026-07; check each project's current docs before relying on a cell.
76+
2177
## Features
2278

2379
- One-way backup to your own Google Drive (no second cloud bill, no two-way

0 commit comments

Comments
 (0)