Send to

Choose Destination
Bioinformatics. 2017 Mar 1;33(5):751-753. doi: 10.1093/bioinformatics/btw741.

SeqLib: a C ++ API for rapid BAM manipulation, sequence alignment and sequence assembly.

Wala J1,2,3, Beroukhim R1,2,3.

Author information

The Broad Institute of Harvard and MIT, Cambridge, MA 02142, USA.
Bioinformatics and Integrative Genomics, Harvard University, Cambridge, MA 02138, USA.
Department of Cancer Biology, Dana-Farber Cancer Institute, Boston, MA 02115, USA.


We present SeqLib, a C ++ API and command line tool that provides a rapid and user-friendly interface to BAM/SAM/CRAM files, global sequence alignment operations and sequence assembly. Four C libraries perform core operations in SeqLib: HTSlib for BAM access, BWA-MEM and BLAT for sequence alignment and Fermi for error correction and sequence assembly. Benchmarking indicates that SeqLib has lower CPU and memory requirements than leading C ++ sequence analysis APIs. We demonstrate an example of how minimal SeqLib code can extract, error-correct and assemble reads from a CRAM file and then align with BWA-MEM. SeqLib also provides additional capabilities, including chromosome-aware interval queries and read plotting. Command line tools are available for performing integrated error correction, micro-assemblies and alignment.

Availability and Implementation:

SeqLib is available on Linux and OSX for the C ++98 standard and later at SeqLib is released under the Apache2 license. Additional capabilities for BLAT alignment are available under the BLAT license.

Contact: ;

[Indexed for MEDLINE]
Free PMC Article

Supplemental Content

Full text links

Icon for Silverchair Information Systems Icon for PubMed Central
Loading ...
Support Center