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 findandkbo 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 findmatches 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 mapmaps 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.