Power Plugins1k downloadsSync your vault to your own Dropbox, OneDrive, or Google Drive, and share folders or notes with other people, with optional end-to-end encryption.
Sync your vault using storage you already pay for: Dropbox, OneDrive, or Google Drive. Works on Windows, macOS, Linux, iPhone, iPad, and Android. No sync subscription, no size tier to outgrow, and no third-party server in the middle.
Your notes go straight from Obsidian to your own storage and nowhere else. You can also encrypt everything so the provider itself cannot read a word.
Your vault lives in one folder in your own cloud storage, in an app you create under your own account. Power Connect can only see that folder, never the rest of your files.
Each device keeps a private record of what both sides last agreed on, so a sync only moves what actually changed. Clock differences between machines never matter, renames are a cheap move rather than a re-upload, and an edit on one side always beats a delete on the other: the edited file is restored, never silently dropped.
All three use the same engine, the same encryption choices, and the same setup.
Enable the plugin and a wizard opens. It walks you through picking your storage, creating your own app and signing in, naming the folder for this vault, and choosing how private you want it. Then it previews the first sync so you can see the exact plan before anything moves.
Privacy is chosen once, up front, with three levels:
Set up the first computer, then press Add another device for a setup code. On each new device, install Obsidian and Power Connect, paste the code, sign in, and let it run. Files that already match pair up by content with nothing re-transferred.
That manual install is the only one a device ever needs. After that the fleet maintains itself: update Power Connect or change a setting on one device and sync carries it to the rest.
Everything works, including sign-in. iOS does not let plugins run in the background, so Power Connect syncs while Obsidian is open: on launch, the moment you return to the app, on a schedule, and after your edits settle. Reopening the app catches up within a second or two.
On start, the moment Obsidian comes back into view, after your edits settle, on a schedule, and on demand from the ribbon, command palette, or status bar. With Dropbox on desktop there is also a live connection, so another device's upload lands here within seconds; OneDrive and Google Drive use the schedule.
.gitignore. Newly excluded files are left alone on both sides, never deleted.workspace.json next to your open tabs and pane layout, which is exactly why that file stays per device, so the ribbon alone travels separately. Desktop and mobile keep their own.Plugin settings files often hold API keys, so they only travel encrypted. Without encryption or plugin settings protection they are held back, and the log says so.
If the same file changed in two places, nothing is ever lost.
Identical edits are recognized by content and never conflict at all.
Plugin settings protection encrypts just the settings files that hold API keys, and can be turned on against a folder that already has files in it. Losing that passphrase costs re-entering some plugin settings, not your notes.
Full end-to-end encryption encrypts every file on your device before upload (AES-256-GCM, key from your passphrase). File names stay readable, contents do not. The passphrase never leaves your devices, and losing it makes the cloud copy permanently unreadable, so keep it somewhere safe. It is chosen while the folder is still empty, because mixing plain and encrypted files in one tree is how sync tools corrupt vaults.
Note.md and note.md are treated as the same file, because your storage and your operating system treat them that way.The sync engine is a standalone module with no Obsidian inside, so the tests can run it hard. Unit tests cover every decision the planner can make. A simulation suite then runs the real engine as a fleet of simulated devices against an in-memory cloud, including divergent edits, edit-versus-delete races, mass deletions, crashes injected at every stage, encryption across devices, and randomized fuzzing. Every scenario asserts that all devices end up identical and that no edit was lost.
Around 260 assertions run on every build and in CI before any release.
Power Connect talks only to the storage provider you connect, through an app you register under your own account. No telemetry, no analytics, no third-party server.
api.dropboxapi.com, content.dropboxapi.com, notify.dropboxapi.com, and www.dropbox.com for sign-in.login.microsoftonline.com for sign-in and graph.microsoft.com for files.accounts.google.com and oauth2.googleapis.com for sign-in, www.googleapis.com for files, and a short-lived loopback listener on 127.0.0.1 to catch the sign-in redirect.Credentials never sync. Tokens, the connected account's email, and the encryption passphrase live in per-device storage and are stripped out of data.json before it is written. A settings file that travels to another device carries no sign-in with it.
The community catalog scans a plugin for what it is capable of, which is not the same as what it does with it. Power Connect reports three things.
| What the scan reports | What it is | Where |
|---|---|---|
| Vault enumeration | Listing your files with sizes and modification times, which is the whole of how a sync plugin decides what changed. Nothing reads a file's contents because it appeared in that list; a file is opened only when it is actually being uploaded. | src/main.ts, the manifest and share builders |
| Clipboard access | Writing: four Copy buttons, for the pairing, invite, request, and recovery codes. Reading: three Paste buttons beside the fields those codes go into. All seven are a button you just pressed. | src/main.ts, the setup and pairing panels |
| Local network listener | Google Drive sign-in only. OAuth for a desktop app returns its result to a loopback address, so a server binds to 127.0.0.1 on an ephemeral port, catches the one redirect, and closes. Bound to loopback rather than every interface, so nothing outside your machine can reach it, and a five-minute timer closes it either way. Dropbox and OneDrive never use it. |
src/gdrive.ts gdriveSignIn |
Two fetch calls appear in the built main.js alongside the plugin's requestUrl ones. Both are the mobile branch of a single request helper, going to the same endpoints listed above. There is no eval, no Function constructor, no innerHTML, no code fetched and run at runtime, and no processes started.
With end-to-end encryption on, file contents are encrypted before upload, so the provider stores bytes it cannot read. File and folder names are not encrypted: your vault's structure is still visible, and only what is inside each file is hidden.
Each one works on its own, and they fit together when you have more than one.
MIT
Power Connect is built and maintained by one person. If it earns a place in your daily vault, you can buy me a coffee. Nothing in the plugin is held back either way.