# Reliable Vault Sync Reliable Vault Sync keeps an Obsidian vault synchronized through a private, self-hosted, Git-backed server. It supports desktop and mobile Obsidian without requiring a third-party storage account. > [!WARNING] > This is an early release. Keep independent backups and test a new device with a copy of your vault before relying on it for important data. ## Features - Synchronizes Markdown files, attachments, themes, snippets, plugin packages, and plugin settings. - Sends local changes immediately while Obsidian is open. - Receives revision notifications over WebSocket and reconciles periodically. - Uses incremental manifests so unchanged file contents are not transferred. - Performs Git-style three-way text merges on the server. - Preserves BASE, LOCAL, and REMOTE versions when changes overlap. - Provides an in-Obsidian conflict resolver. - Keeps enabled-plugin lists platform-specific. - Ignores workspace state and transient operating-system metadata. - Runs on Windows, macOS, and mobile Obsidian. ## Requirements - Obsidian 1.5.0 or newer. - A [Reliable Vault Sync server](https://github.com/GHloII/reliable-vault-sync-server) reachable over HTTPS. - A server access token. ## Server setup See the [server installation guide](https://github.com/GHloII/reliable-vault-sync-server#install-with-docker-compose) for a complete Docker Compose deployment with automatic HTTPS, persistent storage, health checks, backups, and update commands. ## Installation 1. Open **Settings → Community plugins → Browse**. 2. Search for **Reliable Vault Sync**. 3. Select **Install**, then **Enable**. If the new listing has not reached Obsidian's in-app index yet, install it temporarily through BRAT using `GHloII/reliable-vault-sync`. ## Configuration Open **Settings → Reliable Vault Sync** and enter: - **Server URL**: the HTTPS address of your sync server. - **Vault ID**: the same identifier on every device connected to the vault. - **Access token**: the secret configured on the server. - **Device ID**: a unique stable name for this device. Run **Reliable Vault Sync: Sync now** from the command palette after configuring a device. The plugin itself and its token-bearing `data.json` are deliberately excluded from synchronization. Install Reliable Vault Sync separately on every new device. ## Conflicts Every upload includes the last server revision observed by the device. The server automatically merges non-overlapping text changes. If changes overlap, the canonical server branch is left unchanged and the client preserves all available versions under `_sync_conflicts/`. Open the resolver using the ribbon merge icon, the command palette, or **Settings → Reliable Vault Sync → Conflict resolver**. Binary and delete-versus-modify conflicts are preserved without attempting a text merge. ## Mobile behavior Mobile Obsidian synchronizes while the app is active and catches up when it is opened again. iOS may suspend network activity after Obsidian leaves the foreground, so continuous background synchronization is not available from a community plugin alone. ## Network and privacy disclosure Reliable Vault Sync uses the network because synchronization is its primary function. It connects only to the server URL configured by the user and sends the vault files and supported Obsidian configuration selected by the synchronization rules. - The access token is stored in the plugin's local Obsidian settings and is not synchronized by this plugin. - The plugin contains no telemetry, analytics, advertisements, or third-party tracking. - The current compatible server stores vault contents in plaintext inside its Git repository. - Use HTTPS and a long random access token. - End-to-end encryption is not implemented in this release. ## License [MIT](LICENSE)