GSoC 2021 project idea 7.1: Reusable visualization tools for Jupyter

TVB’s web-based UI provides several very useful visualization tools, which are setup for full screen use. As TVB is used in wider contexts (HBP collaboratory, Jupyter notebooks), it is important to ensure the relevant visualization tools are present everywhere. This project is to rewrite the widgets in TVB UI to become reusable components which can be employed from a Jupyter notebook for use in the HBP collaboratory, while maintaining compatibility with the existing TVB framework.

Tools are to be refactored, choice up to the student, in order of priority: anatomical visualization (surface, connectivity) time series viewer the phase plane tool Screenshots for inspiration:

Use of WebGL (in particular Python/notebook oriented GL tools) is encouraged, where numerous interesting opportunities for optimization are present, e.g. XTK for anatomy, vispy for time series. Expected results: A set of classes usable within Jupyter notebook, for displaying common data objects via WebGL or WebGL-based libraries. Documentation and usage examples for all created classes.

Skills: Python, WebGL, IPyWidgets, Jupyter

Mentors: Lia Domide @liadomide , Paula Popa @Popa_Paula

Tags: TVB, Python, WebGL, IPyWidgets, Jupyter


Our code is open source here: GitHub - the-virtual-brain/tvb-root: Main TVB codebase
Documentation can be found here:
A demo installation for quick checks can be found online: tester/pass1
(but I recommend you install the application locally if you intend to work on this project).
Let us know if you have questions.