One insight when it comes to building note-taking apps with portability in mind is that when you want to build more rich features, like collaboration or backlinking, is that a database is more suitable to build upon than a basic filesystem. But that architectural choice is at conflicts with portability, because while bringing-your-own-file-system is possible with Google Drive and Dropbox, having your own personal database isn't as popular. Anyone share similar sentiments?
Yes and no. A database is just a layer. Using a dedicated database and storing your data in it is simple. But nothing prevents you from storing the data (including relevant metadata) outside of it, and use the database just as a caching-layer for it superior abilities in it's own realm.
Dividing layers is of course more work and has problems of it's own, but works well enough that AFAIK this org-roam here is doing under the hood too.