Neurodata Without Borders (NWB) is a data standard for neurophysiology, providing neuroscientists with a common standard to share, archive, use, and build analysis tools for neurophysiology data. The NWB standard defines over 60 data types and an organization of these types based on composition and inheritance, similar to object-oriented programming. The goal of this project is to enhance the Python-based documentation tools for NWB to support intuitive visualization of standard specifications and enhance the usability of NWB. Example visualizations of interest include the creation of Unified Modeling Language (UML) diagrams from specifications and the visualization of specifications of data tables.
The first aim of this project will be to create static visualizations for inclusion in online documentation. This will be done using open-source UML diagramming or graph-based visualization tools. If time permits, the second aim will be to create interactive visualization for specifications where users can step through type hierarchies and associated types. Students should be familiar with Python and popular plotting libraries. Familiarity with UML, Sphinx, YAML, or neuroscience is also helpful.
Lead mentor: Oliver Ruebel
Backup mentor: Ryan Ly @rly , Ben Dichter @bendichter
Tags: NWB, Python, OOP, UML, YAML