|
|
||
|---|---|---|
| .github | ||
| blueprint | ||
| docs | ||
| packages | ||
| scripts | ||
| .gitignore | ||
| .oxfmtrc.json | ||
| .oxlintrc.json | ||
| AGENTS.md | ||
| bun.lock | ||
| CONTRIBUTING.md | ||
| LICENSE | ||
| manifest.json | ||
| modules.json | ||
| package.json | ||
| README.md | ||
| SECURITY.md | ||
| tsconfig.json | ||
| turbo.json | ||
| uni-kv.tgz | ||
| versions.json | ||
Sync Engine
Next-generation syncing plugin for Obsidian vault. Free · Performant · Extensible.
简体中文 • Plugin Store • Notices • License
Introduction
Sync Engine is a revolutionary solution for vault syncing. Its not only a syncing plugin, it is a modular platform that everyone can build upon.
The core ships the infrastructure, and all backends (WebDAV, S3, GDrive) and features (i18n, optimization, sync strategy) come from composable modules. You and your AI agents can build your own modules via convenient SDK, extend the plugin, contribute to community, all without modifying the source code.
There's already a lot of plugins to sync your notes between devices. But the advantage becomes clear with a comparison:
- Remotely Save: full-featured syncing plugins, but currently has optional payment, unmaintained, and 200 unresolved issues.
- All plugins similar to Remotely Save: one plugin owns everything, you use part of it, others worsen the loading time. Vibe-coded / maintenance issues / optional payments possible.
- Syncthing: a great way of P2P syncing, but requires both of your devices to be online, not 24/7.
- Self-hosted Live Sync / Fast note sync: most robust solutions in the room, but require custom server setup.
- Git Integration: ideal for production-level collaboration and provenance, but not suitable for daily usage.
Sync engine is free (MIT License), extensible, community-driven, human curated, AI-friendly, with a highly optimized core.
Notices
📢 Here is a Voting
Here's ongoing polling about new directions in development! I recommend everyone who sees this participate in the 5-second anonymous polling to allow developers to obtain a fair result.
Features
🧰 Complete Basic Features:
- Bidirectional syncing.
- Startup / periodic / save-on-change syncing.
- Conflict resolution strategies (merge / latest survive / keep remote / keep local / skip).
- Advanced rate / memory control options.
- Custom headers.
- You can extend most above features by writing modules.
🖥 Supported Backends:
- WebDAV (
WebDAVofficial module). - S3 (work in progress).
- Google Drive (planned).
- You can effortlessly expand this list by creating custom modules. Contributions welcome!
🧩 Extensible Architecture:
- You can add backends, optimizers, sync triggers, i18n resources, decision strategies, setting entries, custom file processing, and all invoke operations possible in custom modules.
- Documentation (in-progress), AI agent skills (in-progress), and SDK with debug and testing kit are provided.
- Plugin provides dedicated module discovery and management panel UI.
- Repo accepts any module contribution as long as it respects contribution guide.
⚡ Lightening Fast:
- Incremental syncing never uploads the full vault each time.
- Innovative Anchored Asymmetric Storage™ technology substantially accelerates syncing.
- Real-time sync uses cached remote states, allowing it to complete within milliseconds.
- 40 times smaller size than Remotely Save, 20 times faster startup time.
- Handles vaults with more than 3000 files and gigabytes smoothly.
- Highly optimized core sync timing never wastes one millisecond.
- Extensible optimizer slot ensures every request is optimized for your own service.
📦 Module-provided Features:
- Client-side encryption: provided by
Encryptionofficial module. Achieves theoretically higher security and better performance than similar solutions (like Remotely Save), see detail in the encryption specification. - Smart merge: merges documents when conflict is detected, can intelligently identify different languages and code, and applying different strategies.
Install & Setup
Sync Engine v3 is in beta testing, you can install via BRAT:
- Go to Community plugins and search for
BRAT. - Install and enable it.
- Click Add beta plugin and fill
https://github.com/hesprs/obsidian-webdav-syncinto repository. - Select Latest and install + enable Sync Engine.
Configuration:
- Go to plugin settings, find Module management, open the panel.
- Browse and install needed translations and backends.
- Configure your backend, automatic connectivity check is shown as an icon inside Storage backend entry.
- Start your first sync.
Common Questions
What should I do if I get an error during syncing?
You can simply retry the sync. An error does not block later syncs nor corrupt your files.
If the error persists after retrying, please open an issue, describing the error, your setup, with the support log attached.
How should I manage my WebDAV storage when using this plugin?
According to this plugin's file handling strategy, all remote changes will be propagated to all vaults. So it's generally not recommended to manually manage your WebDAV storage unless you intend to add / remove these files. Manual management is more discouraged when you have encryption or asymmetric storage enabled.
Roadmap
Below is a list of planned features and improvements, the faster this plugin is adopted and the star ⭐ grows, the faster the development will be. Also, we welcome contributors that would like to help us with the development of either modules or core.
- v3.0: Rewrite entirely, dynamic module loading, module store, asymmetric storage, and rebrand
- v3.1: Extensible conflict resolution
License
The source code of Sync Engine and modules in this repository are licensed under the MIT License.
The documents in blueprint/ directory and documentation website are licensed under CC BY 4.0 license.
Copyright ©️ 2026 Hēsperus and All Contributors