{
  "url": "https://unifast.dev/vi/docs/packages/vite/overview/",
  "locale": "vi",
  "title": "@unifast/vite",
  "description": "Plugin Vite cho unifast — biến đổi các file Markdown và MDX thành module JS",
  "section": "packages",
  "body": "## Tổng quan\n\n`@unifast/vite` là một plugin Vite biến đổi các file `.md` và `.mdx` thành các module JavaScript. Nó tích hợp trình biên dịch Markdown/MDX của unifast vào pipeline build của Vite, cho phép bạn import trực tiếp các file Markdown trong ứng dụng của mình.\n\n## Cài đặt\n\n`@unifast/node` là một peer dependency (tùy chọn) — khi có sẵn, plugin sẽ sử dụng trình biên dịch Rust native để đạt hiệu năng tối đa. Không có nó, các file `.md` sẽ fallback sang render HTML cơ bản, còn các file `.mdx` thì bắt buộc phải có.\n\n## Bắt đầu nhanh\n\n```ts\n// vite.config.ts\n\nexport default defineConfig({\n  plugins: [\n    unifast({\n      md: {\n        // compile options for .md files\n      },\n      mdx: {\n        // compile options for .mdx files\n      },\n    }),\n  ],\n});\n```\n\n```ts\n// App.tsx\n\nconsole.log(doc.html);         // compiled HTML string\nconsole.log(doc.frontmatter);  // parsed frontmatter object\nconsole.log(doc.toc);          // table of contents entries\n```\n\n## Các export của module\n\n### File `.md`\n\nMỗi file `.md` được biến đổi thành một module với các export sau:\n\n| Export | Kiểu | Mô tả |\n|--------|------|-------------|\n| `html` | `string` | Chuỗi HTML đã được biên dịch |\n| `frontmatter` | `Record<string, unknown>` | Metadata frontmatter đã được parse |\n| `toc` | `TocEntry[]` | Mục lục đã được trích xuất |\n| `default` | `object` | Đối tượng chứa `html`, `frontmatter` và `toc` |\n\n### File `.mdx`\n\nMỗi file `.mdx` được biên dịch thành một module JSX sử dụng `jsx-runtime` của React. Nó export một React component mặc định cùng với `frontmatter` và `toc`.\n\n## Tổng hợp các export\n\n| Export | Loại | Mô tả |\n|--------|------|-------------|\n| `default` (unifastPlugin) | function | Factory của plugin Vite |\n| `UnifastPluginOptions` | type | Interface các tùy chọn của plugin |",
  "alternates": [
    {
      "locale": "en",
      "url": "https://unifast.dev/docs/packages/vite/overview/",
      "api": "https://unifast.dev//api/docs/packages/vite/overview.json"
    },
    {
      "locale": "ja",
      "url": "https://unifast.dev/ja/docs/packages/vite/overview/",
      "api": "https://unifast.dev//api/ja/docs/packages/vite/overview.json"
    },
    {
      "locale": "zh-CN",
      "url": "https://unifast.dev/zh-CN/docs/packages/vite/overview/",
      "api": "https://unifast.dev//api/zh-CN/docs/packages/vite/overview.json"
    },
    {
      "locale": "zh-TW",
      "url": "https://unifast.dev/zh-TW/docs/packages/vite/overview/",
      "api": "https://unifast.dev//api/zh-TW/docs/packages/vite/overview.json"
    },
    {
      "locale": "ko",
      "url": "https://unifast.dev/ko/docs/packages/vite/overview/",
      "api": "https://unifast.dev//api/ko/docs/packages/vite/overview.json"
    },
    {
      "locale": "fr",
      "url": "https://unifast.dev/fr/docs/packages/vite/overview/",
      "api": "https://unifast.dev//api/fr/docs/packages/vite/overview.json"
    },
    {
      "locale": "it",
      "url": "https://unifast.dev/it/docs/packages/vite/overview/",
      "api": "https://unifast.dev//api/it/docs/packages/vite/overview.json"
    },
    {
      "locale": "es",
      "url": "https://unifast.dev/es/docs/packages/vite/overview/",
      "api": "https://unifast.dev//api/es/docs/packages/vite/overview.json"
    },
    {
      "locale": "pt-BR",
      "url": "https://unifast.dev/pt-BR/docs/packages/vite/overview/",
      "api": "https://unifast.dev//api/pt-BR/docs/packages/vite/overview.json"
    },
    {
      "locale": "de",
      "url": "https://unifast.dev/de/docs/packages/vite/overview/",
      "api": "https://unifast.dev//api/de/docs/packages/vite/overview.json"
    },
    {
      "locale": "ru",
      "url": "https://unifast.dev/ru/docs/packages/vite/overview/",
      "api": "https://unifast.dev//api/ru/docs/packages/vite/overview.json"
    },
    {
      "locale": "hi",
      "url": "https://unifast.dev/hi/docs/packages/vite/overview/",
      "api": "https://unifast.dev//api/hi/docs/packages/vite/overview.json"
    },
    {
      "locale": "id",
      "url": "https://unifast.dev/id/docs/packages/vite/overview/",
      "api": "https://unifast.dev//api/id/docs/packages/vite/overview.json"
    },
    {
      "locale": "tr",
      "url": "https://unifast.dev/tr/docs/packages/vite/overview/",
      "api": "https://unifast.dev//api/tr/docs/packages/vite/overview.json"
    },
    {
      "locale": "vi",
      "url": "https://unifast.dev/vi/docs/packages/vite/overview/",
      "api": "https://unifast.dev//api/vi/docs/packages/vite/overview.json"
    }
  ]
}
