My Portfolio

Learn more about my applications and the science behind


Micro NGS pipeline

micro pipeline schema

Background

Next generation sequencing (NGS) is an emerging technique in clinical microbiology with applications ranging from outbreak analysis to genomic surveillance to analysis of unusual pathogens. Often NGS analysis is a fragmented step-wise process or pipelines are specialized for a single application or species. The URMC clinical microbiology pipeline (pipeline) is a robust, quality-controlled, modular process for diverse applications and pathogens. The pipeline was successfully used for a number a diverse projects which have been published.

Technology used

Python (biopython), JavaScript (D3.js, jQuery), HTML, CSS3 (bootstrap)

View poster presented at ASM NGS conference


Splicer

elegant sashimi plot example

Background

All of the cells of your body are composed of proteins. These proteins are called the molecular "building blocks" of organisms. The process of making these proteins starts with the "instructions" stored in the DNA as a gene. These genes are then "rewritten" in the form of RNA. In eukaryotes like you and me, the RNA is processed (and often has a few bits snipped out of it) to make the final product, called a messenger RNA or mRNA. Then the mRNA is "decoded" to build a protein. Any disturbance of this fine-tuned removal of these bits of RNA can result in disease. Splicer allows the researcher to compare a diseased tissue and a non-diseased tissue to see which bits are being removed in each one.

Technology used

JavaScript(D3.js, jQuery), HTML, CSS3 (bootstrap), Python (numpy, scipy, pandas)

Technical Details

  • Groups of large data sets are compared to find unique alternative splicing events using python, numpy, scipy, & pandas.
  • Unique events are graphed in a sleek interactive sashimi plot using D3.js. The sashimi plot employs a network of arcs to quantitatively visualize splice junctions in multiple samples.
  • Additional application features implemented in D3.js and JQuery allows the user to change the color, radius, & sweep of arcs. Publication quality graphs can be saved as SVG images.
  • Bootstrap's modals are utilized to display data about gene function.

Test Out the Demo Yourself


Rainbow HiC

Rainbow HiC plot example

Background

Nearly every cell in the body carries 6 billion DNA base pairs that would extend 6.5 feet if stretched out. Cells must compress all that genetic material into a nucleus that is only 5 micrometers across (about the width of a strand of spider web silk). To accomplish this feat, cells make loops in the DNA. These loops can hold the secret to how genes are regulated. Rainbow HiC is a program to decipher this secret.

Technology used

JavaScript (D3, jQuery, requireJS, QUnit), HTML, CSS3 (bootstrap), Python (numpy), inkscape, MapReduce, parallel processing

Technical Details

  • Rainbow HiC was crucial for discovering the complex DNA folding structure Natural Killer Cells.
  • Rainbow HiC is the first interactive processing pipeline written specifically for Hi-C data sets, providing an interactive approach to analyze and visualize chromosome conformations.
  • Created a new linear graph resembling a rainbow to explore positional DNA folding relationships.

Test Out the Demo Yourself


Turbo Storage

Turbo Storage example tube layout

Background

Laboratories across the world store their precious samples in freezers but tracking these samples can become very tedious without a computerized inventory system. Finding a sample in many labs might involve an excruciating search through old notebooks, out-of-date spreadsheets, and frost-encrusted freezer boxes. Turbo Storage was developed to solve this problem.

Technology used

Linux, Apache, MySQL, PHP, JavaScript (D3.js, jQuery, RequireJS, QUnit), CSS3 (bootstrap)

Technical Details

  • Developed a browser-based inventory application in the LAMP environment for tracking biological samples in freezers.
  • The MVC architectural framework was custom designed using PHP.
  • The interface for this application was developed using HTML, CSS, & JavaScript/JQuery with a responsive layout powered by the Bootstrap framework.
  • A test driven development process was implemented using QUnit.

Interactive RNA Seq (IRS) App

IRS Example gating

Background

Single cell RNA seq allows comparison of RNA at a cellular level however, back in 2015 the bioinformatics for this type of data was in its infancy. With dataset in hand and no software to dig into it the development of IRS was sparked. IRS tracks sub-populations of cells throughout all gene expression profiles and works very similar to flow cytometry analysis software.

Technology used

JavaScript (D3, jQuery), HTML, CSS3 (bootstrap), Python, SVG

Technical Details

  • Python is used to bin datasets based on the log RPKM values.
  • D3.js is used to graph bins as bar graphs and cells overlay the bins as dot plots.
  • 1D and 2D gating techniques can be used to track how groups of cells are dispersed throughout other gene expression profiles. Gating is accomplished using the D3.js plugin lasso.