Skip to content

NAL-i5K/genomics-workspace

Folders and files

NameName
Last commit message
Last commit date
Nov 23, 2020
Oct 27, 2020
Jul 1, 2020
Mar 4, 2018
Dec 4, 2019
Sep 25, 2020
Nov 23, 2020
Jul 29, 2019
Dec 4, 2019
Feb 9, 2021
Aug 17, 2018
Sep 26, 2018
Sep 26, 2018
Sep 26, 2018
Sep 26, 2018
May 28, 2018
Jul 23, 2014
Dec 4, 2019
Jun 18, 2018
Jul 17, 2018
Nov 25, 2020
Aug 3, 2018
Nov 25, 2020
Sep 25, 2018
Aug 10, 2018
Aug 2, 2018
Nov 25, 2020
Nov 25, 2020
Jul 23, 2014
Nov 23, 2020
Nov 23, 2020
Nov 25, 2020
Dec 6, 2019
Nov 14, 2018

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 !