← All work

Research · Loth Lab, Northeastern

Chiari morphometrics dashboard

An interactive dashboard over patient morphometric data for the BRAIN project, so the research team can filter and plot the measurements directly rather than requesting one-off analyses.

Role
Undergraduate researcher, sole developer
Context
Loth Lab, Northeastern University
Stack
Python, HoloViz Panel, Docker
Status
Deployed and in use

The BRAIN project (Biomechanical Report: Analysis and Imaging at Northeastern) studies Chiari malformation, a condition where brain tissue extends into the spinal canal. The research depends on morphometric measurements taken from patient imaging: a set of distances, areas, and angles describing the anatomy of each case.

The data was not accessible to the team without writing code. Looking at a relationship between two measurements, or filtering to a subset of cases, required a one-off script, so each question meant a round trip through whoever was available to write it.

An interactive dashboard over the morphometric dataset, built with HoloViz Panel so the whole thing stays in Python and stays close to the analysis code it grew out of. Researchers can select measurements, filter the cohort, and see distributions and relationships update immediately, without writing anything.

Deployment was as important as the interface. It runs as a Docker container on Hugging Face Spaces, which means the lab gets a URL rather than an install: no Python environment to set up, no dependency drift, and no reliance on my laptop being awake. The users are clinicians and students rather than engineers, so removing the setup step was necessary for the tool to be used.

Design decisions

  • Panel over a JavaScript front end. The audience is researchers who may need to extend it. Keeping the dashboard in the same language as the analysis means the next student can modify it.
  • Containerized from the start. Reproducibility matters in a research context, and a container makes the environment explicit.
  • Exploration rather than reporting. The goal was not a fixed set of figures but the ability to ask a new question without writing code.

Deployed and in use by the lab, continuing alongside the study. The related problem it surfaced, that the lab's data infrastructure was not designed for the case volume ahead, is work I am now looking at at the database level.

Open the dashboard · Back to all work