People Notes from Contacts
Automatically sync iPhone/Google contacts to Obsidian people notes using vdirsyncer and vcf2md. Eliminate duplicate data entry with this PKM workflow automation.
One of the common practices in PKM is keeping notes about people. Such notes can be referenced using the
@ symbol or simple linking. I have been experimenting with people’s notes and eventually realized the topic is tightly coupled with contacts. The same contacts we keep in our phone’s Contacts apps
People’s notes and contacts are similar. Contacts include information such as name, email, and phone number. A typical person’s note will include the same details. It would further allow us to reference the person easily in our notes.
This redundancy can be eliminated by keeping contacts as the source of truth. Luckily, vdirsyncer allows syncing contacts from cloud directories such as Apple (Personal) and Google (Work) to a local directory. The syncer downloads the contacts as .vcf files, which I convert to Markdown using https://github.com/alc0der/vcf2md. Finally, I use the obsidian-at-symbol-linking to reference these notes.
This system revolves around making contacts the source of truth, but this also means it is not allowed to add details in people’s notes as these will be overwritten—an acceptable tradeoff for me.
To make the process more seamless, create a Taskfile to orchestrate the syncing and conversion. The Taskfile can be invoked using obsidian-shellcommands. My task file looks like this:
tasks:
sync-contacts:
cmds:
- vdirsyncer --config ~/dotfiles/contacts.config sync
- vcf2md --input ~/Contacts --output ./People