diff --git a/QTplugin-napari.ipynb b/QTplugin-napari.ipynb
new file mode 100644
index 0000000000000000000000000000000000000000..f78decfa38dd16a0af0e746dd4c4f0c22a655b43
--- /dev/null
+++ b/QTplugin-napari.ipynb
@@ -0,0 +1,128 @@
+{
+ "cells": [
+  {
+   "cell_type": "code",
+   "execution_count": 9,
+   "id": "11936ce3-3ddd-4aa3-b907-740aefc2973b",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "from napari import Viewer, run\n",
+    "from napari.layers import Image, Layer\n",
+    "\n",
+    "from qtpy.QtWidgets import QWidget, QVBoxLayout, QLabel, QListWidget\n",
+    "\n",
+    "from magicgui.widgets import create_widget\n",
+    "\n",
+    "from matplotlib.backends.backend_qtagg import (\n",
+    "    FigureCanvas, NavigationToolbar2QT as NavigationToolbar)\n",
+    "from matplotlib.figure import Figure"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 2,
+   "id": "d97699e5-db36-46f4-95b9-a56191256ed4",
+   "metadata": {},
+   "outputs": [],
+   "source": [
+    "class SamplePlugin(QWidget):\n",
+    "    def __init__(self, viewer: Viewer):\n",
+    "        super().__init__()\n",
+    "        self.viewer = viewer\n",
+    "        self.select_image = create_widget(annotation=Image)\n",
+    "        self.select_mask = create_widget(annotation=Layer)\n",
+    "        self.canvas = FigureCanvas(Figure(figsize=(5,5)))\n",
+    "        self.ax = self.canvas.figure.subplots()\n",
+    "\n",
+    "        self.ax.plot([0, 5, 6], [2, 7, 14])\n",
+    "\n",
+    "        layout = QVBoxLayout()\n",
+    "        layout.addWidget(self.select_image.native)\n",
+    "        layout.addWidget(self.select_mask.native)\n",
+    "        layout.addWidget(self.canvas)\n",
+    "\n",
+    "        self.setLayout(layout)\n",
+    "    \n",
+    "    def reset_choices(self, event=None):\n",
+    "        self.select_image.reset_choices(event)\n",
+    "        self.select_mask.reset_choices(event)"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 3,
+   "id": "df3e9175-ab4f-41da-be36-9e06402ff404",
+   "metadata": {},
+   "outputs": [
+    {
+     "name": "stdout",
+     "output_type": "stream",
+     "text": [
+      "AICSImageIO: Reader will load image in-memory: False\n",
+      "AICSImageIO: Reader will load image in-memory: False\n"
+     ]
+    }
+   ],
+   "source": [
+    "viewer = Viewer()\n",
+    "\n",
+    "plugin = SamplePlugin(viewer)\n",
+    "\n",
+    "viewer.window.add_dock_widget(plugin)\n",
+    "\n",
+    "run()"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": 7,
+   "id": "4e69ca83-6eb3-41ad-97eb-f18f80223e8c",
+   "metadata": {},
+   "outputs": [
+    {
+     "data": {
+      "text/plain": [
+       "0"
+      ]
+     },
+     "execution_count": 7,
+     "metadata": {},
+     "output_type": "execute_result"
+    }
+   ],
+   "source": [
+    "viewer.layers[2].data.min().compute()"
+   ]
+  },
+  {
+   "cell_type": "code",
+   "execution_count": null,
+   "id": "c42db7a0-5937-4f7a-9d6e-64de0108b72b",
+   "metadata": {},
+   "outputs": [],
+   "source": []
+  }
+ ],
+ "metadata": {
+  "kernelspec": {
+   "display_name": "Python 3 (ipykernel)",
+   "language": "python",
+   "name": "python3"
+  },
+  "language_info": {
+   "codemirror_mode": {
+    "name": "ipython",
+    "version": 3
+   },
+   "file_extension": ".py",
+   "mimetype": "text/x-python",
+   "name": "python",
+   "nbconvert_exporter": "python",
+   "pygments_lexer": "ipython3",
+   "version": "3.8.12"
+  }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 5
+}