Syncthing is great, I've used it for years to sync all my stuff and it has always been solid. I even use it on my kindle fire tablet (there's a Syncthing app in F-droid).
My only annoyance with Syncthing is when I reinstall an OS on one of my machines. Let's say I'm syncing files between my main workstation, two laptops, a phone, and a cloud backup. Now I want to reinstall the OS on one of the laptops. When I install syncthing on that machine, it gets a new ID. I can make it join the sync swarm but all the other members will think it's a new machine and won't trust it so I have to go to each of the other machines and manually remove the "old" laptop and bring in the "new" one.
I keep a backup of Syncthing configs and then re-use it. Config.xml can even be manually edited to fix directory paths.
~/.config/syncthing in Linux, the pem files and config.xml. Similarly in Windows too (from C:\Users\<username>\AppData\Local\Syncthing).
Even in Android, you can export and back-up. When you are switching to new device, copy from the back-up and then import.
My only annoyance with Syncthing is when I reinstall an OS on one of my machines. Let's say I'm syncing files between my main workstation, two laptops, a phone, and a cloud backup. Now I want to reinstall the OS on one of the laptops. When I install syncthing on that machine, it gets a new ID. I can make it join the sync swarm but all the other members will think it's a new machine and won't trust it so I have to go to each of the other machines and manually remove the "old" laptop and bring in the "new" one.