Having all come from physical science backgrounds, our team was interested in what we could do with data that could have an impact on the medical world. After hearing the presentation from Oxford Nanopore Technologies, we realised that the ability to sequence genomes was taking leaps and bounds. So why isn't the processing of these massive code bases accelerating at the same rate?
What it does
The project uses the US National Center for Biotechnology Information's BLAST (Basic Local Alignment Search Tool) to create a simple, user-friendly web app that delivers high-accuracy testing for water-borne pathogens from the typical output of a Nanopore device.
BLAST finds regions of similarity between biological sequences via their website or API . Although very powerful, it is cumbersome and heavy duty, making queries slow and high effort. Using the tool and interpreting the results requires time and background knowledge, lowering accessibility, especially for use out in the field. API queries require a lot of time and are subject to failing due to connection issues. FastBLAST takes all the effort out of this process. The user simply has to supply an RNA sequence (obtainable using the Nanopore device) to instantly find out whether their water source is safe.
We believe that encouraging greater access to this incredible wealth of information would greatly boost research capabilities in this area.
How we built it
We researched the depth of information available before attempting to build a modern proof-of-concept GUI for a local copy of the tooling. Using a local dataset rather than BLAST’s extensive database enables much faster query times and reduces errors related to internet connection, without sacrificing accuracy. The Python deep analysis scripts use NumPy and Pandas libraries to interrogate the dataset to check for known water pathogens. We then built up a server-side Django API with SQLite DB. This DB stores information about particular bacteria, and the operon labels, and corresponding sequences, that identify them. The Django server presented API access to an AngularJS front-end, enabling the building of a modern website. Due to time constraints, we only hosted this locally and did not productionize.
Challenges we ran into
Other than some technology challenges, as much of the stack is relatively new to most of our team, the biggest challenge was working out how we could apply our physical science backgrounds to a medical problem that was solvable in 24 hours!
Accomplishments that we're proud of
We're proud to have gained a better understanding of the challenges, as well as the interesting opportunities, that technology faces in UK medicine. It has been a pleasure to hear about all the awesome projects people have been getting up to!
What we learned
We all tried to expose ourselves to new technologies during this project. Sam learnt how to code in AngularJS, Rusheb was exposed to the Django framework, George grappled with new python libraries and Marc learnt about the challenges in writing server code We were all incredibly interested to learn about the BLAST algorithm, and how it differs to a fuzzy search (a concept we are more familiar with).
What's next for FastBLAST?
More integration & functionality in to the GUI to present a more powerful yet friendly user experience. We would also like to play around with more of the genome datasets, applying the solutions provided to a wider range of potentially dangerous diseases in a similarly accessible way.