Edit this page

NWB Workshops and Hackathons

Remote hackathon

Welcome to the 8th NWB User Days Workshop!


The final report for the 8th NWB User Days is now available on GitHub (PDF)(LaTeX)

Dates and Location


The workshop is open to the public. Please complete our registration form to attend the event. Anyone interested in NWB may request an invitation.


We will be using Zoom for the meeting. We will send an email the day before the workshop with Zoom links for each day.

It is possible to use Zoom from the browser, but we recommend you install the Zoom app on your computer or phone. See installation instructions here.

Organizing Committee

Program chairs: Benjamin Dichter, Ryan Ly, Andrew Tritt, Pam Baker, and Oliver Rübel

Additional organizational support is provided by the Kavli Foundation


Recorded talks will be uploaded after the talks are given.

How to prepare?


The Neurodata Without Borders: Neurophysiology project (NWB, https://www.nwb.org/) is an effort to standardize the description and storage of neurophysiology data and metadata. NWB enables data sharing and reuse and reduces the energy-barrier to applying data analytics both within and across labs. Several laboratories, including the Allen Institute for Brain Science, have wholeheartedly adopted NWB. The community needs to join forces to achieve data standardization in neurophysiology.

The purpose of the NWB User Days training workshop is to bring the experimental neurophysiology community together to further adoption and the development of NWB, the NWB software libraries, and the progress of the scientific workflows that rely on NWB. Members of the community will exchange ideas and best practices for using NWB and the libraries, share NWB-based tools, surface common needs, solve bugs, make feature requests, brainstorm about future funding and collaboration, and make progress on current blockages. The event will also enable NWB developers and users to interact with each other to facilitate communication, gather requirements, and train users.

In contrast to conferences, where the primary focus is to report results, the objective of the Hackathon is to provide a venue for NWB users and tool developers to learn about NWB and collaboratively work on any NWB-related research projects. This event is meant to foster community and collaboration around NWB, not competition. There will be no judges nor prizes. Participants will be expected to bring data from their lab, software they would like to integrate with NWB, and/or collaborate with others to build integration with NWB.


For instructions on how to create a project see here

Assigned Projects

The lists below provide an overview of specific projects for which at least one or more attendees have signed up for to contribute to. Projects are collaborative in nature. If you are attending the hackathon and are interested in participating in any of the existing projets then please contact the team listed on the project page.

Data conversion projects

Tool development and integration projects

Project Suggestions

You are free to come to this event with your own ideas for a project, but if you want some inspiration, here are some areas we have identified where we could use some help:


All times are in PDT (US/Pacific time)

This calendar view shows the workshop agenda. Events in blue are highly recommended. Events in orange are optional. All times not marked are considered time for attendees to hack on their projects. Developers will be available to answer questions in the main Zoom room from 8:30am to 5pm PDT. Agenda calendar graphic

You can also add this Google Calendar to your calendar to see the workshop’s events with Zoom links in your time zone. https://bit.ly/2yBXU4V   

Tuesday, May 12 Day 1: New User Training
8:30 - 9am Call-in time, work out any technical issues
9 - 9:10am Introduction: How to get the most out of this workshop
YouTube Recording
9:10 - 10am What is NWB, with short intro to NWB-enabled tools (Oliver Ruebel)
YouTube Recording
10am - 1pm Elective tutorials / technical introductions (covers PyNWB and MatNWB).
10 - 11am Intro to NWB for extracellular electrophysiology (Ben Dichter, Ryan Ly)
PyNWB: YouTube Recording
MatNWB: YouTube Recording
11am - 12pm Intro to NWB for optical physiology (Ben Dichter, Ryan Ly)
PyNWB: YouTube Recording
MatNWB: YouTube Recording
12 - 1pm Intro to NWB for intracellular electrophysiology (Oliver Ruebel, Pam Baker)
Users should attend the tutorial(s) that is relevant to them and hack on their projects at other times.
1 - 1:50pm Overview of NWB-enabled tools, Part 1:
- NWB Explorer / Open Source Brain
- CaImAn
- NWB Widgets
- Brainstorm
- SpikeInterface
2 - 2:40pm Overview of NWB-enabled tools, Part 2:
- calciumImagingAnalysis
- DataJoint
- Frank Lab, UCSF
2:40 - 5pm Hacking on projects
Wednesday, May 13 Day 2 - Project Hacking
8:30 - 9am
Call-in time, work out any technical issues
9 - 10am Project overviews / lightning talks on proposed hacking projects
10am - 5pm Hacking on projects
10am - 3pm Elective in-depth breakouts:
10 - 11am NWB Explorer / Open Source Brain (Padraig Gleeson, Matteo Cantarelli)
11am - 12pm DANDI (Satra Ghosh)
12 - 1pm NWB Widgets (Ben Dichter)
1 - 2pm calciumImagingAnalysis (Biafra Ahanonu)
2 - 3pm Brainstorm (Konstantinos Nasiotis)
3 - 3:30pm Check-in
3:30 - 5pm Hacking on projects
Thursday, May 14 Day 3: Advanced Training
8:30 - 9am
Call-in time, work out any technical issues
9 - 9:30am How to build and share extensions (Ryan Ly)
YouTube Recording
9:30 - 10am How to write custom API classes in PyNWB (Andrew Tritt)
YouTube Recording
10 - 10:30am Advanced write in PyNWB (compression, chunking, iterative write, and parallel access) (Andrew Tritt)
YouTube Recording
10:30 - 11am Advanced write in MatNWB (compression, chunking, and iterative write) (Ben Dichter)
YouTube Recording
11am - 5pm Hacking on projects
11am - 3pm Elective in-depth breakouts:
11am - 12pm SpikeInterface (Alessio Paolo Buccino)
YouTube Recording
12 - 1pm CaImAn (Andrea Giovannucci)
YouTube Recording
1 - 2pm DataJoint (Dimitri Yatsenko, Thinh Nguyen)
Presentation and demo repository
2 - 3pm Frank Lab, UCSF (Loren Frank)
3 - 3:30pm Check-in
3:30 - 5pm Hacking on projects
Friday, May 15 Final day: Project hacking and final presentation
8:30 - 9am
Call-in time, work out any technical issues
9 - 9:10am Introduction to final day
9:10am - 3pm Hacking on projects
11am - 3pm Elective user discussions by data modality:
11am - 12pm Extracellular electrophysiology
12 - 1pm Optical physiology
1 - 2pm Intracellular electrophysiology
2 - 3pm Behavior
3 - 4:30pm Final check-in / lightning talks on hacking projects
4:30 - 5:30pm Social happy hour


This website and related content were prepared as an account of or to expedite work sponsored at least in part by the United States Government. While we strive to provide correct information, neither the United States Government nor any agency thereof, nor The Regents of the University of California, nor any of their employees, makes any warranty, express or implied, or assumes any legal responsibility for the accuracy, completeness, or usefulness of any information, apparatus, product, or process disclosed, or represents that its use would not infringe privately owned rights. Reference herein to any specific commercial product, process, or service by its trade name, trademark, manufacturer, or otherwise, does not necessarily constitute or imply its endorsement, recommendation, or favoring by the United States Government or any agency thereof, or The Regents of the University of California. Use of the Laboratory or University’s name for endorsements is prohibited. The views and opinions of authors expressed herein do not necessarily state or reflect those of the United States Government or any agency thereof or The Regents of the University of California. Neither Berkeley Lab nor its employees are agents of the US Government. Berkeley Lab web pages link to many other websites. Such links do not constitute an endorsement of the content or company and we are not responsible for the content of such links.