tinyhgvs 0.2.0

Lightweight Rust library for parsing HGVS variants.
Documentation
  • Coverage
  • 48.51%
    49 out of 101 items documented15 out of 15 items with examples
  • Size
  • Source code size: 94.64 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 8.75 MB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 35s Average build duration of successful builds.
  • all releases: 35s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • Homepage
  • svm-zhang/tinyhgvs
    0 0 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • svm-zhang

tinyhgvs

PyPI Python Versions CI License crates.io docs.rs

tinyhgvs is a lightweight HGVS parsing Python library backed by a core parser and structured data and error model implemented in Rust.

Installation

tinyhgvs can be installed directly from PyPI:

pip install tinyhgvs

Quick start

  • A splicing-site substitution crossing an exon/intron boundary:
from tinyhgvs import parse_hgvs

variant = parse_hgvs("NM_004006.2:c.357+1G>A")
print(variant.reference.primary.id)
print(variant.coordinate_system.value)
print(variant.description.location.start.coordinate)
print(variant.description.location.start.offset)
  • An exact repeat is parsed into a structured repeat edit:
from tinyhgvs import parse_hgvs

variant = parse_hgvs("NC_000014.8:g.123CAG[23]")
print(variant.description.location.start.coordinate)
print(variant.description.edit.blocks[0].unit)
print(variant.description.edit.blocks[0].count)
  • Known but unsupported HGVS syntax raises TinyHGVSError with a diagnostic code:
from tinyhgvs import TinyHGVSError, parse_hgvs

try:
    parse_hgvs("NC_000001.11:g.[123G>A;345del]")
except TinyHGVSError as error:
    print(error.code)

Documentation

Please refer to official documents for details about both Python and Rust APIs:

Citation

If you use tinyhgvs in your project, please kindly cite the github repository.

License

tinyhgvs is licensed under the MIT license.