Workshop 2023 demo plugin

napari-workshop-plugin

A plugin to demonstrate some concepts from the 2023 workshop on software development related to napari

This is a demonstration plugin for a software development workshop held in 2023 for the napari community.

It provides the following features:

  1. Uploads to PyPI via GitHub actions.
  2. Has a conversion to conda-forge in recipes from grayskull
  3. Tests via GitHub actions.
  4. Builds and publishes MkDocs documentation via GitHub actions.
  5. Provides a simple multi-threaded segmentation widget for napari. The widget yields the result of segmentation as a napari layer at each step, to help understand the process.

Widget functionality

demo gif of segmentation

napari-workshop-plugin provides a widget to demonstrate how segmentation works. The widget takes in a 2D grayscale or RGB image, and proceeds to perform a series of segmentation steps, producing a 2D image or labels layer at each step to visualise how the segmentation algorithm works.

Please note, this is not a production-ready segmentation algorithm, but rather a demonstration of how segmentation works.

Testing

The tests in this package are a good jumping off point for your own plugin development. The main widget is multi-threaded, so it can be a bit challenging to test end-to-end. Instead, the tests are broken down into smaller unit tests for individual functions. The tests are run via GitHub actions.

Other resources

This plugin was generated from the napari plugin cookiecutter. The cookiecutter plugin is also a great jumping off point for your own plugin development. Additionally, some of these concepts are covered in the napari plugin developer documentation. If you need more support, please reach out on napari zulip, check out the napari Image.sc or open an issue on the napari repository.

Finally, check out a simple README template that you can use for your own plugin.

Version:

  • 1.0.4

Last updated:

  • 18 September 2023

First released:

  • 06 September 2023

License:

Supported data:

  • Information not submitted

Open extension:

GitHub activity:

  • Stars: 0
  • Forks: 0
  • Issues + PRs: 0

Python versions supported:

Operating system:

Requirements:

  • numpy <2,>=1.23
  • magicgui
  • qtpy

Sign up to receive updates