{"_id":"@avery98/vite-plugin-md2vue","name":"@avery98/vite-plugin-md2vue","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@avery98/vite-plugin-md2vue","version":"1.0.0","description":"A Vite plugin to transform Markdown files into Vue components with syntax highlighting and KaTeX support","type":"module","main":"dist/index.cjs","module":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}}},"scripts":{"build":"tsup","dev":"tsup --watch","test":"vitest","test:run":"vitest run","typecheck":"tsc --noEmit","lint":"eslint src --ext .ts","prepublishOnly":"npm run build"},"keywords":["vite","vite-plugin","markdown","vue","md2vue","marked","syntax-highlighting","katex","code-highlight","math-formula"],"author":"","repository":{"type":"git","url":""},"homepage":"","license":"MIT","dependencies":{"gray-matter":"^4.0.3","highlight.js":"^11.9.0","katex":"^0.16.9","marked":"^12.0.0"},"devDependencies":{"@types/node":"^20.11.0","tsup":"^8.0.0","typescript":"^5.3.0","vite":"^5.0.0","vitest":"^1.2.0"},"peerDependencies":{"vite":"^4.0.0 || ^5.0.0"},"engines":{"node":">=18.0.0"},"_id":"@avery98/vite-plugin-md2vue@1.0.0","gitHead":"e8c8a687667ca61d9d48e053627ef40ad68e858e","_nodeVersion":"20.19.1","_npmVersion":"10.8.2","dist":{"integrity":"sha512-jb/DmNmN9Ma6fgBYJYaR5JGFRfKL//e/FHJKiW7adfZs6uM33etmbUxPNvMaux+nX6dNfElzCrkq+kVHot0PxA==","shasum":"b1e976ed64e34494c1a60bc82aa9515a5efef6e1","tarball":"https://registry.npmjs.org/@avery98/vite-plugin-md2vue/-/vite-plugin-md2vue-1.0.0.tgz","fileCount":8,"unpackedSize":67693,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQD0JQuIsc50RWhH/v+UiRpab0uMEBq+WfrL6vwhmLvK7wIhAMN0gZZpVSAcg4dQ2Uafxw4GjESozVYhGAI4iEIklxoD"}]},"_npmUser":{"name":"avery98","email":"bydyz98@163.com"},"directories":{},"maintainers":[{"name":"avery98","email":"bydyz98@163.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/vite-plugin-md2vue_1.0.0_1784994285408_0.721346270445917"},"_hasShrinkwrap":false}},"time":{"created":"2026-07-25T15:44:45.190Z","1.0.0":"2026-07-25T15:44:45.571Z","modified":"2026-07-25T15:44:45.791Z"},"maintainers":[{"name":"avery98","email":"bydyz98@163.com"}],"description":"A Vite plugin to transform Markdown files into Vue components with syntax highlighting and KaTeX support","keywords":["vite","vite-plugin","markdown","vue","md2vue","marked","syntax-highlighting","katex","code-highlight","math-formula"],"repository":{"type":"git","url":""},"license":"MIT","readme":"# vite-plugin-md2vue\n\n一个将 Markdown 文件转换为 Vue 组件的 Vite 插件，支持代码高亮和数学公式渲染。\n\n## 特性\n\n- ✅ **基础转换**：将 Markdown 转换为 Vue 组件\n- ✅ **代码高亮**：支持多种编程语言的语法高亮（highlight.js）\n- ✅ **数学公式**：支持 KaTeX 数学公式渲染\n- ✅ **Frontmatter**：支持 YAML 格式的元数据提取\n- ✅ **配置灵活**：提供丰富的配置选项\n- ✅ **TypeScript**：完整的 TypeScript 支持\n\n## 安装\n\n```bash\nnpm install vite-plugin-md2vue -D\n# 或\nyarn add vite-plugin-md2vue -D\n# 或\npnpm add vite-plugin-md2vue -D\n```\n\n## 快速开始\n\n### 1. 配置插件\n\n```javascript\n// vite.config.js\nimport { defineConfig } from 'vite'\nimport md2vue from 'vite-plugin-md2vue'\n\nexport default defineConfig({\n  plugins: [\n    md2vue()\n  ]\n})\n```\n\n### 2. 创建 Markdown 文件\n\n```markdown\n<!-- src/docs/intro.md -->\n---\ntitle: 我的文章\ndescription: 这是一篇测试文章\n---\n\n# 文章标题\n\n这是文章内容。\n\n## 代码示例\n\n```javascript\nconsole.log('Hello World!')\n```\n```\n\n### 3. 在 Vue 组件中使用\n\n```vue\n<template>\n  <div>\n    <MarkdownContent />\n  </div>\n</template>\n\n<script setup>\nimport MarkdownContent from './docs/intro.md'\n</script>\n```\n\n## 配置选项\n\n```typescript\ninterface Options {\n  // Markdown 解析选项\n  markdown?: {\n    gfm?: boolean          // 支持 GitHub Flavored Markdown（默认：true）\n    breaks?: boolean       // 将 \\n 转换为 <br>（默认：false）\n    pedantic?: boolean     // 宽容模式（默认：false）\n  }\n  \n  // 代码高亮选项\n  highlight?: {\n    enabled?: boolean      // 是否启用代码高亮（默认：true）\n    languages?: string[]   // 支持的语言列表\n    theme?: string         // highlight.js 主题（默认：'github'）\n  }\n  \n  // 数学公式选项\n  katex?: {\n    enabled?: boolean      // 是否启用 KaTeX（默认：true）\n    options?: object       // KaTeX 配置选项\n  }\n  \n  // Vue 组件选项\n  component?: {\n    name?: string          // 组件名称（默认：'MarkdownContent'）\n    wrapperClass?: string  // 包裹元素的 CSS 类名（默认：'markdown-body'）\n    exposeProps?: boolean  // 是否暴露 props（默认：true）\n  }\n}\n```\n\n### 完整配置示例\n\n```javascript\n// vite.config.js\nimport { defineConfig } from 'vite'\nimport md2vue from 'vite-plugin-md2vue'\n\nexport default defineConfig({\n  plugins: [\n    md2vue({\n      markdown: {\n        gfm: true,\n        breaks: true\n      },\n      highlight: {\n        enabled: true,\n        languages: ['javascript', 'typescript', 'html', 'css', 'python'],\n        theme: 'monokai'\n      },\n      katex: {\n        enabled: true,\n        options: { throwOnError: false }\n      },\n      component: {\n        name: 'MyMarkdown',\n        wrapperClass: 'markdown-content',\n        exposeProps: true\n      }\n    })\n  ]\n})\n```\n\n## 功能演示\n\n### 代码高亮\n\n支持多种编程语言的语法高亮：\n\n```javascript\n// JavaScript\nconst greet = (name) => `Hello, ${name}!`\n```\n\n```typescript\n// TypeScript\ninterface User {\n  id: number\n  name: string\n}\n```\n\n```python\n# Python\ndef fibonacci(n):\n    a, b = 0, 1\n    for _ in range(n):\n        yield a\n        a, b = b, a + b\n```\n\n### 数学公式\n\n支持行内和块级数学公式：\n\n行内公式：$E = mc^2$\n\n块级公式：\n\n$$\nx = \\frac{-b \\pm \\sqrt{b^2 - 4ac}}{2a}\n$$\n\n### Frontmatter\n\n支持在 Markdown 文件中添加元数据：\n\n```markdown\n---\ntitle: 文章标题\ndescription: 文章描述\ndate: 2024-01-15\ntags: [vue, vite]\n---\n\n# 文章内容\n```\n\n## 示例项目\n\n查看 `examples/basic/` 目录获取完整的使用示例。\n\n## 开发\n\n### 安装依赖\n\n```bash\nnpm install\n```\n\n### 运行测试\n\n```bash\nnpm test\n```\n\n### 构建\n\n```bash\nnpm run build\n```\n\n## TypeScript\n\n本插件使用 TypeScript 编写，提供完整的类型定义。\n\n```typescript\nimport type { Options } from 'vite-plugin-md2vue'\n\nconst options: Options = {\n  highlight: { enabled: true },\n  katex: { enabled: true }\n}\n```\n\n## 浏览器兼容性\n\n- Chrome >= 87\n- Firefox >= 78\n- Safari >= 14\n- Edge >= 88\n\n## 许可证\n\nMIT\n","readmeFilename":"README.md","_rev":"1-28eab9e204efc07d63a39bd837860062"}