diff --git a/.templates/template-svelte/package.json b/.templates/template-svelte/package.json
index 38286406b8..c6d746b173 100644
--- a/.templates/template-svelte/package.json
+++ b/.templates/template-svelte/package.json
@@ -16,7 +16,7 @@
"@tailwindcss/vite": "^4.3.0",
"@tsconfig/svelte": "^5.0.8",
"postcss": "^8.5.14",
- "svelte": "5.55.7",
+ "svelte": "^5.55.7",
"svelte-check": "^4.4.8",
"tailwindcss": "^4.3.0",
"tslib": "^2.8.1",
diff --git a/lit-minimal/package.json b/lit-minimal/package.json
index 682411fbd7..2b8a933675 100644
--- a/lit-minimal/package.json
+++ b/lit-minimal/package.json
@@ -16,7 +16,6 @@
"@egoist/tailwindcss-icons": "^1.9.2",
"@iconify-json/lucide": "^1.2.107",
"@tailwindcss/vite": "^4.3.0",
- "postcss": "^8.5.14",
"tailwindcss": "^4.3.0",
"typescript": "^6.0.3",
"vite": "^8.0.13"
diff --git a/lit-slash-menu/package.json b/lit-slash-menu/package.json
index 471db92b24..6bc4467a2a 100644
--- a/lit-slash-menu/package.json
+++ b/lit-slash-menu/package.json
@@ -17,7 +17,6 @@
"@egoist/tailwindcss-icons": "^1.9.2",
"@iconify-json/lucide": "^1.2.107",
"@tailwindcss/vite": "^4.3.0",
- "postcss": "^8.5.14",
"tailwindcss": "^4.3.0",
"typescript": "^6.0.3",
"vite": "^8.0.13"
diff --git a/lit-table/package.json b/lit-table/package.json
index 4546c68003..7d4054876d 100644
--- a/lit-table/package.json
+++ b/lit-table/package.json
@@ -17,7 +17,6 @@
"@egoist/tailwindcss-icons": "^1.9.2",
"@iconify-json/lucide": "^1.2.107",
"@tailwindcss/vite": "^4.3.0",
- "postcss": "^8.5.14",
"tailwindcss": "^4.3.0",
"typescript": "^6.0.3",
"vite": "^8.0.13"
diff --git a/lit-toolbar/package.json b/lit-toolbar/package.json
index cd0f850d13..1607a80714 100644
--- a/lit-toolbar/package.json
+++ b/lit-toolbar/package.json
@@ -17,7 +17,6 @@
"@egoist/tailwindcss-icons": "^1.9.2",
"@iconify-json/lucide": "^1.2.107",
"@tailwindcss/vite": "^4.3.0",
- "postcss": "^8.5.14",
"tailwindcss": "^4.3.0",
"typescript": "^6.0.3",
"vite": "^8.0.13"
diff --git a/next-full/package.json b/next-full/package.json
index a9567cd7f4..2e6f61f122 100644
--- a/next-full/package.json
+++ b/next-full/package.json
@@ -9,7 +9,7 @@
"start": "next start"
},
"dependencies": {
- "katex": "^0.16.45",
+ "katex": "^0.16.47",
"next": "^16.2.6",
"prosekit": "^0.21.0",
"react": "^19.2.6",
diff --git a/nuxt-full/package.json b/nuxt-full/package.json
index b1c84bd9d0..63ec921b50 100644
--- a/nuxt-full/package.json
+++ b/nuxt-full/package.json
@@ -10,7 +10,7 @@
"preview": "nuxt preview"
},
"dependencies": {
- "katex": "^0.16.45",
+ "katex": "^0.16.47",
"nuxt": "^4.4.5",
"prosekit": "^0.21.0",
"vue": "^3.5.34"
diff --git a/preact-full/package.json b/preact-full/package.json
index d76b85d81f..9c84476c04 100644
--- a/preact-full/package.json
+++ b/preact-full/package.json
@@ -9,7 +9,7 @@
"preview": "vite preview"
},
"dependencies": {
- "katex": "^0.16.45",
+ "katex": "^0.16.47",
"preact": "^10.29.1",
"prosekit": "^0.21.0"
},
diff --git a/preact-temml/.gitignore b/preact-temml/.gitignore
deleted file mode 100644
index 5d6225c6df..0000000000
--- a/preact-temml/.gitignore
+++ /dev/null
@@ -1,4 +0,0 @@
-node_modules
-dist
-.next
-.svelte-kit
diff --git a/preact-temml/README.md b/preact-temml/README.md
deleted file mode 100644
index 84f7440424..0000000000
--- a/preact-temml/README.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# preact-temml
-
-A [ProseKit](https://prosekit.dev) example.
-
-[](https://stackblitz.com/github/prosekit/examples/tree/master/preact-temml)
-[](https://codesandbox.io/p/sandbox/github/prosekit/examples/tree/master/preact-temml)
-
-Run the example locally with:
-
-```bash
-npx degit prosekit/examples/preact-temml preact-temml
-cd preact-temml
-npm install
-npm run dev
-```
diff --git a/preact-temml/index.html b/preact-temml/index.html
deleted file mode 100644
index b4f79f2233..0000000000
--- a/preact-temml/index.html
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
- ProseKit + Preact
-
-
-
-
-
-
diff --git a/preact-temml/package.json b/preact-temml/package.json
deleted file mode 100644
index 5781e3a294..0000000000
--- a/preact-temml/package.json
+++ /dev/null
@@ -1,26 +0,0 @@
-{
- "name": "example-preact-temml",
- "version": "0.0.0",
- "private": true,
- "type": "module",
- "scripts": {
- "build": "tsc -b && vite build",
- "dev": "vite",
- "preview": "vite preview"
- },
- "dependencies": {
- "preact": "^10.29.1",
- "prosekit": "^0.21.0",
- "temml": "^0.13.2"
- },
- "devDependencies": {
- "@egoist/tailwindcss-icons": "^1.9.2",
- "@iconify-json/lucide": "^1.2.107",
- "@preact/preset-vite": "^2.10.5",
- "@tailwindcss/vite": "^4.3.0",
- "@types/node": "^24.12.4",
- "tailwindcss": "^4.3.0",
- "typescript": "^6.0.3",
- "vite": "^8.0.13"
- }
-}
diff --git a/preact-temml/src/App.tsx b/preact-temml/src/App.tsx
deleted file mode 100644
index f6ec50ec0e..0000000000
--- a/preact-temml/src/App.tsx
+++ /dev/null
@@ -1,5 +0,0 @@
-import { ExampleEditor } from './components/editor/examples/temml'
-
-export default function App() {
- return
-}
diff --git a/preact-temml/src/app.css b/preact-temml/src/app.css
deleted file mode 100644
index ccad1aefaa..0000000000
--- a/preact-temml/src/app.css
+++ /dev/null
@@ -1,12 +0,0 @@
-@import 'tailwindcss';
-
-@plugin "@egoist/tailwindcss-icons";
-
-body {
- height: 100svh;
- display: grid;
- max-width: 900px;
- padding: 16px;
- margin-left: auto;
- margin-right: auto;
-}
diff --git a/preact-temml/src/components/editor/examples/temml/editor.tsx b/preact-temml/src/components/editor/examples/temml/editor.tsx
deleted file mode 100644
index 89009d34a9..0000000000
--- a/preact-temml/src/components/editor/examples/temml/editor.tsx
+++ /dev/null
@@ -1,35 +0,0 @@
-import 'prosekit/basic/style.css'
-import 'prosekit/basic/typography.css'
-
-import { useMemo } from 'preact/hooks'
-import { createEditor, type NodeJSON } from 'prosekit/core'
-import { ProseKit } from 'prosekit/preact'
-
-import { sampleContent } from '../../sample/sample-doc-tex'
-
-import { defineExtension } from './extension'
-
-interface EditorProps {
- initialContent?: NodeJSON
-}
-
-export default function Editor(props: EditorProps) {
- const defaultContent = props.initialContent ?? sampleContent
- const editor = useMemo(() => {
- const extension = defineExtension()
- return createEditor({ extension, defaultContent })
- }, [defaultContent])
-
- return (
-
-
-
- )
-}
diff --git a/preact-temml/src/components/editor/examples/temml/extension.ts b/preact-temml/src/components/editor/examples/temml/extension.ts
deleted file mode 100644
index 2fcd2ffa42..0000000000
--- a/preact-temml/src/components/editor/examples/temml/extension.ts
+++ /dev/null
@@ -1,17 +0,0 @@
-import { defineBasicExtension } from 'prosekit/basic'
-import { union } from 'prosekit/core'
-import { defineMath } from 'prosekit/extensions/math'
-
-import { renderTemmlMathBlock, renderTemmlMathInline } from '../../sample/temml'
-
-export function defineExtension() {
- return union(
- defineBasicExtension(),
- defineMath({
- renderMathBlock: renderTemmlMathBlock,
- renderMathInline: renderTemmlMathInline,
- }),
- )
-}
-
-export type EditorExtension = ReturnType
diff --git a/preact-temml/src/components/editor/examples/temml/index.ts b/preact-temml/src/components/editor/examples/temml/index.ts
deleted file mode 100644
index 1a07a6017a..0000000000
--- a/preact-temml/src/components/editor/examples/temml/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export { default as ExampleEditor } from './editor'
diff --git a/preact-temml/src/components/editor/sample/sample-doc-tex.ts b/preact-temml/src/components/editor/sample/sample-doc-tex.ts
deleted file mode 100644
index 21ccf3e94e..0000000000
--- a/preact-temml/src/components/editor/sample/sample-doc-tex.ts
+++ /dev/null
@@ -1,60 +0,0 @@
-import type { NodeJSON } from 'prosekit/core'
-
-const EULER_IDENTITY = String.raw`e^{i\pi} + 1 = 0`
-
-const QUADRATIC_FORMULA = String.raw`x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}`
-
-const GAUSSIAN_INTEGRAL = String.raw`\int_{-\infty}^{\infty} e^{-x^2} \, dx = \sqrt{\pi}`
-
-export const sampleContent: NodeJSON = {
- type: 'doc',
- content: [
- {
- type: 'heading',
- attrs: { level: 2 },
- content: [{ type: 'text', text: 'Inline equations' }],
- },
- {
- type: 'paragraph',
- content: [
- { type: 'text', text: "Euler's identity " },
- {
- type: 'mathInline',
- content: [{ type: 'text', text: EULER_IDENTITY }],
- },
- { type: 'text', text: ' and the quadratic formula ' },
- {
- type: 'mathInline',
- content: [{ type: 'text', text: QUADRATIC_FORMULA }],
- },
- { type: 'text', text: ' can appear within text. Type ' },
- { type: 'text', marks: [{ type: 'code' }], text: '$...$' },
- { type: 'text', text: ' to insert an inline equation.' },
- ],
- },
- {
- type: 'heading',
- attrs: { level: 2 },
- content: [{ type: 'text', text: 'Block equations' }],
- },
- {
- type: 'paragraph',
- content: [{ type: 'text', text: 'The Gaussian integral:' }],
- },
- {
- type: 'mathBlock',
- content: [{ type: 'text', text: GAUSSIAN_INTEGRAL }],
- },
- {
- type: 'paragraph',
- content: [
- { type: 'text', text: 'Type ' },
- { type: 'text', marks: [{ type: 'code' }], text: '$$' },
- {
- type: 'text',
- text: ' in a new line and press Enter to create a block equation.',
- },
- ],
- },
- ],
-}
diff --git a/preact-temml/src/components/editor/sample/temml.ts b/preact-temml/src/components/editor/sample/temml.ts
deleted file mode 100644
index 4cbe764f93..0000000000
--- a/preact-temml/src/components/editor/sample/temml.ts
+++ /dev/null
@@ -1,17 +0,0 @@
-import Temml from 'temml'
-
-export function renderTemmlMathBlock(text: string, element: HTMLElement) {
- Temml.render(text, element, {
- displayMode: true,
- annotate: true,
- throwOnError: false,
- })
-}
-
-export function renderTemmlMathInline(text: string, element: HTMLElement) {
- Temml.render(text, element, {
- displayMode: false,
- annotate: true,
- throwOnError: false,
- })
-}
diff --git a/preact-temml/src/main.tsx b/preact-temml/src/main.tsx
deleted file mode 100644
index 9452b5673a..0000000000
--- a/preact-temml/src/main.tsx
+++ /dev/null
@@ -1,5 +0,0 @@
-import './app.css'
-import { render } from 'preact'
-import App from './App.tsx'
-
-render(, document.getElementById('app')!)
diff --git a/preact-temml/tsconfig.app.json b/preact-temml/tsconfig.app.json
deleted file mode 100644
index 3fe3ab979d..0000000000
--- a/preact-temml/tsconfig.app.json
+++ /dev/null
@@ -1,33 +0,0 @@
-{
- "compilerOptions": {
- "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo",
- "target": "ES2022",
- "useDefineForClassFields": true,
- "module": "ESNext",
- "lib": ["ES2022", "DOM", "DOM.Iterable"],
- "types": ["vite/client"],
- "skipLibCheck": true,
- "paths": {
- "react": ["./node_modules/preact/compat/"],
- "react-dom": ["./node_modules/preact/compat/"]
- },
-
- /* Bundler mode */
- "moduleResolution": "bundler",
- "allowImportingTsExtensions": true,
- "verbatimModuleSyntax": true,
- "moduleDetection": "force",
- "noEmit": true,
- "jsx": "react-jsx",
- "jsxImportSource": "preact",
-
- /* Linting */
- "strict": true,
- "noUnusedLocals": true,
- "noUnusedParameters": true,
- "erasableSyntaxOnly": true,
- "noFallthroughCasesInSwitch": true,
- "noUncheckedSideEffectImports": true
- },
- "include": ["src"]
-}
diff --git a/preact-temml/tsconfig.json b/preact-temml/tsconfig.json
deleted file mode 100644
index 1ffef600d9..0000000000
--- a/preact-temml/tsconfig.json
+++ /dev/null
@@ -1,7 +0,0 @@
-{
- "files": [],
- "references": [
- { "path": "./tsconfig.app.json" },
- { "path": "./tsconfig.node.json" }
- ]
-}
diff --git a/preact-temml/tsconfig.node.json b/preact-temml/tsconfig.node.json
deleted file mode 100644
index 8a67f62f4c..0000000000
--- a/preact-temml/tsconfig.node.json
+++ /dev/null
@@ -1,26 +0,0 @@
-{
- "compilerOptions": {
- "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo",
- "target": "ES2023",
- "lib": ["ES2023"],
- "module": "ESNext",
- "types": ["node"],
- "skipLibCheck": true,
-
- /* Bundler mode */
- "moduleResolution": "bundler",
- "allowImportingTsExtensions": true,
- "verbatimModuleSyntax": true,
- "moduleDetection": "force",
- "noEmit": true,
-
- /* Linting */
- "strict": true,
- "noUnusedLocals": true,
- "noUnusedParameters": true,
- "erasableSyntaxOnly": true,
- "noFallthroughCasesInSwitch": true,
- "noUncheckedSideEffectImports": true
- },
- "include": ["vite.config.ts"]
-}
diff --git a/preact-temml/vite.config.ts b/preact-temml/vite.config.ts
deleted file mode 100644
index 5e0b3c9e1a..0000000000
--- a/preact-temml/vite.config.ts
+++ /dev/null
@@ -1,8 +0,0 @@
-import { defineConfig } from 'vite'
-import preact from '@preact/preset-vite'
-import tailwindcss from '@tailwindcss/vite'
-
-// https://vitejs.dev/config/
-export default defineConfig({
- plugins: [preact(), tailwindcss()],
-})
diff --git a/preact-typography/package.json b/preact-typography/package.json
index 24bc1dc7db..fdeab3839c 100644
--- a/preact-typography/package.json
+++ b/preact-typography/package.json
@@ -9,7 +9,7 @@
"preview": "vite preview"
},
"dependencies": {
- "katex": "^0.16.45",
+ "katex": "^0.16.47",
"preact": "^10.29.1",
"prosekit": "^0.21.0"
},
diff --git a/preact-yjs/package.json b/preact-yjs/package.json
index 3308ece64b..7333ba02b5 100644
--- a/preact-yjs/package.json
+++ b/preact-yjs/package.json
@@ -12,7 +12,6 @@
"preact": "^10.29.1",
"prosekit": "^0.21.0",
"y-prosemirror": "^1.3.7",
- "y-protocols": "^1.0.7",
"y-websocket": "^3.0.0",
"yjs": "^13.6.30"
},
diff --git a/react-full/package.json b/react-full/package.json
index a083c17177..4c57997be8 100644
--- a/react-full/package.json
+++ b/react-full/package.json
@@ -9,7 +9,7 @@
"preview": "vite preview"
},
"dependencies": {
- "katex": "^0.16.45",
+ "katex": "^0.16.47",
"prosekit": "^0.21.0",
"react": "^19.2.6",
"react-dom": "^19.2.6"
diff --git a/react-temml/.gitignore b/react-temml/.gitignore
deleted file mode 100644
index 5d6225c6df..0000000000
--- a/react-temml/.gitignore
+++ /dev/null
@@ -1,4 +0,0 @@
-node_modules
-dist
-.next
-.svelte-kit
diff --git a/react-temml/README.md b/react-temml/README.md
deleted file mode 100644
index 6caf95823f..0000000000
--- a/react-temml/README.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# react-temml
-
-A [ProseKit](https://prosekit.dev) example.
-
-[](https://stackblitz.com/github/prosekit/examples/tree/master/react-temml)
-[](https://codesandbox.io/p/sandbox/github/prosekit/examples/tree/master/react-temml)
-
-Run the example locally with:
-
-```bash
-npx degit prosekit/examples/react-temml react-temml
-cd react-temml
-npm install
-npm run dev
-```
diff --git a/react-temml/index.html b/react-temml/index.html
deleted file mode 100644
index a5a78f3bf8..0000000000
--- a/react-temml/index.html
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
- ProseKit + React
-
-
-
-
-
-
diff --git a/react-temml/package.json b/react-temml/package.json
deleted file mode 100644
index a59556d381..0000000000
--- a/react-temml/package.json
+++ /dev/null
@@ -1,29 +0,0 @@
-{
- "name": "example-react-temml",
- "version": "0.0.0",
- "private": true,
- "type": "module",
- "scripts": {
- "build": "tsc -b && vite build",
- "dev": "vite",
- "preview": "vite preview"
- },
- "dependencies": {
- "prosekit": "^0.21.0",
- "react": "^19.2.6",
- "react-dom": "^19.2.6",
- "temml": "^0.13.2"
- },
- "devDependencies": {
- "@egoist/tailwindcss-icons": "^1.9.2",
- "@iconify-json/lucide": "^1.2.107",
- "@tailwindcss/vite": "^4.3.0",
- "@types/node": "^24.12.4",
- "@types/react": "^19.2.14",
- "@types/react-dom": "^19.2.3",
- "@vitejs/plugin-react": "^6.0.1",
- "tailwindcss": "^4.3.0",
- "typescript": "^6.0.3",
- "vite": "^8.0.13"
- }
-}
diff --git a/react-temml/src/App.tsx b/react-temml/src/App.tsx
deleted file mode 100644
index f6ec50ec0e..0000000000
--- a/react-temml/src/App.tsx
+++ /dev/null
@@ -1,5 +0,0 @@
-import { ExampleEditor } from './components/editor/examples/temml'
-
-export default function App() {
- return
-}
diff --git a/react-temml/src/app.css b/react-temml/src/app.css
deleted file mode 100644
index ccad1aefaa..0000000000
--- a/react-temml/src/app.css
+++ /dev/null
@@ -1,12 +0,0 @@
-@import 'tailwindcss';
-
-@plugin "@egoist/tailwindcss-icons";
-
-body {
- height: 100svh;
- display: grid;
- max-width: 900px;
- padding: 16px;
- margin-left: auto;
- margin-right: auto;
-}
diff --git a/react-temml/src/components/editor/examples/temml/editor.tsx b/react-temml/src/components/editor/examples/temml/editor.tsx
deleted file mode 100644
index 41d22fcbde..0000000000
--- a/react-temml/src/components/editor/examples/temml/editor.tsx
+++ /dev/null
@@ -1,37 +0,0 @@
-'use client'
-
-import 'prosekit/basic/style.css'
-import 'prosekit/basic/typography.css'
-
-import { createEditor, type NodeJSON } from 'prosekit/core'
-import { ProseKit } from 'prosekit/react'
-import { useMemo } from 'react'
-
-import { sampleContent } from '../../sample/sample-doc-tex'
-
-import { defineExtension } from './extension'
-
-interface EditorProps {
- initialContent?: NodeJSON
-}
-
-export default function Editor(props: EditorProps) {
- const defaultContent = props.initialContent ?? sampleContent
- const editor = useMemo(() => {
- const extension = defineExtension()
- return createEditor({ extension, defaultContent })
- }, [defaultContent])
-
- return (
-
-
-
- )
-}
diff --git a/react-temml/src/components/editor/examples/temml/extension.ts b/react-temml/src/components/editor/examples/temml/extension.ts
deleted file mode 100644
index 2fcd2ffa42..0000000000
--- a/react-temml/src/components/editor/examples/temml/extension.ts
+++ /dev/null
@@ -1,17 +0,0 @@
-import { defineBasicExtension } from 'prosekit/basic'
-import { union } from 'prosekit/core'
-import { defineMath } from 'prosekit/extensions/math'
-
-import { renderTemmlMathBlock, renderTemmlMathInline } from '../../sample/temml'
-
-export function defineExtension() {
- return union(
- defineBasicExtension(),
- defineMath({
- renderMathBlock: renderTemmlMathBlock,
- renderMathInline: renderTemmlMathInline,
- }),
- )
-}
-
-export type EditorExtension = ReturnType
diff --git a/react-temml/src/components/editor/examples/temml/index.ts b/react-temml/src/components/editor/examples/temml/index.ts
deleted file mode 100644
index 1a07a6017a..0000000000
--- a/react-temml/src/components/editor/examples/temml/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export { default as ExampleEditor } from './editor'
diff --git a/react-temml/src/components/editor/sample/sample-doc-tex.ts b/react-temml/src/components/editor/sample/sample-doc-tex.ts
deleted file mode 100644
index 21ccf3e94e..0000000000
--- a/react-temml/src/components/editor/sample/sample-doc-tex.ts
+++ /dev/null
@@ -1,60 +0,0 @@
-import type { NodeJSON } from 'prosekit/core'
-
-const EULER_IDENTITY = String.raw`e^{i\pi} + 1 = 0`
-
-const QUADRATIC_FORMULA = String.raw`x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}`
-
-const GAUSSIAN_INTEGRAL = String.raw`\int_{-\infty}^{\infty} e^{-x^2} \, dx = \sqrt{\pi}`
-
-export const sampleContent: NodeJSON = {
- type: 'doc',
- content: [
- {
- type: 'heading',
- attrs: { level: 2 },
- content: [{ type: 'text', text: 'Inline equations' }],
- },
- {
- type: 'paragraph',
- content: [
- { type: 'text', text: "Euler's identity " },
- {
- type: 'mathInline',
- content: [{ type: 'text', text: EULER_IDENTITY }],
- },
- { type: 'text', text: ' and the quadratic formula ' },
- {
- type: 'mathInline',
- content: [{ type: 'text', text: QUADRATIC_FORMULA }],
- },
- { type: 'text', text: ' can appear within text. Type ' },
- { type: 'text', marks: [{ type: 'code' }], text: '$...$' },
- { type: 'text', text: ' to insert an inline equation.' },
- ],
- },
- {
- type: 'heading',
- attrs: { level: 2 },
- content: [{ type: 'text', text: 'Block equations' }],
- },
- {
- type: 'paragraph',
- content: [{ type: 'text', text: 'The Gaussian integral:' }],
- },
- {
- type: 'mathBlock',
- content: [{ type: 'text', text: GAUSSIAN_INTEGRAL }],
- },
- {
- type: 'paragraph',
- content: [
- { type: 'text', text: 'Type ' },
- { type: 'text', marks: [{ type: 'code' }], text: '$$' },
- {
- type: 'text',
- text: ' in a new line and press Enter to create a block equation.',
- },
- ],
- },
- ],
-}
diff --git a/react-temml/src/components/editor/sample/temml.ts b/react-temml/src/components/editor/sample/temml.ts
deleted file mode 100644
index 4cbe764f93..0000000000
--- a/react-temml/src/components/editor/sample/temml.ts
+++ /dev/null
@@ -1,17 +0,0 @@
-import Temml from 'temml'
-
-export function renderTemmlMathBlock(text: string, element: HTMLElement) {
- Temml.render(text, element, {
- displayMode: true,
- annotate: true,
- throwOnError: false,
- })
-}
-
-export function renderTemmlMathInline(text: string, element: HTMLElement) {
- Temml.render(text, element, {
- displayMode: false,
- annotate: true,
- throwOnError: false,
- })
-}
diff --git a/react-temml/src/main.tsx b/react-temml/src/main.tsx
deleted file mode 100644
index 87de8eb52b..0000000000
--- a/react-temml/src/main.tsx
+++ /dev/null
@@ -1,10 +0,0 @@
-import './app.css'
-import React from 'react'
-import ReactDOM from 'react-dom/client'
-import App from './App.tsx'
-
-ReactDOM.createRoot(document.getElementById('root')!).render(
-
-
- ,
-)
diff --git a/react-temml/tsconfig.app.json b/react-temml/tsconfig.app.json
deleted file mode 100644
index a9b5a59ca6..0000000000
--- a/react-temml/tsconfig.app.json
+++ /dev/null
@@ -1,28 +0,0 @@
-{
- "compilerOptions": {
- "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo",
- "target": "ES2022",
- "useDefineForClassFields": true,
- "lib": ["ES2022", "DOM", "DOM.Iterable"],
- "module": "ESNext",
- "types": ["vite/client"],
- "skipLibCheck": true,
-
- /* Bundler mode */
- "moduleResolution": "bundler",
- "allowImportingTsExtensions": true,
- "verbatimModuleSyntax": true,
- "moduleDetection": "force",
- "noEmit": true,
- "jsx": "react-jsx",
-
- /* Linting */
- "strict": true,
- "noUnusedLocals": true,
- "noUnusedParameters": true,
- "erasableSyntaxOnly": true,
- "noFallthroughCasesInSwitch": true,
- "noUncheckedSideEffectImports": true
- },
- "include": ["src"]
-}
diff --git a/react-temml/tsconfig.json b/react-temml/tsconfig.json
deleted file mode 100644
index 1ffef600d9..0000000000
--- a/react-temml/tsconfig.json
+++ /dev/null
@@ -1,7 +0,0 @@
-{
- "files": [],
- "references": [
- { "path": "./tsconfig.app.json" },
- { "path": "./tsconfig.node.json" }
- ]
-}
diff --git a/react-temml/tsconfig.node.json b/react-temml/tsconfig.node.json
deleted file mode 100644
index 8a67f62f4c..0000000000
--- a/react-temml/tsconfig.node.json
+++ /dev/null
@@ -1,26 +0,0 @@
-{
- "compilerOptions": {
- "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo",
- "target": "ES2023",
- "lib": ["ES2023"],
- "module": "ESNext",
- "types": ["node"],
- "skipLibCheck": true,
-
- /* Bundler mode */
- "moduleResolution": "bundler",
- "allowImportingTsExtensions": true,
- "verbatimModuleSyntax": true,
- "moduleDetection": "force",
- "noEmit": true,
-
- /* Linting */
- "strict": true,
- "noUnusedLocals": true,
- "noUnusedParameters": true,
- "erasableSyntaxOnly": true,
- "noFallthroughCasesInSwitch": true,
- "noUncheckedSideEffectImports": true
- },
- "include": ["vite.config.ts"]
-}
diff --git a/react-temml/vite.config.ts b/react-temml/vite.config.ts
deleted file mode 100644
index c90997597d..0000000000
--- a/react-temml/vite.config.ts
+++ /dev/null
@@ -1,8 +0,0 @@
-import { defineConfig } from 'vite'
-import react from '@vitejs/plugin-react'
-import tailwindcss from '@tailwindcss/vite'
-
-// https://vitejs.dev/config/
-export default defineConfig({
- plugins: [react(), tailwindcss()],
-})
diff --git a/react-tweet/package.json b/react-tweet/package.json
index 5f45222879..ec5b312a5e 100644
--- a/react-tweet/package.json
+++ b/react-tweet/package.json
@@ -12,7 +12,6 @@
"prosekit": "^0.21.0",
"react": "^19.2.6",
"react-dom": "^19.2.6",
- "react-parallax-tilt": "^1.7.327",
"react-tweet": "^3.3.0"
},
"devDependencies": {
diff --git a/react-typography/package.json b/react-typography/package.json
index 5e39739255..637213e668 100644
--- a/react-typography/package.json
+++ b/react-typography/package.json
@@ -9,7 +9,7 @@
"preview": "vite preview"
},
"dependencies": {
- "katex": "^0.16.45",
+ "katex": "^0.16.47",
"prosekit": "^0.21.0",
"react": "^19.2.6",
"react-dom": "^19.2.6"
diff --git a/react-yjs/package.json b/react-yjs/package.json
index ac131cb335..f9572923b8 100644
--- a/react-yjs/package.json
+++ b/react-yjs/package.json
@@ -13,7 +13,6 @@
"react": "^19.2.6",
"react-dom": "^19.2.6",
"y-prosemirror": "^1.3.7",
- "y-protocols": "^1.0.7",
"y-websocket": "^3.0.0",
"yjs": "^13.6.30"
},
diff --git a/solid-full/package.json b/solid-full/package.json
index edf5d9782d..4b332173d3 100644
--- a/solid-full/package.json
+++ b/solid-full/package.json
@@ -9,7 +9,7 @@
"preview": "vite preview"
},
"dependencies": {
- "katex": "^0.16.45",
+ "katex": "^0.16.47",
"prosekit": "^0.21.0",
"solid-js": "^1.9.13"
},
diff --git a/solid-temml/.gitignore b/solid-temml/.gitignore
deleted file mode 100644
index 5d6225c6df..0000000000
--- a/solid-temml/.gitignore
+++ /dev/null
@@ -1,4 +0,0 @@
-node_modules
-dist
-.next
-.svelte-kit
diff --git a/solid-temml/README.md b/solid-temml/README.md
deleted file mode 100644
index b5e21e97d5..0000000000
--- a/solid-temml/README.md
+++ /dev/null
@@ -1,15 +0,0 @@
-# solid-temml
-
-A [ProseKit](https://prosekit.dev) example.
-
-[](https://stackblitz.com/github/prosekit/examples/tree/master/solid-temml)
-[](https://codesandbox.io/p/sandbox/github/prosekit/examples/tree/master/solid-temml)
-
-Run the example locally with:
-
-```bash
-npx degit prosekit/examples/solid-temml solid-temml
-cd solid-temml
-npm install
-npm run dev
-```
diff --git a/solid-temml/index.html b/solid-temml/index.html
deleted file mode 100644
index 375ea8dbc4..0000000000
--- a/solid-temml/index.html
+++ /dev/null
@@ -1,12 +0,0 @@
-
-
-
-
-
- ProseKit + Solid
-
-
-
-
-
-
diff --git a/solid-temml/package.json b/solid-temml/package.json
deleted file mode 100644
index a145b7eba5..0000000000
--- a/solid-temml/package.json
+++ /dev/null
@@ -1,26 +0,0 @@
-{
- "name": "example-solid-temml",
- "version": "0.0.0",
- "private": true,
- "type": "module",
- "scripts": {
- "build": "tsc -b && vite build",
- "dev": "vite",
- "preview": "vite preview"
- },
- "dependencies": {
- "prosekit": "^0.21.0",
- "solid-js": "^1.9.13",
- "temml": "^0.13.2"
- },
- "devDependencies": {
- "@egoist/tailwindcss-icons": "^1.9.2",
- "@iconify-json/lucide": "^1.2.107",
- "@tailwindcss/vite": "^4.3.0",
- "@types/node": "^24.12.4",
- "tailwindcss": "^4.3.0",
- "typescript": "^6.0.3",
- "vite": "^8.0.13",
- "vite-plugin-solid": "^2.11.12"
- }
-}
diff --git a/solid-temml/src/App.tsx b/solid-temml/src/App.tsx
deleted file mode 100644
index f6ec50ec0e..0000000000
--- a/solid-temml/src/App.tsx
+++ /dev/null
@@ -1,5 +0,0 @@
-import { ExampleEditor } from './components/editor/examples/temml'
-
-export default function App() {
- return
-}
diff --git a/solid-temml/src/app.css b/solid-temml/src/app.css
deleted file mode 100644
index ccad1aefaa..0000000000
--- a/solid-temml/src/app.css
+++ /dev/null
@@ -1,12 +0,0 @@
-@import 'tailwindcss';
-
-@plugin "@egoist/tailwindcss-icons";
-
-body {
- height: 100svh;
- display: grid;
- max-width: 900px;
- padding: 16px;
- margin-left: auto;
- margin-right: auto;
-}
diff --git a/solid-temml/src/components/editor/examples/temml/editor.tsx b/solid-temml/src/components/editor/examples/temml/editor.tsx
deleted file mode 100644
index 11c41d38d9..0000000000
--- a/solid-temml/src/components/editor/examples/temml/editor.tsx
+++ /dev/null
@@ -1,33 +0,0 @@
-import 'prosekit/basic/style.css'
-import 'prosekit/basic/typography.css'
-
-import { createEditor, type NodeJSON } from 'prosekit/core'
-import { ProseKit } from 'prosekit/solid'
-import type { JSX } from 'solid-js'
-
-import { sampleContent } from '../../sample/sample-doc-tex'
-
-import { defineExtension } from './extension'
-
-interface EditorProps {
- initialContent?: NodeJSON
-}
-
-export default function Editor(props: EditorProps): JSX.Element {
- const defaultContent = props.initialContent ?? sampleContent
- const extension = defineExtension()
- const editor = createEditor({ extension, defaultContent })
-
- return (
-
-
-
- )
-}
diff --git a/solid-temml/src/components/editor/examples/temml/extension.ts b/solid-temml/src/components/editor/examples/temml/extension.ts
deleted file mode 100644
index 2fcd2ffa42..0000000000
--- a/solid-temml/src/components/editor/examples/temml/extension.ts
+++ /dev/null
@@ -1,17 +0,0 @@
-import { defineBasicExtension } from 'prosekit/basic'
-import { union } from 'prosekit/core'
-import { defineMath } from 'prosekit/extensions/math'
-
-import { renderTemmlMathBlock, renderTemmlMathInline } from '../../sample/temml'
-
-export function defineExtension() {
- return union(
- defineBasicExtension(),
- defineMath({
- renderMathBlock: renderTemmlMathBlock,
- renderMathInline: renderTemmlMathInline,
- }),
- )
-}
-
-export type EditorExtension = ReturnType
diff --git a/solid-temml/src/components/editor/examples/temml/index.ts b/solid-temml/src/components/editor/examples/temml/index.ts
deleted file mode 100644
index 1a07a6017a..0000000000
--- a/solid-temml/src/components/editor/examples/temml/index.ts
+++ /dev/null
@@ -1 +0,0 @@
-export { default as ExampleEditor } from './editor'
diff --git a/solid-temml/src/components/editor/sample/sample-doc-tex.ts b/solid-temml/src/components/editor/sample/sample-doc-tex.ts
deleted file mode 100644
index 21ccf3e94e..0000000000
--- a/solid-temml/src/components/editor/sample/sample-doc-tex.ts
+++ /dev/null
@@ -1,60 +0,0 @@
-import type { NodeJSON } from 'prosekit/core'
-
-const EULER_IDENTITY = String.raw`e^{i\pi} + 1 = 0`
-
-const QUADRATIC_FORMULA = String.raw`x = \frac{-b \pm \sqrt{b^2 - 4ac}}{2a}`
-
-const GAUSSIAN_INTEGRAL = String.raw`\int_{-\infty}^{\infty} e^{-x^2} \, dx = \sqrt{\pi}`
-
-export const sampleContent: NodeJSON = {
- type: 'doc',
- content: [
- {
- type: 'heading',
- attrs: { level: 2 },
- content: [{ type: 'text', text: 'Inline equations' }],
- },
- {
- type: 'paragraph',
- content: [
- { type: 'text', text: "Euler's identity " },
- {
- type: 'mathInline',
- content: [{ type: 'text', text: EULER_IDENTITY }],
- },
- { type: 'text', text: ' and the quadratic formula ' },
- {
- type: 'mathInline',
- content: [{ type: 'text', text: QUADRATIC_FORMULA }],
- },
- { type: 'text', text: ' can appear within text. Type ' },
- { type: 'text', marks: [{ type: 'code' }], text: '$...$' },
- { type: 'text', text: ' to insert an inline equation.' },
- ],
- },
- {
- type: 'heading',
- attrs: { level: 2 },
- content: [{ type: 'text', text: 'Block equations' }],
- },
- {
- type: 'paragraph',
- content: [{ type: 'text', text: 'The Gaussian integral:' }],
- },
- {
- type: 'mathBlock',
- content: [{ type: 'text', text: GAUSSIAN_INTEGRAL }],
- },
- {
- type: 'paragraph',
- content: [
- { type: 'text', text: 'Type ' },
- { type: 'text', marks: [{ type: 'code' }], text: '$$' },
- {
- type: 'text',
- text: ' in a new line and press Enter to create a block equation.',
- },
- ],
- },
- ],
-}
diff --git a/solid-temml/src/components/editor/sample/temml.ts b/solid-temml/src/components/editor/sample/temml.ts
deleted file mode 100644
index 4cbe764f93..0000000000
--- a/solid-temml/src/components/editor/sample/temml.ts
+++ /dev/null
@@ -1,17 +0,0 @@
-import Temml from 'temml'
-
-export function renderTemmlMathBlock(text: string, element: HTMLElement) {
- Temml.render(text, element, {
- displayMode: true,
- annotate: true,
- throwOnError: false,
- })
-}
-
-export function renderTemmlMathInline(text: string, element: HTMLElement) {
- Temml.render(text, element, {
- displayMode: false,
- annotate: true,
- throwOnError: false,
- })
-}
diff --git a/solid-temml/src/index.tsx b/solid-temml/src/index.tsx
deleted file mode 100644
index 92b7740757..0000000000
--- a/solid-temml/src/index.tsx
+++ /dev/null
@@ -1,8 +0,0 @@
-/* @refresh reload */
-import './app.css'
-import { render } from 'solid-js/web'
-import App from './App'
-
-const root = document.getElementById('root')
-
-render(() => , root!)
diff --git a/solid-temml/tsconfig.app.json b/solid-temml/tsconfig.app.json
deleted file mode 100644
index c0b480e758..0000000000
--- a/solid-temml/tsconfig.app.json
+++ /dev/null
@@ -1,29 +0,0 @@
-{
- "compilerOptions": {
- "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.app.tsbuildinfo",
- "target": "ES2022",
- "useDefineForClassFields": true,
- "module": "ESNext",
- "lib": ["ES2022", "DOM", "DOM.Iterable"],
- "types": ["vite/client"],
- "skipLibCheck": true,
-
- /* Bundler mode */
- "moduleResolution": "bundler",
- "allowImportingTsExtensions": true,
- "verbatimModuleSyntax": true,
- "moduleDetection": "force",
- "noEmit": true,
- "jsx": "preserve",
- "jsxImportSource": "solid-js",
-
- /* Linting */
- "strict": true,
- "noUnusedLocals": true,
- "noUnusedParameters": true,
- "erasableSyntaxOnly": true,
- "noFallthroughCasesInSwitch": true,
- "noUncheckedSideEffectImports": true
- },
- "include": ["src"]
-}
diff --git a/solid-temml/tsconfig.json b/solid-temml/tsconfig.json
deleted file mode 100644
index 1ffef600d9..0000000000
--- a/solid-temml/tsconfig.json
+++ /dev/null
@@ -1,7 +0,0 @@
-{
- "files": [],
- "references": [
- { "path": "./tsconfig.app.json" },
- { "path": "./tsconfig.node.json" }
- ]
-}
diff --git a/solid-temml/tsconfig.node.json b/solid-temml/tsconfig.node.json
deleted file mode 100644
index 8a67f62f4c..0000000000
--- a/solid-temml/tsconfig.node.json
+++ /dev/null
@@ -1,26 +0,0 @@
-{
- "compilerOptions": {
- "tsBuildInfoFile": "./node_modules/.tmp/tsconfig.node.tsbuildinfo",
- "target": "ES2023",
- "lib": ["ES2023"],
- "module": "ESNext",
- "types": ["node"],
- "skipLibCheck": true,
-
- /* Bundler mode */
- "moduleResolution": "bundler",
- "allowImportingTsExtensions": true,
- "verbatimModuleSyntax": true,
- "moduleDetection": "force",
- "noEmit": true,
-
- /* Linting */
- "strict": true,
- "noUnusedLocals": true,
- "noUnusedParameters": true,
- "erasableSyntaxOnly": true,
- "noFallthroughCasesInSwitch": true,
- "noUncheckedSideEffectImports": true
- },
- "include": ["vite.config.ts"]
-}
diff --git a/solid-temml/vite.config.ts b/solid-temml/vite.config.ts
deleted file mode 100644
index 9cb3cb51fd..0000000000
--- a/solid-temml/vite.config.ts
+++ /dev/null
@@ -1,7 +0,0 @@
-import { defineConfig } from 'vite'
-import solid from 'vite-plugin-solid'
-import tailwindcss from '@tailwindcss/vite'
-
-export default defineConfig({
- plugins: [solid(), tailwindcss()],
-})
diff --git a/solid-typography/package.json b/solid-typography/package.json
index df819bc69a..d4517ea466 100644
--- a/solid-typography/package.json
+++ b/solid-typography/package.json
@@ -9,7 +9,7 @@
"preview": "vite preview"
},
"dependencies": {
- "katex": "^0.16.45",
+ "katex": "^0.16.47",
"prosekit": "^0.21.0",
"solid-js": "^1.9.13"
},
diff --git a/solid-yjs/package.json b/solid-yjs/package.json
index aa882ebad8..7f3eac83d9 100644
--- a/solid-yjs/package.json
+++ b/solid-yjs/package.json
@@ -12,7 +12,6 @@
"prosekit": "^0.21.0",
"solid-js": "^1.9.13",
"y-prosemirror": "^1.3.7",
- "y-protocols": "^1.0.7",
"y-websocket": "^3.0.0",
"yjs": "^13.6.30"
},
diff --git a/svelte-full/package.json b/svelte-full/package.json
index 165bb65c02..1703409d9e 100644
--- a/svelte-full/package.json
+++ b/svelte-full/package.json
@@ -9,7 +9,7 @@
"preview": "vite preview"
},
"dependencies": {
- "katex": "^0.16.45",
+ "katex": "^0.16.47",
"prosekit": "^0.21.0"
},
"devDependencies": {
diff --git a/svelte-highlight/package.json b/svelte-highlight/package.json
index d5d0161644..97fe2b7f83 100644
--- a/svelte-highlight/package.json
+++ b/svelte-highlight/package.json
@@ -18,7 +18,7 @@
"@tailwindcss/vite": "^4.3.0",
"@tsconfig/svelte": "^5.0.8",
"postcss": "^8.5.14",
- "svelte": "5.55.7",
+ "svelte": "^5.55.7",
"svelte-check": "^4.4.8",
"tailwindcss": "^4.3.0",
"tslib": "^2.8.1",
diff --git a/svelte-katex/package.json b/svelte-katex/package.json
index 6b8345232e..9825cbb964 100644
--- a/svelte-katex/package.json
+++ b/svelte-katex/package.json
@@ -9,7 +9,7 @@
"preview": "vite preview"
},
"dependencies": {
- "katex": "^0.16.45",
+ "katex": "^0.16.47",
"prosekit": "^0.21.0"
},
"devDependencies": {
diff --git a/svelte-page/package.json b/svelte-page/package.json
index dd67b1d8ac..48a1b4b2bc 100644
--- a/svelte-page/package.json
+++ b/svelte-page/package.json
@@ -18,7 +18,7 @@
"@tailwindcss/vite": "^4.3.0",
"@tsconfig/svelte": "^5.0.8",
"postcss": "^8.5.14",
- "svelte": "5.55.7",
+ "svelte": "^5.55.7",
"svelte-check": "^4.4.8",
"tailwindcss": "^4.3.0",
"tslib": "^2.8.1",
diff --git a/svelte-sub-sup/package.json b/svelte-sub-sup/package.json
index a98803cfab..cd59327565 100644
--- a/svelte-sub-sup/package.json
+++ b/svelte-sub-sup/package.json
@@ -18,7 +18,7 @@
"@tailwindcss/vite": "^4.3.0",
"@tsconfig/svelte": "^5.0.8",
"postcss": "^8.5.14",
- "svelte": "5.55.7",
+ "svelte": "^5.55.7",
"svelte-check": "^4.4.8",
"tailwindcss": "^4.3.0",
"tslib": "^2.8.1",
diff --git a/svelte-typography/package.json b/svelte-typography/package.json
index 88ab993977..3dcae206db 100644
--- a/svelte-typography/package.json
+++ b/svelte-typography/package.json
@@ -9,7 +9,7 @@
"preview": "vite preview"
},
"dependencies": {
- "katex": "^0.16.45",
+ "katex": "^0.16.47",
"prosekit": "^0.21.0"
},
"devDependencies": {
diff --git a/svelte-yjs/package.json b/svelte-yjs/package.json
index d642ab7ebc..20c75aca55 100644
--- a/svelte-yjs/package.json
+++ b/svelte-yjs/package.json
@@ -11,7 +11,6 @@
"dependencies": {
"prosekit": "^0.21.0",
"y-prosemirror": "^1.3.7",
- "y-protocols": "^1.0.7",
"y-websocket": "^3.0.0",
"yjs": "^13.6.30"
},
diff --git a/sveltekit-full/package.json b/sveltekit-full/package.json
index e1d513d59f..c52d414850 100644
--- a/sveltekit-full/package.json
+++ b/sveltekit-full/package.json
@@ -12,7 +12,7 @@
"preview": "vite preview"
},
"dependencies": {
- "katex": "^0.16.45",
+ "katex": "^0.16.47",
"prosekit": "^0.21.0"
},
"devDependencies": {
diff --git a/vanilla-minimal/package.json b/vanilla-minimal/package.json
index 8e450c8e8e..167ee07321 100644
--- a/vanilla-minimal/package.json
+++ b/vanilla-minimal/package.json
@@ -15,7 +15,6 @@
"@egoist/tailwindcss-icons": "^1.9.2",
"@iconify-json/lucide": "^1.2.107",
"@tailwindcss/vite": "^4.3.0",
- "postcss": "^8.5.14",
"tailwindcss": "^4.3.0",
"typescript": "~6.0.3",
"vite": "^8.0.13"
diff --git a/vanilla-slash-menu/package.json b/vanilla-slash-menu/package.json
index 4670fc8402..292d295c16 100644
--- a/vanilla-slash-menu/package.json
+++ b/vanilla-slash-menu/package.json
@@ -15,7 +15,6 @@
"@egoist/tailwindcss-icons": "^1.9.2",
"@iconify-json/lucide": "^1.2.107",
"@tailwindcss/vite": "^4.3.0",
- "postcss": "^8.5.14",
"tailwindcss": "^4.3.0",
"typescript": "~6.0.3",
"vite": "^8.0.13"
diff --git a/vue-full/package.json b/vue-full/package.json
index 3acc70a54e..5e60cfbe49 100644
--- a/vue-full/package.json
+++ b/vue-full/package.json
@@ -9,7 +9,7 @@
"preview": "vite preview"
},
"dependencies": {
- "katex": "^0.16.45",
+ "katex": "^0.16.47",
"prosekit": "^0.21.0",
"vue": "^3.5.34"
},
diff --git a/vue-katex/package.json b/vue-katex/package.json
index 1c59359c61..f5b058cbd8 100644
--- a/vue-katex/package.json
+++ b/vue-katex/package.json
@@ -9,7 +9,7 @@
"preview": "vite preview"
},
"dependencies": {
- "katex": "^0.16.45",
+ "katex": "^0.16.47",
"prosekit": "^0.21.0",
"vue": "^3.5.34"
},
diff --git a/vue-typography/package.json b/vue-typography/package.json
index 672072b283..60d26ae9b7 100644
--- a/vue-typography/package.json
+++ b/vue-typography/package.json
@@ -9,7 +9,7 @@
"preview": "vite preview"
},
"dependencies": {
- "katex": "^0.16.45",
+ "katex": "^0.16.47",
"prosekit": "^0.21.0",
"vue": "^3.5.34"
},
diff --git a/vue-yjs/package.json b/vue-yjs/package.json
index 357f96321f..28c806b6a3 100644
--- a/vue-yjs/package.json
+++ b/vue-yjs/package.json
@@ -12,7 +12,6 @@
"prosekit": "^0.21.0",
"vue": "^3.5.34",
"y-prosemirror": "^1.3.7",
- "y-protocols": "^1.0.7",
"y-websocket": "^3.0.0",
"yjs": "^13.6.30"
},