The key rule for your setup: since posts are saved as .md files, pick an editor that round-trips Markdown cleanly (Markdown in, Markdown out). Editors that save JSON or HTML force you to convert, and
M TECHUB Team2 min read

The key rule for your setup: since posts are saved as .md files, pick an editor that round-trips Markdown cleanly (Markdown in, Markdown out). Editors that save JSON or HTML force you to convert, and conversion is where formatting breaks.
Best free options
Editor | License | Output | Best for |
|---|---|---|---|
Tiptap | MIT (core) | Markdown via official extension, or HTML/JSON | Most flexible and advanced, huge extension ecosystem |
MDXEditor | MIT | Markdown (native) | Fastest to ship, markdown-first |
Milkdown | MIT | Markdown (native) | Markdown-first but highly customizable, plugin system |
Plate | MIT | Markdown serializer | Notion-style UI with shadcn/Tailwind, many ready plugins |
BlockNote | MPL-2.0 | Blocks, lossy Markdown export | Notion-style blocks, slash menu out of the box |
Novel | Apache-2.0 | Tiptap based | Notion feel plus AI autocomplete |
Lexical | MIT | Markdown transformers | Meta's framework, you build all the UI yourself |
My picks for your case
MDXEditor if you want a working editor in an afternoon. It handles headings, lists, tables, code blocks, images, links, and even frontmatter, and it stores clean Markdown.
Tiptap if you want the "perfect, WordPress-like" editor. It takes more work, but you can add custom nodes (callout boxes, image with alt text enforcement, internal link picker, table of contents) and live SEO checks that read the document tree. Best long-term, and reusable for client sites.
Plate if you want the most polished Notion-style look and already use Tailwind and shadcn.
Things to avoid
CKEditor 5 and TinyMCE: powerful, but the free tiers have license and feature limits (GPL, paid premium features, cloud keys).
Quill: old and weak for Markdown.
Editor.js: outputs JSON blocks, so you would need your own Markdown converter.
Tiptap Pro extensions and BlockNote XL packages: some advanced features (comments, collaboration, multi-column, PDF export) are paid or GPL. The core is free and enough for a blog.
One design tip
Keep the structured stuff out of the editor body. Put FAQ, key takeaways, quick answer, sources, and SEO fields in separate form inputs that save to frontmatter. The rich text editor then only handles the article body. This keeps the Markdown clean, makes the schema generation reliable, and lets your SEO score panel read fields directly instead of parsing content.
Also check each library's current docs before committing, since editor packages and licensing change often.
Want me to build the starter with Tiptap or MDXEditor, including the frontmatter form and the save plugin?

