{"id":16139519,"url":"https://github.com/bergercookie/vcfxplr","last_synced_at":"2025-04-06T17:43:37.372Z","repository":{"id":57663517,"uuid":"480134567","full_name":"bergercookie/vcfxplr","owner":"bergercookie","description":"CLI tool to explore and export data from a VCF / vCard file","archived":false,"fork":false,"pushed_at":"2022-04-13T09:33:28.000Z","size":53,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-15T11:50:25.735Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bergercookie.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null},"funding":{"github":["bergercookie"]}},"created_at":"2022-04-10T20:39:28.000Z","updated_at":"2023-01-21T17:41:05.000Z","dependencies_parsed_at":"2022-09-13T07:00:54.242Z","dependency_job_id":null,"html_url":"https://github.com/bergercookie/vcfxplr","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bergercookie%2Fvcfxplr","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bergercookie%2Fvcfxplr/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bergercookie%2Fvcfxplr/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bergercookie%2Fvcfxplr/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bergercookie","download_url":"https://codeload.github.com/bergercookie/vcfxplr/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247526675,"owners_count":20953141,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-10-09T23:49:14.680Z","updated_at":"2025-04-06T17:43:37.340Z","avatar_url":"https://github.com/bergercookie.png","language":"Python","funding_links":["https://github.com/sponsors/bergercookie"],"categories":[],"sub_categories":[],"readme":"# vcfxplr\n\n\u003ca href=\"https://github.com/bergercookie/vcfxplr/actions\" alt=\"CI\"\u003e\n\u003cimg src=\"https://github.com/bergercookie/vcfxplr/actions/workflows/ci.yml/badge.svg\" /\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/pre-commit/pre-commit\"\u003e\n\u003cimg src=\"https://img.shields.io/badge/pre--commit-enabled-brightgreen?logo=pre-commit\u0026logoColor=white\" alt=\"pre-commit\"\u003e\u003c/a\u003e\n\n\u003ca href=\"https://github.com/bergercookie/vcfxplr/blob/master/LICENSE.md\" alt=\"LICENSE\"\u003e\n\u003cimg src=\"https://img.shields.io/github/license/bergercookie/vcfxplr.svg\" /\u003e\u003c/a\u003e\n\u003ca href=\"https://pypi.org/project/vcfxplr/\" alt=\"pypi\"\u003e\n\u003cimg src=\"https://img.shields.io/pypi/pyversions/vcfxplr.svg\" /\u003e\u003c/a\u003e\n\u003ca href=\"https://badge.fury.io/py/vcfxplr\"\u003e\n\u003cimg src=\"https://badge.fury.io/py/vcfxplr.svg\" alt=\"PyPI version\" height=\"18\"\u003e\u003c/a\u003e\n\u003ca href=\"https://pepy.tech/project/vcfxplr\"\u003e\n\u003cimg alt=\"Downloads\" src=\"https://pepy.tech/badge/vcfxplr\"\u003e\u003c/a\u003e\n\u003ca href=\"https://github.com/psf/black\"\u003e\n\u003cimg alt=\"Code style: black\" src=\"https://img.shields.io/badge/code%20style-black-000000.svg\"\u003e\u003c/a\u003e\n\n## Description\n\nThe goal of the tool is to explore and export data from a `VCF` / `vCard` file.\nIt currently serves two functions:\n\n- Reads the `VCF` file and pretty-prints it to stdout\n- Reads the `VCF` file and dumps it in JSON format.\n\n## Installation\n\nInstall it from `PyPI`:\n\n```sh\npip3 install --user --upgrade vcfxplr\n```\n\nTo get the latest version install directly from source:\n\n```sh\npip3 install --user --upgrade git+https://github.com/bergercookie/vcfxplr\n```\n\n## Example - Usage\n\n- Pretty-print a file: `vcfxplr -c path/to/file.vcf pretty`\n- Write to JSON and dump to stdout: `vcfxplr -c path/to/file.vcf json`\n- Write to JSON and dump to stdout - Use `fullname` to group the items: `vcfxplr -c path/to/file.vcf json -g uid`\n\n## Sample Output\n\nSample execution for `vcfxplr -c ~/Downloads/test.vcf json`\n\n```\n2022-04-13 10:30:59.923 | INFO     | vcfxplr.scripts.main:main:87 - Parsing VCF file -\u003e /home/berger/Downloads/test.vcf\n{\n  \"John Doe\": {\n    \"version\": [\n      {\n        \"value\": \"4.0\"\n      }\n    ],\n    \"email\": [\n      {\n        \"value\": \"john@doe.com\",\n        \"params\": {\n          \"PREF\": [\n            \"1\"\n          ]\n        }\n      },\n      {\n        \"value\": \"john2@doe.com\"\n      }\n    ],\n    \"n\": [\n      {\n        \"value\": \"John  Doe\"\n      }\n    ],\n    \"tel\": [\n      {\n        \"value\": \"+44113712382\",\n        \"params\": {\n          \"TYPE\": [\n            \"home\"\n          ],\n          \"VALUE\": [\n            \"TEXT\"\n          ]\n        }\n      },\n      {\n        \"value\": \"+44113728883\",\n        \"params\": {\n          \"TYPE\": [\n            \"work\"\n          ],\n          \"VALUE\": [\n            \"TEXT\"\n          ]\n        }\n      },\n      {\n        \"value\": \"+44111238885\",\n        \"params\": {\n          \"TYPE\": [\n            \"fax\"\n          ],\n          \"VALUE\": [\n            \"TEXT\"\n          ]\n        }\n      }\n    ],\n    \"uid\": [\n      {\n        \"value\": \"88cb5e2c-30e3-4b2e-b7bd-ce347a3652a7\"\n      }\n    ]\n  },\n  \"Ground Control\": {\n    \"version\": [\n      {\n        \"value\": \"4.0\"\n      }\n    ],\n    \"email\": [\n      {\n        \"value\": \"ground@control.com\",\n        \"params\": {\n          \"PREF\": [\n            \"1\"\n          ]\n        }\n      }\n    ],\n    \"tel\": [\n      {\n        \"value\": \"+1123456789\",\n        \"params\": {\n          \"VALUE\": [\n            \"TEXT\"\n          ]\n        }\n      }\n    ],\n    \"uid\": [\n      {\n        \"value\": \"7d50ef3d-32be-4b3c-a36b-9a083a8d67b6\"\n      }\n    ]\n  },\n  \"another  contact\": {\n    \"version\": [\n      {\n        \"value\": \"4.0\"\n      }\n    ],\n    \"nickname\": [\n      {\n        \"value\": \"contact@gmail.com\"\n      }\n    ],\n    \"n\": [\n      {\n        \"value\": \"another   contact\"\n      }\n    ],\n    \"tel\": [\n      {\n        \"value\": \"+12344566789\",\n        \"params\": {\n          \"VALUE\": [\n            \"TEXT\"\n          ]\n        }\n      }\n    ],\n    \"uid\": [\n      {\n        \"value\": \"bf2439a6-35cb-4d97-970d-bd31486b61e8\"\n      }\n    ]\n  },\n  \"one more contact\": {\n    \"version\": [\n      {\n        \"value\": \"4.0\"\n      }\n    ],\n    \"n\": [\n      {\n        \"value\": \"one  more contact\"\n      }\n    ],\n    \"tel\": [\n      {\n        \"value\": \"+49728392882\",\n        \"params\": {\n          \"VALUE\": [\n            \"TEXT\"\n          ]\n        }\n      }\n    ],\n    \"uid\": [\n      {\n        \"value\": \"99b7de2c-26c7-4655-aa19-74c51a1507b0\"\n      }\n    ]\n  }\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbergercookie%2Fvcfxplr","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbergercookie%2Fvcfxplr","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbergercookie%2Fvcfxplr/lists"}