diff --git a/docs/src/pages/components/ContextMenu.svx b/docs/src/pages/components/ContextMenu.svx
new file mode 100644
index 00000000..d195fd63
--- /dev/null
+++ b/docs/src/pages/components/ContextMenu.svx
@@ -0,0 +1,17 @@
+---
+components: ["ContextMenu", "ContextMenuGroup", "ContextMenuRadioGroup", "ContextMenuOption", "ContextMenuDivider"]
+---
+
+
+
+In the examples, right click anywhere within the iframe.
+
+### Default
+
+
+
+### Radio groups
+
+
\ No newline at end of file
diff --git a/docs/src/pages/framed/ContextMenu/ContextMenu.svelte b/docs/src/pages/framed/ContextMenu/ContextMenu.svelte
new file mode 100644
index 00000000..8ea32eb9
--- /dev/null
+++ b/docs/src/pages/framed/ContextMenu/ContextMenu.svelte
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/docs/src/pages/framed/ContextMenu/ContextMenuGroups.svelte b/docs/src/pages/framed/ContextMenu/ContextMenuGroups.svelte
new file mode 100644
index 00000000..06257114
--- /dev/null
+++ b/docs/src/pages/framed/ContextMenu/ContextMenuGroups.svelte
@@ -0,0 +1,23 @@
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/tests/ContextMenu.test.svelte b/tests/ContextMenu.test.svelte
new file mode 100644
index 00000000..fec21aa5
--- /dev/null
+++ b/tests/ContextMenu.test.svelte
@@ -0,0 +1,58 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+