Skip to content

ugoodlfy/genomics-workspace

 
 

Repository files navigation

Genomic-Workspace

Build Status codecov codebeat badge Documentation Status

Genomics-Workspace is a bioinformatic website project created by i5k Workspace. It provides common sequence search services including BLAST, HMMER, and Clustal. To see it in action, please visit following live sites:

Features

Backend

  • Implemented in Python with Django.
  • Supports searches for BLAST, HMMER, and Clustal.
  • Task queue with Celery and RabbitMQ.
  • Use PostgreSQL as database backend.
  • BLAST:
    • Generates several BLAST output formats for download: Text, TSV, XML, ASN.1.
    • Converts BLAST output to GFF3 by grouping contiguous HSPs with identical query sequence, subject sequence, strand direction and an overlap length less than 6 between neighbouring HSPs under the same match.
  • Retrieve previous results with a unique URL for every task.
  • Supports both Linux and MacOS.

Frontend

  • Special BLAST visualization powered by D3.js and JQuery.
    • The results page is an interactive data viewer, query and subject coverage graphs on the top are drawn dynamically on the HTML5 canvas for every high scoring pair (HSP), tabular output from BLAST+ is displayed in a sortable and searchable table on the bottom right, pairwise text output is displayed on the bottom left panel.
    • Fullscreen design dynamically scales to any screen size
    • Dynamically draws a unique query coverage graph and a subject coverage graph for every high scoring pair(HSP) on HTML5 canvas.
    • Interactive graph updates the page as the user mouse over each aligned segment.
    • Graph zoom level and line height are first calculated according to the data and screen size, but can be easily adjusted to user's preference using the sliders on the left and right sides of each graph.
    • Interactive results table updates the page as the user:
      • Mouse over each row.
      • Changes the sorting column.
      • Filters the table using the search box.

Screenshots

BLAST Results BLAST Results

Prerequisite

  • Python 2.7
  • npm
  • RabbitMQ
  • PostgreSQL
  • mod_wsgi (optional, only for production)

Documentation

Docs can be found at genomics-workspace.readthedocs.io.

How to contribute

You're highly encouraged to participate in the development of genomics-workspace. Check the CONTRIBUTING.md first and start contributing !

About

Django website project for common sequence search tools.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 54.3%
  • Python 19.4%
  • CSS 13.7%
  • HTML 10.9%
  • Shell 0.9%
  • Makefile 0.4%
  • Batchfile 0.4%