{"id":37075121,"url":"https://github.com/pstawinski/pygenebe","last_synced_at":"2026-01-14T08:50:44.723Z","repository":{"id":216366274,"uuid":"741051095","full_name":"pstawinski/pygenebe","owner":"pstawinski","description":"PyGeneBe: A Python client seamlessly integrating with the GeneBe platform, offering efficient annotation of genetic variants through its API, while supporting pandas, VCF file formats, and HGVS parsing","archived":false,"fork":false,"pushed_at":"2025-12-04T15:29:04.000Z","size":3175,"stargazers_count":10,"open_issues_count":2,"forks_count":1,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-12-07T23:44:20.164Z","etag":null,"topics":["acmg-guidelines","bioinformatics","clinvar","genetics","gnomad","hgvs","python","variant-annotations","vep-annotation"],"latest_commit_sha":null,"homepage":"https://genebe.net","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pstawinski.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-01-09T15:46:17.000Z","updated_at":"2025-12-04T15:29:09.000Z","dependencies_parsed_at":"2024-10-28T11:53:22.184Z","dependency_job_id":"c2beebcd-e98e-4fae-9ef7-a2fe203af607","html_url":"https://github.com/pstawinski/pygenebe","commit_stats":{"total_commits":8,"total_committers":2,"mean_commits":4.0,"dds":0.375,"last_synced_commit":"475e4e037337e9204de53d7dc9661739d026ea4c"},"previous_names":["pstawinski/pygenebe"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/pstawinski/pygenebe","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pstawinski%2Fpygenebe","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pstawinski%2Fpygenebe/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pstawinski%2Fpygenebe/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pstawinski%2Fpygenebe/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pstawinski","download_url":"https://codeload.github.com/pstawinski/pygenebe/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pstawinski%2Fpygenebe/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28414695,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-14T08:38:59.149Z","status":"ssl_error","status_checked_at":"2026-01-14T08:38:43.588Z","response_time":107,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["acmg-guidelines","bioinformatics","clinvar","genetics","gnomad","hgvs","python","variant-annotations","vep-annotation"],"created_at":"2026-01-14T08:50:43.626Z","updated_at":"2026-01-14T08:50:44.707Z","avatar_url":"https://github.com/pstawinski.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"## GeneBe Utils\nPyGeneBe: A Python client seamlessly integrating with the GeneBe platform, offering efficient annotation of genetic variants through its API, while supporting pandas, VCF file formats, and HGVS parsing\n\nUsing this client, you can easily annotate your DNA variants with the GeneBe API. Annotations include:\n* Gene, transcript, and effect\n* ClinVar phenotype\n* GnomAD frequency\n* ACMG score\n* ... if you need more, please let me know\n\n### Usage\n\nFor more information about the usage, go to the https://pygenebe.readthedocs.io/en/latest/ documentation.\n\n#### Command line usage\n\nCheck current options using `--help` switch\n\n```\ngenebe --help\ngenebe annotate --help\n```\n\n\n##### Annotating VCF using `annotate` command\n\nPlease use [GeneBe java client](https://github.com/pstawinski/genebe-cli) for VCF annotation. VCF support in Python was not reliable.\n\n##### Using `account` command\n\nThe account command displays information about your request history statistics and limits. To check your limits without specifying a username and API key, run:\n\n```\ngenebe account\n```\n\nAlternatively, if you have a GeneBe account with an API key, use the following command:\n\n```\ngenebe account --username your_username --api-key your_api_key\n```\n\nReplace \"your_username\" and \"your_api_key\" with your GeneBe account credentials.\n\nFor more details and options, you can refer to the help documentation:\n\n```\ngenebe account --help\n```\n\n\n\n#### Python usage\n\nGeneBe makes annotating DNA variants in pandas dataframe easy.\n\n```python\nimport genebe as gnb\nimport pandas as pd\n\ninput_variants = ['7-69599651-A-G']\n\n# annotate variants with transcripts etc. output as a list; use .netrc for user login and api key\nlist = gnb.annotate(input_variants,\nuse_ensembl=True,\n    use_refseq=False,\n    genome=\"hg38\",\n    batch_size=500,\n    use_netrc=True,\n    output_format=\"list\")\n\n\n# output as a pandas dataframe, flat\ndf = gnb.annotate(input_variants,\n    use_ensembl=True,\n    use_refseq=False,\n    genome=\"hg38\",\n    flatten_consequences=True,\n    batch_size=500,\n    use_netrc=True,\n    output_format=\"dataframe\")\n\n\n# parse HGVS, SPDI or other\ninput_variants_parse = [\n    \"chrX:153803771:1:A\",\n    \"22 28695868 AG A\",\n    \"22-28695869--G\",\n    \"22-28695869-G-\",\n    \"NM_000277.2:c.1A\u003eG\",\n    \"NM_000277.2:c.2T\u003eC\",\n    \"AGT M259T\",\n    \"rs1228544607\"]\nparsed_variants = gnb.parse_variants(input_variants_parse, genome=\"hg38\")\n\n# annotate existing dataframe, using it's chr, pos, ref, alt columns and adding new columns\ndf = pd.DataFrame({'chr': ['6', '22'], 'pos': [160585140, 28695868], 'ref': ['T', 'AG'], 'alt': ['G', 'A']})\nannotated_df = gnb.annotate(df,\n    genome='hg38',\n    use_ensembl=False,\n    use_refseq=True,\n    flatten_consequences=True,\n    output_format=\"dataframe\")\n\n\n# lift over variants from hg19 to hg38\ninput_variants = ['chr6-161006172-T-G']\nfrom_genome = \"hg19\"\ndest_genome = \"hg38\"\nlifted_variants = gnb.lift_over_variants(input_variants, from_genome, dest_genome)\n\n\n```\n\nIf you want to annotate thousands of variants, please log in to https://genebe.net, generate an API Key, and provide it using `username` and `api_key` or using the `.netrc` file.\n\nFind out more usage examples in the `examples` directory.\n\n### Installation\nYou can install GeneBe Utils using pip:\n\n```\npip install genebe\n```\n\nIf you wish to install faster `mmh3` implementation or use the option of annotating vcf files install using:\n\n```\npip install genebe[cpp]\n```\n\nor install modules\n\n```\npip install mmh3\n```\n\nin the environment.\n\nThis step will require build tools installed on your computer.\n\n### Docker\nThere is a dockerized version of this package, available at https://hub.docker.com/r/genebe/pygenebe .\n\nUsage example, reading from file `input.vcf` and writing output to `stdout`:\n```\ndocker run -v input.vcf:/tmp/input.vcf --rm genebe/pygenebe:0.0.14 genebe annotate --input /tmp/input.vcf --output /dev/stdout\n```\n\n### Limits\nIf you wish to annotate thousands of variants, please log in to https://genebe.net, generate an API Key, and provide it using username and api_key.\n\nThe number of daily requests from a single IP is restricted to prevent abuse and excessive resource consumption on our server. Account holders with an API Key enjoy significantly higher limits (in the tens of thousands). If you require a higher daily request limit, please reach out to us via the https://genebe.net .\n\n### Troubleshooting and issues\nExperiencing issues? Follow these steps:\n\n1. Check Existing Issues:\n\n* If you encounter problems, explore existing issues on GitHub https://github.com/pstawinski/pygenebe for possible solutions.\n\n2. Report New Issues:\n\n* Unable to find a resolution? You can report the problem by creating a new issue with a clear description and details on https://github.com/pstawinski/pygenebe.\n\nYour feedback is crucial for improving GeneBe client. Thank you for contributing to the community!\n\n### Other\n\nFor more information about GeneBe, visit GeneBe website, https://genebe.net .\n\n\n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpstawinski%2Fpygenebe","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpstawinski%2Fpygenebe","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpstawinski%2Fpygenebe/lists"}