Nextcloud is what I ended up using; you get file sync and contact/calendaring in one, and you can also use it to share files "externally" if need be, even flip on the chat module and use it to video-conference instead of zoom if you want.
I'm using sqlite as the backing database mostly because I'm a single user and don't put a ton of files into it. I also disabled every single module I didn't need. It was dog slow until I connected it to redis, which was a real game changer - near instant page loads and file sync. It is running on an ancient SATA SSD in a second-gen i5 laptop.
I switched to Migadu for my primary email which includes CalDav and CardDav. I also run Hydroxide in my K8s cluster for Protonmail syncing on Apple Mail -- I could also switch to that for CalDav and CardDav if I wanted to.
There isn't much I actually need Syncthing for on my phone nowadays. Even if I was back on Android I can't think of much I would need it for -- for my workflows.
> Nextcloud is what I ended up using
Nextcloud has always been one of those projects I appreciate so much but find so bloatey for me as a single user and always end up getting rid of shortly after I install it. I feel like if I had a team of users (work, friends or family) who fully committed to using it then I would love it.
Btw, none of this is meant as a criticism to your setup -- it sounds perfect!
https://www.billdietrich.me/SecureCommunication.html?expanda...
There's also instructions about caldav only on the migadu site here:
I can't remember the ports but if you point a CardDav/CalDav client at cdav.migadu.com they pick up the settings automatically. I've done this on iOS, Android, MacOS and Linux and they all seem to work perfectly for me with Migadu.