Intuitive local web frontend for the BLAST bioinformatics tool
JavaScript Ruby CSS HTML
Latest commit 385b819 Feb 12, 2017 Anurag Priyam Merge remote-tracking branch 'lawrence/feature-generic-errors'
* lawrence/feature-generic-errors:
  Removed the EXTENSION_FILE_NOT_FOUND class
  Removed the redundant DATABASE_DIR_NOT_FOUND class
  Removed the redundant BIN_DIR_NOT_FOUND class
  Added rescue block for ENOENT

Signed-off-by: Anurag Priyam <>
Failed to load latest commit information.
.bootstrap Upgrade to Bootstrap 3.3.5. Aug 16, 2015
LICENSE Switch to GNU AGPL version 3. Feb 23, 2015
bin Merge remote-tracking branch 'lawrence/feature-generic-errors' Feb 11, 2017
docker Move Dockerfile to folder to avoid loading local context Mar 3, 2016
lib Merge remote-tracking branch 'lawrence/feature-generic-errors' Feb 11, 2017
public edits in alignment_exporter Jan 14, 2017
spec Merge remote-tracking branch 'vivek/doctor' Dec 22, 2016
views set query sequence from POST data Nov 16, 2016
.codeclimate.yml Revise front-end and build architecture. Aug 29, 2015
.csslintrc Update codeclimate. Oct 11, 2016
.eslintignore Add .eslintignore. Dec 21, 2016
.eslintrc Update codeclimate. Oct 11, 2016
.gitignore Revise front-end and build architecture. Aug 29, 2015
.mailmap Add .mailmap to correctly aggregate commits from same authors. Feb 5, 2015
.rspec Rubocop! Feb 2, 2015
.rubocop.yml Open results in new page. Aug 7, 2015
.travis.yml Try fixing Travis builds. Jan 5, 2017
COPYRIGHT.txt Switch to GNU AGPL version 3. Feb 23, 2015
Gemfile Rubocop! Feb 2, 2015
LICENSE.txt Switch to GNU AGPL version 3. Feb 23, 2015 README: Point to capybara-webkit's wiki for qt installation. Dec 21, 2016
Rakefile rake spec: Allow excluding tests. Dec 21, 2016 Add Capybara headless testing framework Dec 22, 2014
package.json Build and load CSS from css/. Build assets once. Aug 26, 2016
sequenceserver.gemspec Use license identifier for AGPL as per Oct 10, 2016

build status code climate coverage gem version total downloads

gitter chat

SequenceServer - BLAST searching made easy!

SequenceServer lets you rapidly set up a BLAST+ server with an intuitive user interface for use locally or over the web.

Please cite: Priyam A, Woodcroft BJ, Rai V, Munagala A, Moghul I, Ter F, Gibbins MA, Moon H, Leonard G, Rumpf W & Wurm Y. 2015. Sequenceserver: A modern graphical user interface for custom BLAST databases. biorxiv doi: 10.1101/033142.

Install and configure

Please see

Develop and contribute

You will need Ruby and RubyGems, Node and npm, and CodeClimate. Further, please note that 1.0.x branch contains the stable releases, while the master branch is a work in progress towards next release and may be buggy.


Get source code and install dependencies.

git clone
gem install bundler
cd sequenceserver
npm install

We use capybara-webkit for functional testing, which requires qt to be installed.

We use JSPM (via Node) for front-end package management and building JavaScript and CSS files.

If you are deploying SequenceServer from git you can skip npm install step and skip installing gems used for testing (and qt), etc. by running:

bundle install --without=development

Run, test, build

Launch SequenceServer in development mode. In development mode SequenceServer logs verbosely and uses raw front-end files.

bundle exec bin/sequenceserver -D

Run the specs, lint the code, build front-end and package everything as a gem.


Sometimes you may just want to run the specs or lint the code:

rake spec
rake lint

Using Docker

# With database fasta files inside a folder named db
docker run --rm -ti -p 4567:4567 -v $(pwd)/db:/db wurmlab/sequenceserver