Edit this page

NWB Workshops and Hackathons

Back to Projects List

Mocked up widgets

Key Investigators

Project Description

Building on the preexisting visualisation for NWB1 based on Geppetto we are building an application that can be used by scientists to explore the content of NWB files. Reusing exisiting Geppetto widgets the focus is to build an application that can expose visualisations and workflows that can be useful for scientists.


  1. Objective A. Create a Django based Geppetto application for NWB Explorer - COMPLETED
  2. Objective B. Create a NWB Model Interpreter which uses PyNWB - COMPLETED
  3. Objective C. Hook up preexisting frontend to visualise content of NWB2 file - COMPLETED

Approach and Plan

  1. Create application skeleton
  2. Explore PyNWB API and prototype the model interpreter
  3. Extract metadata and traces

Progress and Next Steps

Kanban board for all present and future tasks

The application is here, the geppetto extension is here.

The first step after creating the skeleton was to hook up mocked up images for some target plots inside widgets to quickly provide a visual proof of concept.

Mocked up widgets

Then we implemented a Geppetto Model Interpreter using PyNWB and few tests to test the read API. We used the model interpreter to fetch some traces and reused preexisting Geppetto components to visualize the variables.

Variables List

and plot them:

Real plots

Short animation:

Real plots

Simulation output (Using NWB2 extension from Ben and Kael)

We extended the model interpreter to work with the extension Ben and Kael created to store the simulation output. We can now also plot simulation outputs stored using NWB. Here we are plotting the membrane potential for two different cell somas.

Sim plots Sim plots Sim plots

Previous version using a Java backend and NWB1


Background and References