About this project
Havemind is a self-hosted synchronization solution for Obsidian, designed for two or three people sharing one vault. It consists of an Obsidian plugin and a server you host yourself, with no cloud service to sign up for. The plugin runs on macOS, Windows, Linux, iOS, and Android, requiring Obsidian 1.11.4 or newer.
Key features include:
- Real-time sync across devices (changes land in about a second via long-polling)
- Append-only history with full authorship tracking (who wrote what, with colors)
- No silent overwrites: non-overlapping edits merge automatically; conflicting edits are preserved with copies in `Havemind Conflicts/`
- Syncs notes, attachments (up to 25 MB), and appearance settings (themes, snippets, hotkeys, graph settings)
- Device approval via a 6-digit code read aloud over a call (three attempts)
- Multiple vaults per server, storage quotas, and per-device throttling
- Optional encrypted backups (sealed with libsodium crypto_box_seal)
Security relies on Tailscale (WireGuard) for network encryption and access control; the server is only reachable on your private tailnet. The vault is stored in plaintext on the server, so whoever controls the server can read it. End-to-end encryption is intentionally out of scope. The plugin never syncs `.obsidian/plugins/` (code, state, or secrets), and no telemetry or analytics are included.
The server is a deliberately simple Fastify + SQLite application with a content-addressed blob store, running non-root with dropped capabilities. The plugin handles all the intelligence: watching the vault, durable outbox, three-way merges, conflict copies, and activity logging.
For self-hosting, the guide covers Docker Compose + Tailscale setup, including creating a database key secret, running the server, and connecting devices. The repository includes documentation for using Havemind with AI agents (like Claude or MCP), a technical plan, and an MVP spec.
Local verification requires Node.js 22 and npm 10; `npm run verify` runs lint, typecheck, tests, and build.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.