#query #sequence-alignment #local #reference #accelerated #spectral #transform

kbo

Spectral Burrows-Wheeler transform accelerated local alignment search

2 releases

new 0.4.1 Jan 9, 2025
0.4.0 Nov 18, 2024

#439 in Text processing

Download history 164/week @ 2024-11-18 4/week @ 2024-11-25 4/week @ 2024-12-16 139/week @ 2025-01-06

143 downloads per month
Used in kbo-cli

MIT/Apache

105KB
777 lines

kbo

Spectral Burrows-Wheeler transform accelerated local alignment search.

kbo is an approximate local aligner based on converting k-bounded matching statistics into a character representation of the underlying alignment sequence.

Documentation is available at https://docs.rs/kbo.

Installation

kbo is distributed as three separate Rust packages:

  • kbo contains a Rust library implementing the core algorithm (this repository).
  • kbo-cli provides a command-line interface for kbo find and kbo map.
  • kbo-gui is a work in progress WebAssembly graphical user interface for running kbo in the browser.

Precompiled binaries for kbo-cli are available from the Releases page.

About

kbo supports two main operations:

  • kbo find matches the k-mers in a query sequence with the reference and reports the local alignment segments found within the reference. Find is useful for problems that can be solved with blast.
  • kbo map maps the query sequence against a reference sequence, and reports the nucleotide sequence of the alignment relative to the reference. Map solves the same problem as snippy and ska map.

kbo uses the Spectral Burrows-Wheeler Transform data structure that allows efficient k-mer matching between a target and a query sequence and fast retrieval of the k-bounded matching statistic for each k-mer match.

License

kbo is dual-licensed under the MIT and Apache 2.0 licenses.

Dependencies

~14MB
~243K SLoC