Skip to content

V2.1 improvements - #11

Merged
LennyN95 merged 21 commits into
mainfrom
v2.1_improvements
Jan 16, 2026
Merged

V2.1 improvements#11
LennyN95 merged 21 commits into
mainfrom
v2.1_improvements

Conversation

@LennyN95

Copy link
Copy Markdown
Member

Some huge, long-planned updates to the V2 extension:

  • Add a new Docker setup screen displayed when Docker is not detected on the system
  • Move Backend, Advanced, and GPU options to the Settings screen and display a static setup summary at the bottom of the extension
  • Remove udocker for simplicity and support Docker as the only backend; simplify code by eliminating the backend parameter
  • Export new icons and use in the model table and main UI
  • Improve output file management by adding an Open button, disable for unsupported file formats
  • Add MHub.ai general information, developer contribution and citation
  • Ensure segmentation results load directly into the viewer
  • Include licensing information in API responses; display model and weight licenses; derive commercial use where license is MIT, Apache 2.0 or CC without NC.
  • Add support for non-DICOM files

NOTE: since udocker is a) significantly slower and b) wasn't widely used, I refactored the code focusing on Docker as single backend. This reduces the complexity (no multi-backend) and allowed to simplify and streamline the code and eventually leading to a more robust implementation. We can always re-evaluate the integration of multiple backends, adding udocker support and potential other alternatives. However, such an investment should be driven by a real use-case / need and not be soley experimental.
- Modality selector is enabled for files not referenced in the DICOM store
- Before running, we convert the image into DICOM using Slicer's export functionality

NOTE: we skip adding the segmentations back into the DICOM store for non-dicom instances.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR implements significant improvements to the MHubRunner extension for 3D Slicer, focusing on UI/UX enhancements, Docker integration, and expanded functionality. The changes remove udocker support to simplify the codebase and focus solely on Docker as the backend, add a new Docker setup screen, move advanced settings to a separate dialog, and introduce support for non-DICOM files with modality selection.

Changes:

  • Added Docker setup screen for first-time users when Docker is not detected
  • Moved Backend, GPU, and Advanced settings to a separate Settings dialog, with a static summary displayed in the main UI
  • Removed udocker backend support entirely, simplifying code by eliminating backend parameter throughout
  • Added licensing information display (model/weights licenses and commercial use indicators)
  • Introduced support for non-DICOM volumes with modality selection and DICOM export capability
  • Added new icon resources for UI buttons with theme-aware rendering (dark/light mode)
  • Implemented async model fetching with status hydration to improve UI responsiveness
  • Enhanced output file management with Open button and format filtering

Reviewed changes

Copilot reviewed 5 out of 29 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
MHubRunner/Resources/UI/MHubRunnerSettings.ui New settings dialog UI with MHub.ai information, GPU, Docker, Advanced, and Log sections
MHubRunner/Resources/UI/MHubRunner.ui Restructured main UI with stacked widget for Docker setup screen, added modality selector and output file controls
MHubRunner/Resources/Icons/*.png New icon assets for buttons (pull, play, cancel, info, settings, show) in both light and dark theme variants
MHubRunner/MHubRunner.py Major refactoring: removed udocker code, added async fetching, licensing logic, non-DICOM support, settings dialog, debouncer/poller utilities
MHubRunner/CMakeLists.txt Updated resource list to include all new icon files and the settings UI file

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread MHubRunner/Resources/UI/MHubRunnerSettings.ui Outdated
Comment thread MHubRunner/MHubRunner.py Outdated
Comment thread MHubRunner/MHubRunner.py
LennyN95 and others added 2 commits January 16, 2026 17:34
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@LennyN95
LennyN95 merged commit 3a07dfe into main Jan 16, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants