@diffrentcolours I didn't do that, but I did a git friendly thing that is basically a single table with one (yaml) file per entry.What I did was to create commands¹ to create, edit and delete an entry, and each of them then updates a local cache (in my case xapian) that is used for searches etc. There is a git hook to update the cache after git operations. And then there is a command to regenerate the cache from the yaml files, that I run now and then, just to be sure.There was a vague idea to also add a SQLite cache: the whole architecture supports it (but it would probably still be a single table), but I never found the time do actually do it.Maybe it can give you ideas if you end up having to write something yourself¹ I wrote a library and command line commands, a friend used the library to write a GUI