GSoC 2026 - Week 10
Here is week 10 update for my project:
This week, I completed the support for custom code widget started last week and merged it as part of PR #43
Here are some of the changes made as part of this PR:
- Add a generic custom code widget
- Support for setup code that runs once
- Support for execution code that runs as per run frequency
- Add a re-usable
NotebookCellUI component
- Supports code complete and inspect
- Support for using a
NotebookCellas an input type- Support for accessing universe as variable ‘u’ in all custom code
- Support for multiple outputs from widget runs
- Array of outputs that can include text, error or images
- Tests for all new functionality
- Disable jedi for code completions on macos python 3.12
This widget allows users to add their custom code without having to write a full custom widget class (which requires a lot more boiler plate code) for quick use cases. The generic NotebookCell component provides code autocomplete and inspect support to make it easier to write code. I also added detailed instructions in the docs based on review comments.
Notebook cell code autocomplete
I then refactored some code between kernel core and widget manager as part of PR #45 to keep the code within core a bit simpler and clean.
I then added generic Notebooks support as part of PR #46. This allows users to create multiple Notebooks from within the dasboard GUI. Most of the standard Notebook functionality is available. Ability to run them on launch (to load any classes / functions / custom widgets defined) is also supported.
I then added support for custom Universe configuration using the same NotebookCell component as part of PR #47. This allows users to add built-in MDA or user-defined transformations / transformation workflows to the Universe.
I then make some fixes to support custom widgets as part of PR #48.
Here are some of the changes made as part of this PR:
- Use passed log level for kernel logger as well
- Support repeated run of custom widget class by allowing name override
- Support custom widgets with no inputs
- Support auto refresh of widget instances when class is updated
- Fix minor padding issue in add widgets menu
With this PR, any custom widget class changes get instantly refelected on the dashboard.
I finally added support for cloning built-in widget code into Notebooks so that users can customize them further if needed. as part of PR #49
With this week, we have all the core functionality along with customization support through Notebooks and related features.
Release v0.0.7 has all changes upto Week 10.
Next week, I will get started on adding a few more analysis widgets and then follow it up with adding more documentation and tutorials in preparation for the mini workshop scheduled for August 20.


