node package manager
Painless code sharing. npm Orgs help your team discover, share, and reuse code. Create a free org »


bionode logo

# bionode-bwa > A Node.js wrapper for the Burrow-Wheeler Aligner (BWA).


NPM version Build Status Coveralls Status Dependency Status Standard style
Gitter chat DOI
Stories in Ready at


Install bionode-bwa with npm:

$ npm install bionode-bwa

To use it as a command line tool, you can install it globally by adding -g .


If you're using bionode-bwa with Node.js, you can require the module:

var bwa = require('bionode-bwa')
// aligment path is optional, reads name used instead with sam suffix 
bwa('reference.fasta.gz', 'reads.fastq.gz', 'alignment.sam')
.on('data', console.log)
var options = {
  operation: 'mem',
  params: '-t 4'
var stream = bwa(options) // Use BWA mem algorithm with 4 threads 
var obj = {
  reference: 'reference.fasta.gz',
  reads: ['reads.fastq.gz']

Please read the documentation for the methods exposed by bionode-bwa.
Check BWA's documentation for the arguments that can be passed.

Command line examples

$ bionode-bwa reference.fasta.gz reads.fastq.gz --alignment out.sam
echo '{"reference": "ref.fasta.gz", "reads": "[p1.fq, p2.fq]"}' | bionode-bwa  -


To contribute, clone this repo locally and commit your code on a separate branch.

Please write unit tests for your code, and check that everything works by running the following before opening a pull-request:

$ npm test

Please also check for code coverage:

$ npm run coverage

To rebuild the documentation using the comments in the code:

$ npm run build-docs

Check the issues for ways to contribute.


Bruno Vieira <> @bmpvieira
For BWA support contact Heng Li


bionode-bwa is licensed under the MIT license.
Check for details.