poka.sh

Docs

VCF

Generated by scripts/gen-format-pages.py from docs/data/format-metadata/, FILE_FORMATS.csv and docs/formats-master.csv. Do not edit by hand: change the source, then run the script.

vCard Contact.

At a glance

Original creator Versit consortium; later the Internet Mail Consortium, CalConnect and the IETF
Purpose An electronic business card: one or more contact records with names, addresses, phone numbers, email and optional photos.
Extensions .vcf
Poka parser poka-vcf
Viewer poka-tree-viewer
Depth tier Parser with a shared viewer (see Depth tiers)
Breadth tier B2 Broad (see Breadth tiers)

How much Poka reads

B2 Broad. The common content of the current and the common older versions is decoded. Some named features or versions are not, and are listed.

Confidence: high (the reviewer read the code and a test that proves the claim). Basis: Reviewed 2026-10-16: parsers/poka-vcf/src/lib.rs (unfolding, quoted-printable, bare and typed parameters, N and ADR splitting, per-card contact summary), unit tests, tests/fixtures (synthetic 2.1 and 3.0) and tests/samples.rs; corpus has 2 real files, both vCard 4.0, so 2.1 and 3.0 rest on synthetic fixtures. Every property of every card appears in the tree; covers 2.1, 3.0 and 4.0.

What Poka does not read

  • PHOTO, LOGO and SOUND values (base64 or URI) are shown as raw text, not decoded or displayed
  • The CHARSET parameter is ignored; input is decoded as lossy UTF-8, so non-UTF-8 vCard 2.1 cards can show wrong characters
  • Property group prefixes (item1.TEL) are not interpreted
  • vCard 4.0 KIND, MEMBER, PREF, ALTID and PID semantics are not interpreted
  • Backslash escapes are resolved on the summary card but not in the tree
  • The summary card covers the first 50 cards and the tree 5000 nodes
  • Only one value per property is used for the display name and card fields (ORG, TITLE)

Background

The Library of Congress says Versit, an initiative of Apple, AT&T, IBM and Siemens, created vCard in 1990. The Internet Mail Consortium took it over in 1996 and CalConnect in 2006. The main versions are 2.1, 3.0 and 4.0 (RFC 6350); 2.1 is not an Internet standard but is widely used, and differs from 3.0 in, among other things, bare parameters and quoted-printable values. Poka unfolds continued lines, reads both bare and typed parameters, decodes quoted-printable values and splits the structured N and ADR values into their named parts. Each card becomes a branch of the tree.

Versions

Version Identifier Poka Note
vCard 2.1 Read
vCard 3.0 Read
vCard 4.0 (RFC 6350) Read
  • vCard file with the long extension (.vcard): Alias of poka-vcf in its plugin.json.

Libraries

Libraries Poka uses or has assessed for this format, with the status, licence and language the registry records.

Sources