Obsidian Notes Multi Platform Sync
For when the git plugin just isn’t good enough
If you ever tried setting up syncing across iOS, Linux, and Windows versions of Obsidian, you will know that with the git plugin, it is a miserable experience. You are wasting more time solving git conflicts than setting up the notes structure you won’t follow anyway.
There are a few ways to accomplish seamless sync; one is the easy one, Obsidian Sync. At the time of writing, it is 4$ per month. I haven’t tried it, but I would believe it works well (monthly subscriptions are my enemy). The other one uses another community plugin called Fast Note Sync. The caveat is that you need a server; I already have one on Hetzner, so I’ll use that one, but you can use any server for which you are an admin.
Get Valentin Vareskic’s stories in your inbox
Join Medium for free to get updates from this writer.
With that out of the way, here is the list of things you will need:
- ssh access to the server,
- firewall access,
- Docker & docker compose,
- and know how to exit Vim.
Let’s start: open up your terminal and connect to the machine. After you are there, make a new directory; we can call it notes. In that directory, create two more: config and storage.
mkdir notes notes/storage notes/configAs we are using docker compose, we will create a docker-compose.yml
version: '3'
services:
fast-note-sync-service:
image: haierkeys/fast-note-sync-service:latest
container_name: fast-note-sync-service
restart: always
ports:
- "9000:9000"
volumes:
- ./storage:/fast-note-sync/storage
- ./config:/fast-note-sync/configJust make sure that the port you specify is free. Save the file, and now we are ready to deploy it. This will build the fast note sync server, accessible at http://yourserver:9000.
docker compose up --buildAfter it is up and running, go to the address, and you will see a login/registration screen. Create a user. After you create the user, we have to stop the server.
docker compose downWe have to stop so that we can disable the registration on the page. Right now it’s open for anyone who has the address.
vim notes/config/config.yamlSearch for register-is-enabled:true, and change it to false. That block should look like this.
user:
register-is-enabled: false
admin-uid: 1The only thing left to do is to install the plugin in Obsidian and enable it. So in Obsidian, go to community plugins, search for “Fast Note Sync”.
After you install it, click on enable. Go to your fast note server, login and go to vault click on the plus sign “Add Vault”.
Name your vault and then you’ll see a button “Authorize Obsidian”, after clicking on that button, you’ll be able to choose your platform, choose generate token and another window pops up with the option to “One Click Auto Import”. Select that option and let the magic happen.
And that’s it: no subscription (other than the server), no git conflicts, real time sync between all devices, fafb (fast as fuck boy), set it up once and forget about it.
If you have any questions, feel free to post a comment here;
I’ll try to help to the best of my abilities.




