Markdown
Read and write Markdown with v-model, commands and the official @tiptap/markdown parser.
The Markdown extension wraps the official @tiptap/markdown package (MarkedJS under the hood) for bidirectional Markdown support.
Markdown as v-model
With output="markdown", the initial modelValue is parsed as Markdown and every update emits Markdown.
Commands & API
Supported syntax
Headings, paragraphs, bold, italic, strikethrough, inline code, links, images, blockquotes, bullet / ordered / task lists, horizontal rules, fenced code blocks (with language) and tables. Unknown HTML embedded in Markdown is parsed with the regular HTML rules.
Markdown cannot represent everything the editor can — text colours, font sizes, column layouts or cell background colours are dropped when serialising. Use html or json output if you need a lossless format.
Custom syntax
Every Tiptap node or mark can define parseMarkdown and renderMarkdown. For example, the built-in CodeBlock does:
See the Tiptap docs on custom Markdown tokenizers for advanced cases.