diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index 44ef996a..88ef38c1 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -24,7 +24,7 @@ jobs:
steps:
- - uses: actions/checkout@v2.3.4
+ - uses: actions/checkout@v2.3.5
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v2.4.1
@@ -80,7 +80,7 @@ jobs:
steps:
- - uses: actions/checkout@v2.3.4
+ - uses: actions/checkout@v2.3.5
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v2.4.1
@@ -136,7 +136,7 @@ jobs:
steps:
- - uses: actions/checkout@v2.3.4
+ - uses: actions/checkout@v2.3.5
- name: Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v2.4.1
diff --git a/docs/api/extensions/bubble-menu.md b/docs/api/extensions/bubble-menu.md
index 752fb942..af0bd48c 100644
--- a/docs/api/extensions/bubble-menu.md
+++ b/docs/api/extensions/bubble-menu.md
@@ -67,7 +67,7 @@ new Editor({
```
### Frameworks
-
+https://embed.tiptap.dev/preview/Extensions/BubbleMenu
### Custom logic
Customize the logic for showing the menu with the `shouldShow` option. For components, `shouldShow` can be passed as a prop.
diff --git a/docs/api/extensions/character-count.md b/docs/api/extensions/character-count.md
index 91329e9f..c10564fd 100644
--- a/docs/api/extensions/character-count.md
+++ b/docs/api/extensions/character-count.md
@@ -36,7 +36,7 @@ CharacterCount.configure({
[packages/extension-character-count/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-character-count/)
## Usage
-
+https://embed.tiptap.dev/preview/Extensions/CharacterCount
## Count words, emojis, letters …
Want to count words instead? Or emojis? Or the letter *a*? Sure, no problem. You can access the `textContent` directly and count whatever you’re into.
diff --git a/docs/api/extensions/collaboration-cursor.md b/docs/api/extensions/collaboration-cursor.md
index ae6ed906..0bcb7bad 100644
--- a/docs/api/extensions/collaboration-cursor.md
+++ b/docs/api/extensions/collaboration-cursor.md
@@ -57,5 +57,5 @@ editor.commands.user({ name: 'Philipp Kühn', color: '#000000' })
:::warning Public
The content of this editor is shared with other users.
:::
-
-
+https://embed.tiptap.dev/preview/Extensions/CollaborationCursor?hideSource
+https://embed.tiptap.dev/preview/Extensions/CollaborationCursor
diff --git a/docs/api/extensions/collaboration.md b/docs/api/extensions/collaboration.md
index 92df17d8..c9792c8e 100644
--- a/docs/api/extensions/collaboration.md
+++ b/docs/api/extensions/collaboration.md
@@ -89,5 +89,5 @@ editor.commands.redo()
:::warning Public
The content of this editor is shared with other users.
:::
-
-
+https://embed.tiptap.dev/preview/Extensions/Collaboration?hideSource
+https://embed.tiptap.dev/preview/Extensions/Collaboration
diff --git a/docs/api/extensions/color.md b/docs/api/extensions/color.md
index 033dafc3..fcfbf384 100644
--- a/docs/api/extensions/color.md
+++ b/docs/api/extensions/color.md
@@ -53,4 +53,4 @@ editor.commands.unsetColor()
[packages/extension-color/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-color/)
## Usage
-
+https://embed.tiptap.dev/preview/Extensions/Color
diff --git a/docs/api/extensions/dropcursor.md b/docs/api/extensions/dropcursor.md
index 0d190f9f..1273e25c 100644
--- a/docs/api/extensions/dropcursor.md
+++ b/docs/api/extensions/dropcursor.md
@@ -57,4 +57,4 @@ Dropcursor.configure({
[packages/extension-dropcursor/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-dropcursor/)
## Usage
-
+https://embed.tiptap.dev/preview/Extensions/Dropcursor
diff --git a/docs/api/extensions/floating-menu.md b/docs/api/extensions/floating-menu.md
index 28727a22..7b1c3937 100644
--- a/docs/api/extensions/floating-menu.md
+++ b/docs/api/extensions/floating-menu.md
@@ -63,7 +63,7 @@ new Editor({
```
## Using a framework
-
+https://embed.tiptap.dev/preview/Extensions/FloatingMenu
### Custom logic
Customize the logic for showing the menu with the `shouldShow` option. For components, `shouldShow` can be passed as a prop.
diff --git a/docs/api/extensions/focus.md b/docs/api/extensions/focus.md
index 2db9e24f..db5eec7d 100644
--- a/docs/api/extensions/focus.md
+++ b/docs/api/extensions/focus.md
@@ -48,4 +48,4 @@ Focus.configure({
[packages/extension-focus/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-focus/)
## Usage
-
+https://embed.tiptap.dev/preview/Extensions/Focus
diff --git a/docs/api/extensions/font-family.md b/docs/api/extensions/font-family.md
index 857060c4..7a749d10 100644
--- a/docs/api/extensions/font-family.md
+++ b/docs/api/extensions/font-family.md
@@ -52,4 +52,4 @@ editor.commands.unsetFontFamily()
[packages/extension-font-family/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-font-family/)
## Usage
-
+https://embed.tiptap.dev/preview/Extensions/FontFamily
diff --git a/docs/api/extensions/gapcursor.md b/docs/api/extensions/gapcursor.md
index b78ba613..8b0e1d78 100644
--- a/docs/api/extensions/gapcursor.md
+++ b/docs/api/extensions/gapcursor.md
@@ -24,4 +24,4 @@ yarn add @tiptap/extension-gapcursor
[packages/extension-gapcursor/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-gapcursor/)
## Usage
-
+https://embed.tiptap.dev/preview/Extensions/Gapcursor
diff --git a/docs/api/extensions/history.md b/docs/api/extensions/history.md
index b73a2c35..74ccbf66 100644
--- a/docs/api/extensions/history.md
+++ b/docs/api/extensions/history.md
@@ -67,4 +67,4 @@ editor.commands.redo()
[packages/extension-history/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-history/)
## Usage
-
+https://embed.tiptap.dev/preview/Extensions/History
diff --git a/docs/api/extensions/placeholder.md b/docs/api/extensions/placeholder.md
index a207577a..62456324 100644
--- a/docs/api/extensions/placeholder.md
+++ b/docs/api/extensions/placeholder.md
@@ -94,4 +94,4 @@ Placeholder.configure({
[packages/extension-placeholder/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-placeholder/)
## Usage
-
+https://embed.tiptap.dev/preview/Extensions/Placeholder
diff --git a/docs/api/extensions/text-align.md b/docs/api/extensions/text-align.md
index c6f10dae..8aea15a0 100644
--- a/docs/api/extensions/text-align.md
+++ b/docs/api/extensions/text-align.md
@@ -86,4 +86,4 @@ editor.commands.unsetTextAlign()
[packages/extension-text-align/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-text-align/)
## Usage
-
+https://embed.tiptap.dev/preview/Extensions/TextAlign
diff --git a/docs/api/extensions/typography.md b/docs/api/extensions/typography.md
index 06037f8e..1294f049 100644
--- a/docs/api/extensions/typography.md
+++ b/docs/api/extensions/typography.md
@@ -52,4 +52,4 @@ yarn add @tiptap/extension-typography
[packages/extension-typography/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-typography/)
## Usage
-
+https://embed.tiptap.dev/preview/Extensions/Typography
diff --git a/docs/api/marks/bold.md b/docs/api/marks/bold.md
index 87704b4a..27c4a2c5 100644
--- a/docs/api/marks/bold.md
+++ b/docs/api/marks/bold.md
@@ -69,4 +69,4 @@ editor.commands.unsetBold()
[packages/extension-bold/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-bold/)
## Usage
-
+https://embed.tiptap.dev/preview/Marks/Bold
diff --git a/docs/api/marks/code.md b/docs/api/marks/code.md
index 8c50c485..2dece904 100644
--- a/docs/api/marks/code.md
+++ b/docs/api/marks/code.md
@@ -65,4 +65,4 @@ editor.commands.unsetCode()
[packages/extension-code/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-code/)
## Usage
-
+https://embed.tiptap.dev/preview/Marks/Code
diff --git a/docs/api/marks/highlight.md b/docs/api/marks/highlight.md
index 577f7822..1f66931c 100644
--- a/docs/api/marks/highlight.md
+++ b/docs/api/marks/highlight.md
@@ -79,4 +79,4 @@ editor.commands. unsetHighlight()
[packages/extension-highlight/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-highlight/)
## Usage
-
+https://embed.tiptap.dev/preview/Marks/Highlight
diff --git a/docs/api/marks/italic.md b/docs/api/marks/italic.md
index 410bf2d1..c7790011 100644
--- a/docs/api/marks/italic.md
+++ b/docs/api/marks/italic.md
@@ -69,4 +69,4 @@ editor.commands.unsetItalic()
[packages/extension-italic/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-italic/)
## Usage
-
+https://embed.tiptap.dev/preview/Marks/Italic
diff --git a/docs/api/marks/link.md b/docs/api/marks/link.md
index 0710dfeb..d743e31b 100644
--- a/docs/api/marks/link.md
+++ b/docs/api/marks/link.md
@@ -99,4 +99,4 @@ this.editor.getAttributes('link').href
[packages/extension-link/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-link/)
## Usage
-
+https://embed.tiptap.dev/preview/Marks/Link
diff --git a/docs/api/marks/strike.md b/docs/api/marks/strike.md
index 70e57101..2cd52d9d 100644
--- a/docs/api/marks/strike.md
+++ b/docs/api/marks/strike.md
@@ -69,4 +69,4 @@ editor.commands.unsetStrike()
[packages/extension-strike/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-strike/)
## Usage
-
+https://embed.tiptap.dev/preview/Marks/Strike
diff --git a/docs/api/marks/subscript.md b/docs/api/marks/subscript.md
index bdb0ae50..56ba52e9 100644
--- a/docs/api/marks/subscript.md
+++ b/docs/api/marks/subscript.md
@@ -63,4 +63,4 @@ editor.commands.unsetSubscript()
[packages/extension-subscript/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-subscript/)
## Usage
-
+https://embed.tiptap.dev/preview/Marks/Subscript
diff --git a/docs/api/marks/superscript.md b/docs/api/marks/superscript.md
index fb4c7ee8..3e91fe33 100644
--- a/docs/api/marks/superscript.md
+++ b/docs/api/marks/superscript.md
@@ -63,4 +63,4 @@ editor.commands.unsetSuperscript()
[packages/extension-superscript/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-superscript/)
## Usage
-
+https://embed.tiptap.dev/preview/Marks/Superscript
diff --git a/docs/api/marks/text-style.md b/docs/api/marks/text-style.md
index cef8e6a9..ccbe9063 100644
--- a/docs/api/marks/text-style.md
+++ b/docs/api/marks/text-style.md
@@ -31,4 +31,4 @@ editor.command.removeEmptyTextStyle()
[packages/extension-text-style/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-text-style/)
## Usage
-
+https://embed.tiptap.dev/preview/Marks/TextStyle
diff --git a/docs/api/marks/underline.md b/docs/api/marks/underline.md
index 793f7d0e..04f48c7f 100644
--- a/docs/api/marks/underline.md
+++ b/docs/api/marks/underline.md
@@ -69,4 +69,4 @@ editor.commands.unsetUnderline()
[packages/extension-underline/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-underline/)
## Usage
-
+https://embed.tiptap.dev/preview/Marks/Underline
diff --git a/docs/api/nodes/blockquote.md b/docs/api/nodes/blockquote.md
index c9059abb..6cadfa8a 100644
--- a/docs/api/nodes/blockquote.md
+++ b/docs/api/nodes/blockquote.md
@@ -64,4 +64,4 @@ editor.commands.unsetBlockquote()
[packages/extension-blockquote/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-blockquote/)
## Usage
-
+https://embed.tiptap.dev/preview/Nodes/Blockquote
diff --git a/docs/api/nodes/bullet-list.md b/docs/api/nodes/bullet-list.md
index 423702f0..c8d419c5 100644
--- a/docs/api/nodes/bullet-list.md
+++ b/docs/api/nodes/bullet-list.md
@@ -53,4 +53,4 @@ editor.commands.toggleBulletList()
[packages/extension-bullet-list/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-bullet-list/)
## Usage
-
+https://embed.tiptap.dev/preview/Nodes/BulletList
diff --git a/docs/api/nodes/code-block-lowlight.md b/docs/api/nodes/code-block-lowlight.md
index 395f6afd..bfcf43eb 100644
--- a/docs/api/nodes/code-block-lowlight.md
+++ b/docs/api/nodes/code-block-lowlight.md
@@ -69,4 +69,4 @@ editor.commands.toggleCodeBlock()
[packages/extension-code-block-lowlight/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-code-block-lowlight/)
## Usage
-
+https://embed.tiptap.dev/preview/Nodes/CodeBlockLowlight
diff --git a/docs/api/nodes/code-block.md b/docs/api/nodes/code-block.md
index ba1b62da..eb405b33 100644
--- a/docs/api/nodes/code-block.md
+++ b/docs/api/nodes/code-block.md
@@ -73,4 +73,4 @@ editor.commands.toggleCodeBlock()
[packages/extension-code-block/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-code-block/)
## Usage
-
+https://embed.tiptap.dev/preview/Nodes/CodeBlock
diff --git a/docs/api/nodes/document.md b/docs/api/nodes/document.md
index 209b437d..3c92a985 100644
--- a/docs/api/nodes/document.md
+++ b/docs/api/nodes/document.md
@@ -28,4 +28,4 @@ yarn add @tiptap/extension-document
[packages/extension-document/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-document/)
## Usage
-
+https://embed.tiptap.dev/preview/Nodes/Document
diff --git a/docs/api/nodes/emoji.md b/docs/api/nodes/emoji.md
index 865340e8..7511019f 100644
--- a/docs/api/nodes/emoji.md
+++ b/docs/api/nodes/emoji.md
@@ -21,4 +21,4 @@ You can use any emoji picker, or build your own. Just use [commands](/api/comman
this.editor.chain().focus().insertContent('✨').run()
```
-
+https://embed.tiptap.dev/preview/Nodes/Emoji
diff --git a/docs/api/nodes/hard-break.md b/docs/api/nodes/hard-break.md
index 3901bfa1..c87ca169 100644
--- a/docs/api/nodes/hard-break.md
+++ b/docs/api/nodes/hard-break.md
@@ -60,4 +60,4 @@ editor.commands.setHardBreak()
[packages/extension-hard-break/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-hard-break/)
## Usage
-
+https://embed.tiptap.dev/preview/Nodes/HardBreak
diff --git a/docs/api/nodes/heading.md b/docs/api/nodes/heading.md
index 01b2945b..79862acc 100644
--- a/docs/api/nodes/heading.md
+++ b/docs/api/nodes/heading.md
@@ -74,4 +74,4 @@ editor.commands.toggleHeading({ level: 1 })
[packages/extension-heading/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-heading/)
## Usage
-
+https://embed.tiptap.dev/preview/Nodes/Heading
diff --git a/docs/api/nodes/horizontal-rule.md b/docs/api/nodes/horizontal-rule.md
index ec7881e0..de176fc7 100644
--- a/docs/api/nodes/horizontal-rule.md
+++ b/docs/api/nodes/horizontal-rule.md
@@ -46,4 +46,4 @@ editor.commands.setHorizontalRule()
[packages/extension-horizontal-rule/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-horizontal-rule/)
## Usage
-
+https://embed.tiptap.dev/preview/Nodes/HorizontalRule
diff --git a/docs/api/nodes/image.md b/docs/api/nodes/image.md
index 8c99ec8a..730cca75 100644
--- a/docs/api/nodes/image.md
+++ b/docs/api/nodes/image.md
@@ -62,4 +62,4 @@ editor.commands.setImage({ src: 'https://example.com/foobar.png', alt: 'A boring
[packages/extension-image/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-image/)
## Usage
-
+https://embed.tiptap.dev/preview/Nodes/Image
diff --git a/docs/api/nodes/list-item.md b/docs/api/nodes/list-item.md
index 51f63752..ae3876b1 100644
--- a/docs/api/nodes/list-item.md
+++ b/docs/api/nodes/list-item.md
@@ -44,4 +44,4 @@ ListItem.configure({
[packages/extension-list-item/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-list-item/)
## Usage
-
+https://embed.tiptap.dev/preview/Nodes/ListItem
diff --git a/docs/api/nodes/mention.md b/docs/api/nodes/mention.md
index e311304f..8d52ce3d 100644
--- a/docs/api/nodes/mention.md
+++ b/docs/api/nodes/mention.md
@@ -80,4 +80,4 @@ Mention.configure({
[packages/extension-mention/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-mention/)
## Usage
-
+https://embed.tiptap.dev/preview/Nodes/Mention
diff --git a/docs/api/nodes/ordered-list.md b/docs/api/nodes/ordered-list.md
index 618cdd84..8c5ff3bb 100644
--- a/docs/api/nodes/ordered-list.md
+++ b/docs/api/nodes/ordered-list.md
@@ -53,4 +53,4 @@ editor.commands.toggleOrderedList()
[packages/extension-ordered-list/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-ordered-list/)
## Usage
-
+https://embed.tiptap.dev/preview/Nodes/OrderedList
diff --git a/docs/api/nodes/paragraph.md b/docs/api/nodes/paragraph.md
index 62734501..c0a7519c 100644
--- a/docs/api/nodes/paragraph.md
+++ b/docs/api/nodes/paragraph.md
@@ -53,4 +53,4 @@ editor.commands.setParagraph()
[packages/extension-paragraph/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-paragraph/)
## Usage
-
+https://embed.tiptap.dev/preview/Nodes/Paragraph
diff --git a/docs/api/nodes/table-cell.md b/docs/api/nodes/table-cell.md
index 7be331aa..b3ffe986 100644
--- a/docs/api/nodes/table-cell.md
+++ b/docs/api/nodes/table-cell.md
@@ -24,4 +24,4 @@ This extension requires the [`Table`](/api/nodes/table), [`TableRow`](/api/nodes
[packages/extension-table-cell/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-table-cell/)
## Usage
-
+https://embed.tiptap.dev/preview/Nodes/Table
diff --git a/docs/api/nodes/table-header.md b/docs/api/nodes/table-header.md
index b8ea881f..7f39a882 100644
--- a/docs/api/nodes/table-header.md
+++ b/docs/api/nodes/table-header.md
@@ -40,4 +40,4 @@ This extension requires the [`Table`](/api/nodes/table), [`TableRow`](/api/nodes
[packages/extension-table-header/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-table-header/)
## Usage
-
+https://embed.tiptap.dev/preview/Nodes/Table
diff --git a/docs/api/nodes/table-row.md b/docs/api/nodes/table-row.md
index 8af41e3b..fb0460c4 100644
--- a/docs/api/nodes/table-row.md
+++ b/docs/api/nodes/table-row.md
@@ -24,4 +24,4 @@ This extension requires the [`Table`](/api/nodes/table), [`TableHeader`](/api/no
[packages/extension-table-row/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-table-row/)
## Usage
-
+https://embed.tiptap.dev/preview/Nodes/Table
diff --git a/docs/api/nodes/table.md b/docs/api/nodes/table.md
index 76ffccd4..a9f7ca6f 100644
--- a/docs/api/nodes/table.md
+++ b/docs/api/nodes/table.md
@@ -190,4 +190,4 @@ editor.commands.fixTables()
[packages/extension-table/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-table/)
## Usage
-
+https://embed.tiptap.dev/preview/Nodes/Table
diff --git a/docs/api/nodes/task-item.md b/docs/api/nodes/task-item.md
index 7acd5e46..dc726b44 100644
--- a/docs/api/nodes/task-item.md
+++ b/docs/api/nodes/task-item.md
@@ -46,4 +46,4 @@ TaskItem.configure({
[packages/extension-task-item/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-task-item/)
## Usage
-
+https://embed.tiptap.dev/preview/Nodes/TaskItem
diff --git a/docs/api/nodes/task-list.md b/docs/api/nodes/task-list.md
index 918a5f32..ce1bfada 100644
--- a/docs/api/nodes/task-list.md
+++ b/docs/api/nodes/task-list.md
@@ -53,4 +53,4 @@ editor.commands.toggleTaskList()
[packages/extension-task-list/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-task-list/)
## Usage
-
+https://embed.tiptap.dev/preview/Nodes/TaskList
diff --git a/docs/api/nodes/text.md b/docs/api/nodes/text.md
index 7b17d3aa..b22922f3 100644
--- a/docs/api/nodes/text.md
+++ b/docs/api/nodes/text.md
@@ -26,4 +26,4 @@ yarn add @tiptap/extension-text
[packages/extension-text/](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-text/)
## Usage
-
+https://embed.tiptap.dev/preview/Nodes/Text
diff --git a/docs/api/utilities/html.md b/docs/api/utilities/html.md
index 7b66db0a..bbad3d4a 100644
--- a/docs/api/utilities/html.md
+++ b/docs/api/utilities/html.md
@@ -10,7 +10,7 @@ All it needs is JSON or a HTML string, and a list of extensions.
[packages/html/](https://github.com/ueberdosis/tiptap/blob/main/packages/html/)
## Generate HTML from JSON
-
+https://embed.tiptap.dev/preview/GuideContent/GenerateHTML
## Generate JSON from HTML
-
+https://embed.tiptap.dev/preview/GuideContent/GenerateJSON
diff --git a/docs/examples/book.md b/docs/examples/book.md
index 438c37fc..4b66758c 100644
--- a/docs/examples/book.md
+++ b/docs/examples/book.md
@@ -2,4 +2,4 @@
This demo has more than 200,000 words, check the performance yourself.
-
+https://embed.tiptap.dev/preview/Examples/Book
diff --git a/docs/examples/collaborative-editing.md b/docs/examples/collaborative-editing.md
index 6118c2b7..263764b2 100644
--- a/docs/examples/collaborative-editing.md
+++ b/docs/examples/collaborative-editing.md
@@ -18,7 +18,7 @@ It connects all clients to a WebSocket server and merges changes to the document
Be nice! The content of this editor is shared with other users from the Internet.
:::
-
+https://embed.tiptap.dev/preview/Examples/CollaborativeEditing
## Backend
In case you’re wondering what kind of sorcery you need on the server to achieve this, here is the whole backend code for the demo:
diff --git a/docs/examples/custom-document.md b/docs/examples/custom-document.md
index 1d0213fb..71d43ead 100644
--- a/docs/examples/custom-document.md
+++ b/docs/examples/custom-document.md
@@ -1,3 +1,3 @@
# Custom Document
-
+https://embed.tiptap.dev/preview/Examples/CustomDocument
diff --git a/docs/examples/default.md b/docs/examples/default.md
index a6ce1415..56703e18 100644
--- a/docs/examples/default.md
+++ b/docs/examples/default.md
@@ -1,4 +1,4 @@
# Default text editor
Did we mention that you have full control over the rendering of the editor? Here is a barebones example without any styling, but packed with a whole set of common extensions.
-
+https://embed.tiptap.dev/preview/Examples/Default
diff --git a/docs/examples/drawing.md b/docs/examples/drawing.md
index 6ad82db6..bc7cfb72 100644
--- a/docs/examples/drawing.md
+++ b/docs/examples/drawing.md
@@ -1,4 +1,4 @@
# Drawing
Did you ever wanted to draw in a text editor? Me neither. Anyway, here is an example how that could work with tiptap. If you want to build something like that, [learn more about node views](/guide/node-views).
-
+https://embed.tiptap.dev/preview/Examples/Drawing
diff --git a/docs/examples/formatting.md b/docs/examples/formatting.md
index 70febaa9..d1c1b13b 100644
--- a/docs/examples/formatting.md
+++ b/docs/examples/formatting.md
@@ -1,3 +1,3 @@
# Formatting
-
+https://embed.tiptap.dev/preview/Examples/Formatting
diff --git a/docs/examples/images.md b/docs/examples/images.md
index 4346e91c..d656a703 100644
--- a/docs/examples/images.md
+++ b/docs/examples/images.md
@@ -8,4 +8,4 @@ Though thousands of developers use tiptap every day, it’s still not our full-t
[Become a sponsor on GitHub →](https://github.com/sponsors/ueberdosis)
:::
-
+https://embed.tiptap.dev/preview/Examples/Images
diff --git a/docs/examples/interactivity.md b/docs/examples/interactivity.md
index eceea800..9e7d71e2 100644
--- a/docs/examples/interactivity.md
+++ b/docs/examples/interactivity.md
@@ -2,6 +2,6 @@
Thanks to [node views](/guide/node-views) you can add interactivity to your nodes. If you can write it in JavaScript, you can add it to the editor.
-
+https://embed.tiptap.dev/preview/GuideNodeViews/VueComponent
-
+https://embed.tiptap.dev/preview/GuideNodeViews/VueComponentContent
diff --git a/docs/examples/markdown-shortcuts.md b/docs/examples/markdown-shortcuts.md
index b67e5479..dd5c24d8 100644
--- a/docs/examples/markdown-shortcuts.md
+++ b/docs/examples/markdown-shortcuts.md
@@ -1,3 +1,3 @@
# Markdown shortcuts
-
+https://embed.tiptap.dev/preview/Examples/MarkdownShortcuts
diff --git a/docs/examples/menus.md b/docs/examples/menus.md
index 75ff9a3c..b8f9074c 100644
--- a/docs/examples/menus.md
+++ b/docs/examples/menus.md
@@ -1,3 +1,3 @@
# Menus
-
+https://embed.tiptap.dev/preview/Examples/Menus
diff --git a/docs/examples/minimal.md b/docs/examples/minimal.md
index 80e73298..84e85fa1 100644
--- a/docs/examples/minimal.md
+++ b/docs/examples/minimal.md
@@ -1,3 +1,4 @@
# Minimal setup
-
+https://embed.tiptap.dev/preview/Examples/Minimal
+
diff --git a/docs/examples/savvy.md b/docs/examples/savvy.md
index 98011cb6..3276466f 100644
--- a/docs/examples/savvy.md
+++ b/docs/examples/savvy.md
@@ -1,3 +1,3 @@
# A clever editor
-
+https://embed.tiptap.dev/preview/Examples/Savvy
diff --git a/docs/examples/suggestions.md b/docs/examples/suggestions.md
index 7fd97a90..0bcf8d9d 100644
--- a/docs/examples/suggestions.md
+++ b/docs/examples/suggestions.md
@@ -1,3 +1,3 @@
# Mentions
-
+https://embed.tiptap.dev/preview/Examples/Community
diff --git a/docs/examples/syntax-highlighting.md b/docs/examples/syntax-highlighting.md
index 8060c55a..1251b949 100644
--- a/docs/examples/syntax-highlighting.md
+++ b/docs/examples/syntax-highlighting.md
@@ -1,3 +1,3 @@
# Syntax highlighting
-
+https://embed.tiptap.dev/preview/Examples/CodeBlockLanguage
diff --git a/docs/examples/tables.md b/docs/examples/tables.md
index ee4c33b0..35f568c1 100644
--- a/docs/examples/tables.md
+++ b/docs/examples/tables.md
@@ -4,4 +4,4 @@
Using this extension in a commercial project? [Become a sponsor](/sponsor) to fund its development!
:::
-
+https://embed.tiptap.dev/preview/Examples/Tables
diff --git a/docs/examples/tasks.md b/docs/examples/tasks.md
index fb89f31f..821fafad 100644
--- a/docs/examples/tasks.md
+++ b/docs/examples/tasks.md
@@ -1,3 +1,3 @@
# Tasks
-
+https://embed.tiptap.dev/preview/Examples/Tasks
diff --git a/docs/experiments/commands.md b/docs/experiments/commands.md
index e4da4794..99c13bdc 100644
--- a/docs/experiments/commands.md
+++ b/docs/experiments/commands.md
@@ -5,4 +5,4 @@
## Issues
* It’s fine to use, just don’t send bug reports, PRs or anything else. We’ll just need some time to publish that as an official extension.
-
+https://embed.tiptap.dev/preview/Experiments/Commands
diff --git a/docs/experiments/details.md b/docs/experiments/details.md
index cbe43def..adae36de 100644
--- a/docs/experiments/details.md
+++ b/docs/experiments/details.md
@@ -5,4 +5,4 @@
## Issues
* Nested lists cause trouble
-
+https://embed.tiptap.dev/preview/Experiments/Details
diff --git a/docs/experiments/embeds.md b/docs/experiments/embeds.md
index df5f0f59..ed06dda3 100644
--- a/docs/experiments/embeds.md
+++ b/docs/experiments/embeds.md
@@ -5,4 +5,4 @@
## Issues
* Oh man, building a really good iframe/embed extension will take some time. The best thing to speed up the development is to [sponsor our work](/sponsor) on GitHub.
-
+https://embed.tiptap.dev/preview/Experiments/Embeds
diff --git a/docs/experiments/figure.md b/docs/experiments/figure.md
index 85ae6813..7f6cb784 100644
--- a/docs/experiments/figure.md
+++ b/docs/experiments/figure.md
@@ -9,4 +9,4 @@
## Issues
* The current implementation works with images only.
-
+https://embed.tiptap.dev/preview/Experiments/Figure
diff --git a/docs/experiments/generic-figure.md b/docs/experiments/generic-figure.md
index e2f536af..a984e3df 100644
--- a/docs/experiments/generic-figure.md
+++ b/docs/experiments/generic-figure.md
@@ -2,4 +2,4 @@
⚠️ Experiment
-
+https://embed.tiptap.dev/preview/Experiments/GenericFigure
diff --git a/docs/experiments/linter.md b/docs/experiments/linter.md
index 682ee385..a6a5700e 100644
--- a/docs/experiments/linter.md
+++ b/docs/experiments/linter.md
@@ -7,4 +7,4 @@ Linter can be used to check the content as per your wish and highlight it to the
## Issues
* There is no decoration API in tiptap, that’s why this is a lot of ProseMirror work. Before we’ll publish that example, we’d need to find a few ways to make it more tiptap-like. For example, it would be great to use Vue/React components for the widget.
-
+https://embed.tiptap.dev/preview/Experiments/Linter
diff --git a/docs/experiments/multiple-editors.md b/docs/experiments/multiple-editors.md
index 63222d8e..a0be0a19 100644
--- a/docs/experiments/multiple-editors.md
+++ b/docs/experiments/multiple-editors.md
@@ -2,4 +2,4 @@
The following example has three different instances of tiptap. The first is configured to have a single paragraph of text, the second to have a task list and the third to have text. All of them are stored in a single Y.js document, which can be synced in real-time with other users.
-
+https://embed.tiptap.dev/preview/Experiments/MultipleEditors
diff --git a/docs/experiments/trailing-node.md b/docs/experiments/trailing-node.md
index b7db290a..306f71a7 100644
--- a/docs/experiments/trailing-node.md
+++ b/docs/experiments/trailing-node.md
@@ -5,4 +5,4 @@
## Issues
* This implementation adds an actual node. It’d be great to use a decoration for that use case, so the document isn’t modified.
-
+https://embed.tiptap.dev/preview/Experiments/TrailingNode
diff --git a/docs/guide/menus.md b/docs/guide/menus.md
index 8eb9c947..3f6acf09 100644
--- a/docs/guide/menus.md
+++ b/docs/guide/menus.md
@@ -18,12 +18,12 @@ A fixed menu, for example on top of the editor, can be anything. We don’t prov
### Bubble menu
The [bubble menu](/api/extensions/bubble-menu) appears when selecting text. Markup and styling is totally up to you.
-
+https://embed.tiptap.dev/preview/Extensions/BubbleMenu?hideSource
### Floating menu
The [floating menu](/api/extensions/floating-menu) appears in empty lines. Markup and styling is totally up to you.
-
+https://embed.tiptap.dev/preview/Extensions/FloatingMenu?hideSource
### Slash commands (work in progress)
It’s not an official extension yet, but [there’s an experiment you can use to add what we call slash commands](/experiments/commands). It allows you to start a new line with `/` and will bring up a popup to select which node should be added.
diff --git a/docs/guide/node-views/examples.md b/docs/guide/node-views/examples.md
index a5e96c39..55b778f0 100644
--- a/docs/guide/node-views/examples.md
+++ b/docs/guide/node-views/examples.md
@@ -12,16 +12,16 @@ Keep in mind that those are just examples to get you started, not officially sup
## Drag handles
Drag handles aren’t that easy to add. We are still on the lookout what’s the best way to add them. Official support will come at some point, but there’s no timeline yet.
-
+https://embed.tiptap.dev/preview/GuideNodeViews/DragHandle
## Table of contents
This one loops through the editor content, gives all headings an ID and renders a Table of Contents with Vue.
-
+https://embed.tiptap.dev/preview/GuideNodeViews/TableOfContents
## Drawing in the editor
The drawing example shows a SVG that enables you to draw inside the editor.
-
+https://embed.tiptap.dev/preview/Examples/Drawing
It’s not working very well with the Collaboration extension. It’s sending all data on every change, which can get pretty huge with Y.js. If you plan to use those two in combination, you need to improve it or your WebSocket backend will melt.
diff --git a/docs/guide/node-views/js.md b/docs/guide/node-views/js.md
index 52c4e939..4ac737ab 100644
--- a/docs/guide/node-views/js.md
+++ b/docs/guide/node-views/js.md
@@ -40,7 +40,7 @@ export default Node.create({
Got it? Let’s see it in action. Feel free to copy the below example to get started.
-
+https://embed.tiptap.dev/preview/GuideNodeViews/JavaScript
That node view even interacts with the editor. Time to see how that is wired up.
@@ -118,6 +118,6 @@ return {
Got it? You’re free to do anything you like, as long as you return a container for the node view and another one for the content. Here is the above example in action:
-
+https://embed.tiptap.dev/preview/GuideNodeViews/JavaScriptContent
Keep in mind that this content is rendered by tiptap. That means you need to tell what kind of content is allowed, for example with `content: 'inline*'` in your node extension (that’s what we use in the above example).
diff --git a/docs/guide/node-views/react.md b/docs/guide/node-views/react.md
index 27cba99d..18819b49 100644
--- a/docs/guide/node-views/react.md
+++ b/docs/guide/node-views/react.md
@@ -42,7 +42,7 @@ There is a little bit of magic required to make this work. But don’t worry, we
Got it? Let’s see it in action. Feel free to copy the below example to get started.
-
+https://embed.tiptap.dev/preview/GuideNodeViews/ReactComponent
That component doesn’t interact with the editor, though. Time to wire it up.
@@ -90,7 +90,7 @@ export default () => {
You don’t need to add those `className` attributes, feel free to remove them or pass other class names. Try it out in the following example:
-
+https://embed.tiptap.dev/preview/GuideNodeViews/ReactComponentContent
Keep in mind that this content is rendered by tiptap. That means you need to tell what kind of content is allowed, for example with `content: 'inline*'` in your node extension (that’s what we use in the above example).
@@ -126,4 +126,4 @@ Delete the current node
## Dragging
To make your node views draggable, set `draggable: true` in the extension and add `data-drag-handle` to the DOM element that should function as the drag handle.
-
+
diff --git a/docs/guide/node-views/vue.md b/docs/guide/node-views/vue.md
index 4da7eaab..45db00c7 100644
--- a/docs/guide/node-views/vue.md
+++ b/docs/guide/node-views/vue.md
@@ -44,7 +44,7 @@ There is a little bit of magic required to make this work. But don’t worry, we
Got it? Let’s see it in action. Feel free to copy the below example to get started.
-
+https://embed.tiptap.dev/preview/GuideNodeViews/VueComponent
That component doesn’t interact with the editor, though. Time to wire it up.
@@ -112,7 +112,7 @@ export default {
You don’t need to add those `class` attributes, feel free to remove them or pass other class names. Try it out in the following example:
-
+https://embed.tiptap.dev/preview/GuideNodeViews/VueComponentContent
Keep in mind that this content is rendered by tiptap. That means you need to tell what kind of content is allowed, for example with `content: 'inline*'` in your node extension (that’s what we use in the above example).
@@ -226,4 +226,4 @@ export default Vue.extend({
## Dragging
To make your node views draggable, set `draggable: true` in the extension and add `data-drag-handle` to the DOM element that should function as the drag handle.
-
+https://embed.tiptap.dev/preview/GuideNodeViews/DragHandle
diff --git a/docs/guide/output.md b/docs/guide/output.md
index 15106749..f5e6f0a4 100644
--- a/docs/guide/output.md
+++ b/docs/guide/output.md
@@ -42,7 +42,7 @@ editor.commands.setContent({
Here is an interactive example where you can see that in action:
-
+https://embed.tiptap.dev/preview/GuideContent/ExportJSON?hideSource
### Option 2: HTML
HTML can be easily rendered in other places, for example in emails and it’s wildly used, so it’s probably easier to switch the editor at some point. Anyway, every editor instance provides a method to get HTML from the current document:
@@ -66,7 +66,7 @@ editor.commands.setContent(`
Example Text
`)
Use this interactive example to fiddle around:
-
+https://embed.tiptap.dev/preview/GuideContent/ExportHTML?hideSource
### Option 3: Y.js
Our editor has top notch support for Y.js, which is amazing to add features like [realtime collaboration, offline editing, or syncing between devices](/guide/collaborative-editing).
@@ -112,18 +112,18 @@ const editor = new Editor({
### Option 1: Read-only instance of tiptap
To render the saved content, set the editor to read-only. That’s how you can achieve the exact same rendering as it’s in the editor, without duplicating your CSS and other code.
-
+https://embed.tiptap.dev/preview/GuideContent/ReadOnly
### Option 2: Generate HTML from ProseMirror JSON
If you need to render the content on the server side, for example to generate the HTML for a blog post which has been written in tiptap, you’ll probably want to do just that without an actual editor instance.
That’s what the `generateHTML()` is for. It’s a helper function which renders HTML without an actual editor instance.
-
+https://embed.tiptap.dev/preview/GuideContent/GenerateHTML
By the way, the other way is possible, too. The below examples shows how to generate JSON from HTML.
-
+https://embed.tiptap.dev/preview/GuideContent/GenerateJSON
## Migration
If you’re migrating existing content to tiptap we would recommend to get your existing output to HTML. That’s probably the best format to get your initial content into tiptap, because ProseMirror ensures there is nothing wrong with it. Even if there are some tags or attributes that aren’t allowed (based on your configuration), tiptap just throws them away quietly.
diff --git a/docs/installation/nuxt.md b/docs/installation/nuxt.md
index f2d9ee29..5cdcc6d8 100644
--- a/docs/installation/nuxt.md
+++ b/docs/installation/nuxt.md
@@ -99,4 +99,4 @@ You should now see tiptap in your browser. Time to give yourself a pat on the ba
## 5. Use v-model (optional)
You’re probably used to bind your data with `v-model` in forms, that’s also possible with tiptap. Here is a working example component, that you can integrate in your project:
-
+https://embed.tiptap.dev/preview/GuideGettingStarted/VModel
diff --git a/docs/installation/react.md b/docs/installation/react.md
index 70a601e7..8d63a6ac 100644
--- a/docs/installation/react.md
+++ b/docs/installation/react.md
@@ -93,4 +93,4 @@ You should now see tiptap in your browser. Time to give yourself a pat on the ba
## 5. The complete setup (optional)
Ready to add more? Below is a demo that shows how you could set up what we call the default editor. Feel free to take this and start customizing it then:
-
+https://embed.tiptap.dev/preview/Examples/Default
diff --git a/docs/installation/vue2.md b/docs/installation/vue2.md
index ca4ecedd..d0eacddd 100644
--- a/docs/installation/vue2.md
+++ b/docs/installation/vue2.md
@@ -107,4 +107,4 @@ You should now see tiptap in your browser. Time to give yourself a pat on the ba
## 5. Use v-model (optional)
You’re probably used to bind your data with `v-model` in forms, that’s also possible with tiptap. Here is a working example component, that you can integrate in your project:
-
+https://embed.tiptap.dev/preview/GuideGettingStarted/VModel