My experience contributing to the ChRIS Project
Tags: opensource
Published: 2023-01-23 15:33:21

Medical images are an essential part of medical diagnosis and treatment because they offer information that can be used to diagnose and detect a variety of illnesses and abnormalities, such as cancer, anemia, and brain tumors. However, because there are so many of them, it can take doctors hours or days to study them, which can have fatal or seriously harmful effects in medical emergencies. Additionally, existing research softwares to speed up the process are not user-friendly as they require medical professionals to be familiar with the terminal and command line.

In this blog, I'll discuss how the ChRIS project is solving that challenge as well as my own contributions to the platform through the Outreachy Program.

## Table of Contents 

1. [What is the ChRIS project?](#what-is-the-chris-project)  

2. [My contributions to the ChRIS project](#my-contributions-to-the-chris-project)  

3. [Final thoughts](#final-thoughts)

## What is the ChRIS project?

[ChRIS](http://chrisproject.org/), Childrens Research Integration System, is an open source, web-based medical image platform founded by the FNNDSC (Fetal-Neonatal Neuroimaging and Developmental Science Center) at Boston Children's Hospital. The ChRIS project seeks to close the gap between medical professionals and research developers by creating a web user interface(UI) that makes it easy to use those research softwares. Additionally, it strives to increase research collaboration and availability on computing through open cloud.  

The MOC(Mass Open Cloud) is part of the Massachusetts Green High Performance Computing Center located west of Boston. It is an openStack powered infrastructure built by the Boston Children's hospital in collaboration with a number of institutions that faculty and students can use at no cost. MOC  offers a secure, collaborative, and affordable computing and storage for conducting innovative medical research and big data analytics. 

MOC and Red hat have a strong partnership with the ChRIS project. ChRIS project depends on some of Red hat services such as Red hat openShift and Red hat enterprise Linux to successfully perform analysis. 

## My contributions to the ChRIS project   

Over the past one and a half month, I've enjoyed contributing to the ChRIS project because it gives me a chance to hone my software development skills as a react developer. I also appreciate that the ChRIS project provides a pleasant working atmosphere with mentors who are friendly and supportive. The following list shows the different contributions I have made to the ChRIS UI. 

- **Migrated ChRIS Store plugin display page to ChRIS Core:**  

[ChRIS store](https://chrisstore.co/) is where medical professionals browse for plugins(research softwares) that they are interested to use and then install them on their ChRIS core account. One of the ChRIS project goals is to merge both platforms as one to make plugins easily accessible to users. So in this [PR](https://github.com/FNNDSC/ChRIS_ui/pull/758), I migrated the ChRIS store plugin display page to the ChRIS Core.

![ChRIS plugin page](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5zlbrkb2cgb8e320fvl2.png)


- **Added keyboard functionalities to the create analysis wizard:**  

In this [PR](https://github.com/FNNDSC/ChRIS_ui/pull/774), I added keyboard functionalities to the create analysis wizard in the ChRIS core which reduced the time it takes to create analysis.

![ChRIS Core Keyboard functionality](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/qok3eyyaas4zmu2v8o8e.png)


- **Improved the feature to add optional:**.  

Sometimes a user might need to fill optional parameters provided by the plugin for better analysis. Therefore the [PR](https://github.com/FNNDSC/ChRIS_ui/pull/801) aims to improve the feature by making it faster to fill them.

![ChRIS Plugin Optional Parameters Feature](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/hfnjqjo2tswj6izwvzxm.png)


- **Enhanced the file upload process feature:**  

When a user is creating an analysis, they can choose to either use a plugin, local files, or existing files on ChRIS. The [PR](https://github.com/FNNDSC/ChRIS_ui/pull/806) aims to improve the process of uploading local files to ChRIS by making it faster. 


![ChRIS File Upload](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/lqm6bqw11stxpn48ve1l.png)


- Added responsiveness on the feed list table and node progress steps
People find it difficult to get some information using their mobile devices, such as a list of feeds and the progress of a single step. I therefore improved responsiveness of the app to address that issue.

![ChRIS steps responsiveness](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/gne3vt4hlirg0cmf5plv.png)



## Final Thoughts

The ChRIS is built from different technologies such as React, Django, Python, kubernetes, etc. Furthermore, they are always looking for contributors in a variety of fields, including design, frontend programming, backend development, quality assurance, etc. Visit their [contributor guide] (http://chrisproject.org/join-us) to learn more on how to start contributing to the project. If it's your first time contributing to open source, you can check [my blog](https://dev.to/ciradu2204/how-to-contribute-to-open-source-jab) on more tips on how to get started.

If you find the blog helpful, don't forget to leave a like, share or bookmark it to reference later. Incase of any inquiries, you can find me on my [Linkedin](https://www.linkedin.com/in/ciradu2204/) or [Twitter](https://twitter.com/IraduCynthia) page.