ChRIS Plugin Development Guide

Preparing to develop a ChRIS plugin

Here are some recommended pre-requisites for starting to develop on ChRIS:

  • A laptop (8 GB RAM recommended; should be capable of running Docker and the image processing software you would like to create a ChRIS plugin for.)
  • Docker (Visit this tutorial on how to set it up.)
  • Either a piece of pre-existing image processing software you would like to convert into a ChRIS plugin, or an idea of the type of image processing plugin you’d like to build for the ChRIS platform.
  • Sample imaging data that best demonstrates the type of image processing you intend to do.

Review ChRIS platform training

ChRIS is a unique computing platform that uses a lot of leading-edge technologies such as containers and Kubernetes and scales applications in ways that aren’t immediately intuitive, so a quick review of ChRIS training materials from our plugin development workshops is a good idea to get yourself to a good start:

ChRIS overview

Here is a quick slidedeck on ChRIS’ background and an overview of its architecture and example tasks and GPU plugin information:

ChRIS Overview Presentation (PDF)

ChRIS deep dive

Here is a slidedeck that provides a very clean, animated deep dive on the ChRIS architecture and how control and data flow through it:

ChRIS plugins deep dive

Here is a deep dive slidedeck on how plugins work in ChRIS:

Create your first ChRIS plugin

Now that you’ve got your pre-requisites ready and have learned about how ChRIS and its plugin system worked, it’s time to create your first plugin:

ChRIS cookiecutter Tutorial App

Read through the README for the ChRIS cookiecutter tutorial app linked above. It will walk you through getting your first ChRIS plugin set up.