trulsaa5k downloadsImports contacts from iCloud and manages a note for each contact.
This plugin provides functions to sync contacts from your iCloud account to a folder in your vault. A contact file will look something like this.

lists property (setting "Add iCloud lists to contacts"). This works independently of the group sync filter, so you can filter contacts by list in bases and Dataview without limiting which contacts are synced. The lists property is then managed by the plugin and is not affected by the excluded keys setting.photo file property. The photo file property is then managed by the plugin.![[photo]] line, so you can write anything below it and it will not be overwritten. If you add a size to the line (e.g. |300) it is kept. If you delete the line, it is not added back.dataviewjs block that builds a contact card from the properties of the note. The content is placed below the title and photo. The plugin does not mark the added text in the file. It finds the text again by matching the previous value of the setting exactly, line for line, and only replaces or removes that text. If you edit the added text in a contact file, it is no longer found: it is then not updated or removed when you change or clear the setting, and changed content is added as a new block next to your edited text. If you delete the text from a file it is not added back unless you change the setting. Change the content in the setting, not in the files. Text you added by hand earlier is left alone, but identical text is not added twice.iCloud contacts: Update contacts to sync your contactsNow that you have a folder with all your contacts you can link all your projects to their participants. All your vacation plans to your travel partners. All your meeting notes to the participants.
In addition, you can for example use the dataview plugin to display a table with email and phone number for all the contacts you have referenced in the current file like this.
```dataview
TABLE email, telephone
FROM outgoing([[#]])
WHERE iCloudVCard
```
And you can add this to you daily notes template. Given that the title of your daily notes are formatted like YYYY-MM-DD. Then this will create a list of all your contacts who has a birthday on that day.
```dataview
LIST
FROM "Contacts"
WHERE birthday.day = number(split(this.file.name, "-")[2]) AND birthday.month = number(split(this.file.name, "-")[1])
```
Example of a custom content setting that shows the contact card with a script of your own:
```dataviewjs
dv.view("Resources/Dataview Scripts/Contact Info")
```
This plugin provides two commands. Use the command pallet to search for iCloud contacts and use one of the two commands to update your contacts folder.
The IcloudClient in this codebase is copied and adapted from tsdav.
If you want to support me and my work, you can buy me a coffee.
