Back to Projects List
- Jean-Christophe Fillion-Robin (Kitware Inc., USA)
- Andras Lasso (Queen's University, Canada)
Jupyter notebook is an interactive shell for executing scripts and viewing execution results.
Notebook user interface (frontend) is separated from the code execution engine (kernel). The objective is to create a Slicer extension, which Jupyter notebooks can connect to and access all Slicer features.
- Implement extension that includes a simple kernel that can execute Python commands using Slicer's built-in Python interpreter.
- Implement returning of console output to the notebook.
- Implement returning of viewer content to the notebook.
- Publish extension on extension manager.
- Created SlicerJupyter extension, which uses xeus as Jupyter kernel implementation
- Contributed changes to dependent projects. See our
QuantStack/xeus
pull requests, our xeus issue report discussing best strategy to update xeus for supporting event-loop integration, and also our branch improving CMake support forCryptoPP
. - Implemented command execution
- Implemented preliminary version of
display()
function to show viewer content in the notebook. - Publish extension on extension manager.
Future plans:
- It will be possible to publish and run Slicer notebooks using binder
Side-by-side view of a Notebook and 3D Slicer:
Notebook showing code and viewer content:
Notebook showing code and viewer content:
Complete notebook rendered on GitHub: https://github.com/lassoan/SlicerNotebooks/blob/master/My%20first%20Slicer%20notebook.ipynb