unplugin-vue-markdown is a compiler that transforms Markdown files into Vue components, enabling the seamless integration of Markdown content within Vue applications. It supports using Markdown as Vue components and embedding Vue components directly within Markdown. Currently at version 30.0.0, the library follows an active release cadence, frequently updating to support the latest versions of build tools like Vite and Node.js. Its primary differentiator is its `unplugin` architecture, allowing broad compatibility across Vite, Webpack, and Vue CLI, and offering a transformation pipeline similar to VitePress. This makes it a versatile tool for documentation sites, blogs, and content-driven applications built with Vue, especially those prioritizing Markdown as a primary content format. Recent major updates have focused on dependency modernizations and dropping support for older Node.js versions.
npm install unplugin-vue-markdownVerified import paths — ran on the pinned version, not inferred.
This quickstart demonstrates how to configure `unplugin-vue-markdown` with Vite and `@vitejs/plugin-vue` to enable Markdown file processing as Vue components. It highlights the essential `include` option.
Review your `markdownUses` options and any direct `markdown-it` instance customizations. Consult `markdown-exit` documentation for equivalent functionality.
Upgrade your Node.js environment to version 20 or newer. Check your `engines` field in `package.json`.
Upgrade your Node.js to a supported version (>=20.0.0) and update Webpack to version 5 or newer if you are using it.
Ensure your `vite.config.ts` has `Vue({ include: [/\.vue$/, /\u005c.md$/] })`.Add `parallel: false` directly in your `module.exports` object within `vue.config.js`.
In `vite.config.ts`, add `include: [/\.vue$/, /\u005c.md$/]` to your `Vue()` plugin options.
Review your `unplugin-vue-markdown` options, especially `markdownUses`, and ensure any custom markdown parsing logic or plugins are compatible with or migrated to `markdown-exit`.
Upgrade your Node.js environment to version 20 or newer using a version manager like `nvm` or `volta`.
In your `vue.config.js`, set `parallel: false` to disable `thread-loader`.