https://github.com/gustjose/obsidian-syncthing-manager
Control panel for Syncthing. Monitor status, resolve conflicts, and force synchronization on Desktop and Mobile.
https://github.com/gustjose/obsidian-syncthing-manager
obsidian obsidian-plugin sync syncthing
Last synced: 4 months ago
JSON representation
Control panel for Syncthing. Monitor status, resolve conflicts, and force synchronization on Desktop and Mobile.
- Host: GitHub
- URL: https://github.com/gustjose/obsidian-syncthing-manager
- Owner: gustjose
- License: mit
- Created: 2025-11-22T21:23:31.000Z (7 months ago)
- Default Branch: master
- Last Pushed: 2026-02-16T13:46:04.000Z (4 months ago)
- Last Synced: 2026-02-16T21:44:02.021Z (4 months ago)
- Topics: obsidian, obsidian-plugin, sync, syncthing
- Language: TypeScript
- Homepage:
- Size: 7.21 MB
- Stars: 12
- Watchers: 0
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
Control, monitor, and visualize your Syncthing synchronization directly inside Obsidian.

This plugin acts as a bridge to your local Syncthing API, providing real-time file status, a powerful conflict resolver, and tools to keep your vault healthy across Desktop and Mobile devices.
## π Documentation
For full usage guides, installation instructions, and troubleshooting, visit the **[Official Documentation](https://gustjose.github.io/obsidian-syncthing-manager/)**.
---
## β¨ New in v1.1: Visual Sync
Now you can see exactly what is happening with your files without leaving the editor.
- **Tab Status Icons:** Instant feedback on the file you are editing.
- π **Syncing:** Spinning icon indicates the file is being uploaded/downloaded.
- π’ **Synced:** A checkmark appears briefly when synchronization is complete.
- **Smart History:** Know the direction of your data.
- βοΈ **Incoming:** Changes received from a remote device.
- βοΈ **Outgoing:** Local changes sent to other devices.
---
## π Features
- **Real-Time Monitoring:** View your vault status (Synced, Syncing, Disconnected) via the Status Bar or a dedicated Side Panel.
- **Visual Sync:** Tabs show specific icons when files are syncing (π ) or fully synced (π’).
- **Control Center:** Pause/Resume specific folders and see connected devices by name directly in the plugin view.
- **File Versioning:** Configure versioning strategies (Trashcan, Simple, Staggered) and **restore previous versions** of files directly within Obsidian.
- **Conflict Resolver:** Intelligent detection of `.sync-conflict` files with a **side-by-side diff view** for safe resolution.
- **Context Menu Integration:** Right-click any file to force a sync or view its version history.
- **.stignore Editor:** Manage ignored files (like `workspace.json` or `.DS_Store`) directly within Obsidian using built-in templates.
- **History Filter:** Keep your activity log clean by hiding system files from the history view.
- **Mobile Optimized:** Responsive design built to work perfectly on Android.
- **Localization:** Fully translated into πΊπΈ English, π§π· Portuguese (BR), and π·πΊ Russian.
---
## Quick Start
1. **Install:** Use [BRAT](#installation) or download the latest release.
2. **Get API Key:** In Syncthing, navigate to **Actions** > **Settings** > **General** and copy the **API Key**.
3. **Configure:** - Open Obsidian Settings > **Syncthing Manager**.
- Paste your API Key and click **Test Connection**.
- **Important:** Select your **Vault Folder** from the dropdown menu to track events.
---
## π± Android Setup (Critical)
To use this plugin on Android (via _Syncthing-Fork_ or the official app), you must allow local HTTP connections.
> [!WARNING] > **HTTPS Restriction:** Obsidian Mobile cannot connect to self-signed HTTPS certificates on localhost. You **must disable HTTPS** in the Syncthing App settings. Since the address is restricted to `127.0.0.1`, your traffic remains local and secure.
1. Open Syncthing App > **Settings** > **GUI**.
2. Set **GUI Listen Address** to `127.0.0.1:8384`.
3. **Disable** "Use HTTPS for GUI".
- _Note: Ensure you have cleared "GUI Authentication User/Password" fields, otherwise the app may enforce HTTPS._
4. Restart the Syncthing App.
5. In Obsidian Plugin Settings, ensure **Use HTTPS** is toggled **OFF**.
### Alternative: Force HTTP (Environment Variable)
If the above method resets or fails, you can force Syncthing to use HTTP using an environment variable.
> [!CAUTION]
> **Side Effect:** This may cause the Syncthing Android App's native UI to stop loading (showing a blank screen or loading spinner). However, the **background service will still run**, and you can access the full Web UI via your browser at `http://127.0.0.1:8384`.
1. Go to **Settings** > **Troubleshooting** > **Environment Variables**.
2. Add the following variable:
- **Key:** `STGUIADDRESS`
- **Value:** `http://127.0.0.1:8384`
3. Restart the App.
4. If you need to revert, simply delete this variable.
---
## Features Guide
### βοΈ Conflict Resolution
When a sync conflict occurs, a red alert will appear in the Syncthing View.
1. Click the alert to open the **Conflict Resolver**.
2. Select **Compare Content** for a side-by-side comparison.
3. Choose:
- **Keep Original:** Deletes the conflict file.
- **Use Conflict Version:** Overwrites your local file with the remote version.

### π Ignoring Files (.stignore)
Prevent layout issues by ignoring workspace configuration files.
1. Open **Settings** > **Syncthing Manager** > **Edit .stignore**.
2. Use "Add Common Patterns" to quickly ignore `workspace.json`, `.obsidian/workspace`, or OS files like `.DS_Store`.
---
## FAQ & Troubleshooting
**Q: The tab icon is spinning but never turns green.**
- This usually means Syncthing is still scanning or the file is large. Check the Syncthing GUI web panel for detailed progress.
**Q: Plugin status shows "Disconnected".**
- Verify that the Syncthing service is running.
- Ensure the API Key matches exactly.
- On Android, double-check that HTTPS is disabled in the Syncthing App.
**Q: Is it secure to disable HTTPS on Android?**
- Yes. By setting the **GUI Listen Address** to `127.0.0.1`, access is restricted exclusively to applications running locally on that specific device.
---
## Installation
### BRAT (Beta)
1. Install the **BRAT** plugin from the Obsidian Community Store.
2. Add this repository URL: `https://github.com/gustjose/obsidian-syncthing-manager`.
3. Enable **Syncthing Manager**.
---
## Contributing
Contributions are welcome! If you encounter bugs or have feature requests, please open an issue.
- **Build:** `npm run build`
- **Dev:** `npm run dev`
---
## License
This project is licensed under the [MIT License](LICENSE).
Copyright Β© 2025 Gustavo Carreiro.