Google Summer of Code 2024 |OpenPIP| Work Report
- Student: Mohamed Soudy
- Github: https://github.com/MohmedSoudy
- Organization: National Resource for Network Biology (NRNB)
- Project Title: Improvement Of openPIP (Data upload & Visualization)
- Mentor: Dr. Mohamed Helmy
Overview
OpenPIP (Open Source Protein Interaction Platform) is an open-source software package for hosting protein-protein interaction (PPI) data based on the PSI-MI-TAB format. openPIP provides a PPI database and a customizable web interface that enables searching and visualizing the interactions as well as downloading the search results in different formats. The whole system is a ready-to-use virtual machine that can be imported to VMware. This project aims to add enhancements and several new features in various sections of openPIP that are used to upload and download data and files and visualize the complex interaction on various levels with filters and applications.
Goals
Improve the data import module of openPIP: the current data import/upload module uses the standard Proteomics Standards Initiative Molecular Interactions (PSI-MI) format and connects to several public databases to collect further information for all proteins in the dataset. The improvement that we need to make is to make the connection to the public databases optional, add the protein details to the PSI-MI file, and create an upload script that can be used by admins to add data to the databases independent from the GUI upload module for advanced users.
Adding support for gene/protein datasets: This will be an extension that we will develop to be able to visualize the gene/protein datasets (such as pathways) in a network similar to gene/protein networks. Currently, the networks that openPIP visualizes are protein PPI networks; the nodes are the proteins, and the edges are the interactions. The extension will allow visualization of gene/protein datasets where the node is the gene/protein dataset, and the edge is the overlap between the two connected gene/protein datasets.
Implementation
Fix the access to the OpenPIP web server available at https://openpip.baderlab.org/
Host the webserver on a new virtual machine to enhance the usability
Refine the docker image of the server to work properly
Add the database to GitHub to allow the users to run the application locally
Fix the data upload module and automate it using Python
Enhance the website visualization
Code contribution
- Fixing the website access through the upgrade from HTTP to HTTPs and refining the docker image in pull request #90
https://github.com/BaderLab/openPIP/pull/90
- Automate the data upload module and enhance the data visualization in pull request #91
https://github.com/BaderLab/openPIP/pull/91
- Add the database to the GitHub repository under the following URL https://github.com/BaderLab/openPIP/blob/master/Docker%20OpenPIP%20package/db/dev10.0_huri.zip
- Set up the virtual machine to host the application & Install all required software and dependencies.
- Refine the code to work properly on the virtual machine and run automatically after any problem on the machine.
Working version
- Home Page
- Search Page
- Download Page
- Admin panel data upload
Future plans
- Integrate gene-gene interaction data visualization
- Integrate gene-set visualization
- Host the application in a new virtual machine to enhance the usability