I've been using Joplin for a while now, syncing via Nextcloud.
One tip: I set up a cronjob to export into a Git repository so I have a complete history. The core of the script is:
joplin sync
joplin export --format=raw "$tmpdir"
# Rsync that directory to the repository
# This deletes files that no longer exist in the current export.
/usr/bin/rsync -a --quiet --delete --exclude=.git "$tmpdir/" "./"
/usr/bin/git add -A
One tip: I set up a cronjob to export into a Git repository so I have a complete history. The core of the script is: