Credits & references

genomeblocks is a thin, opinionated surface on top of excellent open-source libraries. If a particular module was load-bearing in your analysis, please cite the upstream tool in addition to genomeblocks. The list below maps each module to its dependencies and the canonical citation.

Table of contents

  1. cgranges — interval overlap index
  2. PyRanges — fast genomic interval DataFrames
  3. graph-tool — chromatin-contact networks
  4. lightmotif — Rust-backed PSSM scanning
  5. pybigtools — threaded bigWig reader
  6. At-a-glance map
  7. Citing genomeblocks

cgranges — interval overlap index

Used by Loci for every overlap query (&, -, ^, overlaps, intersect, map) and transitively by Architecture.make when anchoring BEDPE pairs to CREs.

Li, H. (2021). cgranges: a C library for computing genomic interval overlaps. GitHub: lh3/cgranges.

@misc{cgranges,
  author = {Li, Heng},
  title  = {cgranges: A C library for computing interval overlaps on a generic genome},
  year   = {2021},
  url    = {https://github.com/lh3/cgranges}
}

PyRanges — fast genomic interval DataFrames

Used by Loci.nearest(), Loci.to_pyranges(), Genes.nearest_genes(), and anywhere a DataFrame-shaped overlap report is more natural than a raw Loci.

Stovner, E. B. and Sætrom, P. (2020). PyRanges: efficient comparison of genomic intervals in Python. Bioinformatics 36(3): 918–919. doi: 10.1093/bioinformatics/btz615

@article{stovner2020pyranges,
  author  = {Stovner, Endre Bakken and S{\ae}trom, P{\aa}l},
  title   = {PyRanges: efficient comparison of genomic intervals in Python},
  journal = {Bioinformatics},
  volume  = {36},
  number  = {3},
  pages   = {918--919},
  year    = {2020},
  doi     = {10.1093/bioinformatics/btz615}
}

graph-tool — chromatin-contact networks

Architecture is a subclass of graph_tool.Graph. Every network operation — spreading, clique construction, O/E normalization, centrality, block models — is a graph-tool call under the hood. graph-tool is also the only genomeblocks dependency that must come from conda (it’s a compiled Boost/C++ library).

Peixoto, T. P. (2014). The graph-tool python library. figshare. doi: 10.6084/m9.figshare.1164194

@article{peixoto_graph-tool_2014,
  author  = {Peixoto, Tiago P.},
  title   = {The graph-tool python library},
  journal = {figshare},
  year    = {2014},
  doi     = {10.6084/m9.figshare.1164194},
  url     = {https://graph-tool.skewed.de/}
}

If you use block-model inference, community detection, or SBM-based layouts (e.g. arch.partition(), nested SBM plots), please also cite the specific method paper — Peixoto maintains a citation guide for each algorithm.


lightmotif — Rust-backed PSSM scanning

Powers scan_motifs() and the JASPAR-to-counts pipeline. lightmotif’s SIMD-accelerated Rust core makes genome-wide motif scans fast enough to run inside a notebook.

Larralde, M. (2023). lightmotif: PSSM scoring with SIMD in Python and Rust. GitHub: althonos/lightmotif.

@misc{lightmotif,
  author = {Larralde, Martin},
  title  = {lightmotif: A lightweight library for PSSM scoring, with SIMD backends},
  year   = {2023},
  url    = {https://github.com/althonos/lightmotif}
}

pybigtools — threaded bigWig reader

The fast path for loci.signal() and every module that extracts continuous coverage from .bw / .bigWig files. When pybigtools isn’t available, signal falls back to a pure-Python reader — but the threaded Rust backend is the one you want for real work.

Huey, J. (2023). bigtools: A high-performance BigWig and BigBed library in Rust, with Python bindings. GitHub: jackh726/bigtools.

@misc{pybigtools,
  author = {Huey, Jack},
  title  = {bigtools: A high-performance BigWig/BigBed library in Rust with Python bindings (pybigtools)},
  year   = {2023},
  url    = {https://github.com/jackh726/bigtools}
}

At-a-glance map

Module Upstream tool(s)
Loci — overlap / set algebra cgranges, pyranges
Genes — enhancer-to-gene pyranges
Architecture — contact networks graph-tool
Signal — bigWig extraction pybigtools
Motifs — PSSM scanning lightmotif

Citing genomeblocks

If genomeblocks itself is useful, please also cite the repository:

Altintas, U. B. (2024). genomeblocks: Fluent building blocks for regulatory genomics.
https://github.com/birkiy/genomeblocks
@misc{genomeblocks,
  author = {Altintas, Umut Berkay},
  title  = {genomeblocks: Fluent building blocks for regulatory genomics},
  year   = {2024},
  url    = {https://github.com/birkiy/genomeblocks}
}

Copyright © 2024–2026 Umut Berkay Altintas. MIT Licensed.

This site uses Just the Docs, a documentation theme for Jekyll.