WARNING! FinishM is very alpha software and not ready for prime time. There are many unfinished parts of it, and many bugs. Please use with care, and don't judge the authors too harshly.
FinishM attempts to improve draft genomes by considering the computational problem to be about finishing, not assembly in the traditional sense.
Metagenome and isolate assemblers generate contigs from reads, but still leave valuable information on the table. FinishM exploits this information to improve/finish a draft genome without any further laboratory-based work.
In even a moderately successful assembly, resultant contigs constitute the vast majority of the genome being sequenced, but this fact is ignored by assemblers. Unlike a traditional assembler FinishM does not attempt to directly extend contigs, but instead focuses on connecting already assembled contigs.
FinishM has several modes:
finishm roundup
. This mode fulfills both the wander
and gapfill
modes.finishm wander
.finishm gapfill
.finishm visualise
.finishm assemble
.First, you'll need Ruby (FinishM is tested on 2.1). Then to install:
gem install finishm
FinishM also has some external dependencies:
gapfilling
/roundup
)visualise
mode)After installation, a listing of the modes and their usage:
finishm
To hack on finishm:
git clone https://github.com/wwood/finishm.git
cd finishm
bundle install
git submodule update --init
cd ext/src
git checkout -b finishm origin/finishm #possibly this step is not required for newer versions of git
make MAXKMERLENGTH=255 finishm velveth velvetg
cp obj/shared/libfinishm.so.1.0 ../../lib/external/
cd ../..
./bin/finishm -h
A manuscript describing the tools described here is currently in preparation. However, FinishM reuses code from velvet, clustalo and BioRuby, so these tools may be worth citing.
Copyright (c) 2012-2015 Ben J. Woodcroft. See LICENSE.txt for further details.