\n\n\u003Cimg width=\"308\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/0e1beb6b-d06b-436c-b106-c924fead87ab\" />\n\n\u003Cimg width=\"931\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/aef6f71a-fa28-4b7c-b512-e6386e18159a\" />\n\n### Describe the solution you'd like\n\nIn my [pull request](https://github.com/vuejs/vitepress/pull/4630), I've introduced custom components that can be overridden in the `enhanceApp` function. In these custom components, I can add custom logic for rendering text, such as using the Vue compile function. \n\nAdditionally, I added a flag to skip the title update, allowing for custom logic implementation. \n\nPlease also see my PR: [https://github.com/vuejs/vitepress/pull/4630](https://github.com/vuejs/vitepress/pull/4630).\n\n### Describe alternatives you've considered\n\n_No response_\n\n### Additional context\n\n_No response_\n\n### Validations\n\n- [x] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\n- [x] Read the [docs](https://vitepress.dev).\n- [x] Read the [Contributing Guidelines](https://github.com/vuejs/vitepress/blob/main/.github/contributing.md).\n- [x] Check that there isn't already an issue that asks for the same feature to avoid creating a duplicate.",[],4637,"Sidenav Components / Skip title update","2025-03-20T12:17:14Z","https://github.com/vuejs/vitepress/issues/4637",0.7966256,{"description":2915,"labels":2916,"number":2918,"owner":2874,"repository":2875,"state":2876,"title":2919,"updated_at":2920,"url":2921,"score":2922},"### Describe the bug\n\nI'm using vitepress's nodejs api, but one problem is that if I call build twice, the second time there will be the wrong cache, causing the built index.html to still be the old result from the first time.\r\n\r\n```ts\r\nimport { mkdir, readFile, writeFile } from 'fs/promises'\r\nimport path from 'path'\r\nimport { build } from 'vitepress'\r\nimport { it, expect } from 'vitest'\r\n\r\nconst tempPath = path.resolve(__dirname, '.temp')\r\n\r\nit('should build', async () => {\r\n await mkdir(tempPath, { recursive: true })\r\n await writeFile(path.resolve(tempPath, 'index.md'), '# test 1')\r\n await build(tempPath, {\r\n outDir: path.resolve(tempPath, 'dist'),\r\n })\r\n expect(\r\n await readFile(path.resolve(tempPath, 'dist/index.html'), 'utf-8'),\r\n ).include('test 1')\r\n await writeFile(path.resolve(tempPath, 'index.md'), '# test 2')\r\n await build(tempPath, {\r\n outDir: path.resolve(tempPath, 'dist'),\r\n })\r\n expect(\r\n await readFile(path.resolve(tempPath, 'dist/index.html'), 'utf-8'),\r\n ).include('test 2') // AssertionError: expected '\u003C!DOCTYPE html>\\n\u003Chtml lang=\"en-US\" d…' to include 'test 2'\r\n})\r\n```\n\n### Reproduction\n\n1. `git clone https://github.com/rxliuli/vitepress-error-demo`\r\n2. `pnpm i`\r\n3. `pnpm vitest`\n\n### Expected behavior\n\nThe cache should be cleared during the second build\n\n### System Info\n\n```Text\nSystem:\r\n OS: macOS 13.3\r\n CPU: (12) arm64 Apple M2 Max\r\n Memory: 10.56 GB / 64.00 GB\r\n Shell: 5.9 - /bin/zsh\r\n Binaries:\r\n Node: 20.10.0 - /usr/local/bin/node\r\n Yarn: 1.22.19 - /usr/local/bin/yarn\r\n npm: 10.2.3 - /usr/local/bin/npm\r\n pnpm: 8.12.1 - /usr/local/bin/pnpm\r\n Watchman: 2023.08.14.00 - /opt/homebrew/bin/watchman\r\n Browsers:\r\n Brave Browser: 115.1.56.11\r\n Chrome: 120.0.6099.109\r\n Safari: 16.4\r\n npmPackages:\r\n vitepress: 1.0.0-rc.32 => 1.0.0-rc.32\n```\n\n\n### Additional context\n\n_No response_\n\n### Validations\n\n- [X] Check if you're on the [latest VitePress version](https://github.com/vuejs/vitepress/releases/latest).\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\n- [X] Read the [docs](https://vitepress.dev).\n- [X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.",[2917],{"name":2871,"color":2872},3363,"bug: Repeated builds will result in incorrect cache","2025-03-02T18:10:05Z","https://github.com/vuejs/vitepress/issues/3363",0.8027466,{"description":2924,"labels":2925,"number":2930,"owner":2874,"repository":2875,"state":2876,"title":2931,"updated_at":2932,"url":2933,"score":2934},"### Describe the bug\n\n# Issue: Cannot download files from public folder in version` v.1.3.4`\r\n\r\n## Description\r\nI encountered an issue after updating **Vitepress** from version `v.1.2.3` to `v.1.3.4` where I can no longer download files from the public folder on my Vitepress site. \r\n\r\n\r\n## Screenshots \r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\n\n### Reproduction\n\n# Steps to reproduce\r\n1. Run Vitepress on Gitlab Pages\r\n2. Update Vitepress from `v.1.2.3` to `v.1.3.4`\r\n3. Attempt to download a file from the public folder. \r\n4. The error message \"file not available on the page\" appears \r\n\r\n\n\n### Expected behavior\n\n# Expected behavior\r\nFiles from the public folder should be downloadable, as they were in version `v.1.2.3`. \r\n\r\n## Workaraound \r\nDowngrading back to `v.1.2.3` resolve the issue and restore file downloads from the public folder. \n\n### System Info\n\n```Text\nVitepress v.1.3.4\n```\n\n\n### Additional context\n\n_No response_\n\n### Validations\n\n- [X] Check if you're on the [latest VitePress version](https://github.com/vuejs/vitepress/releases/latest).\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\n- [X] Read the [docs](https://vitepress.dev).\n- [X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.",[2926,2929],{"name":2927,"color":2928},"bug: pending triage","e99695",{"name":2871,"color":2872},4230,"Download public files - File not available on the page (Gitlab Pages)","2024-10-26T17:17:15Z","https://github.com/vuejs/vitepress/issues/4230",0.80918753,{"description":2936,"labels":2937,"number":2939,"owner":2874,"repository":2875,"state":2940,"title":2941,"updated_at":2942,"url":2943,"score":2944},"### Describe the bug\n\nI use pnpm to install vitepress, pnpm add -D vitepress, the following message appears: \r\n ERR_PNPM_NO_MATCHING_VERSION No matching version found for @vue/devtools-kit@^7.0.25\r\n\r\nThis error happened while installing the dependencies of vitepress@1.0.0\r\n at @vue/devtools-api@7.0.25\r\n\r\nThe latest release of @vue/devtools-kit is \"7.0.24\".\r\n\r\nIf you need the full list of all 25 published versions run \"$ pnpm view @vue/devtools-kit versions\".\r\nProgress: resolved 12, reused 6, downloaded 0, added 0\n\n### Reproduction\n\nI use pnpm to install vitepress, pnpm add -D vitepress, the following message appears: \r\n ERR_PNPM_NO_MATCHING_VERSION No matching version found for @vue/devtools-kit@^7.0.25\r\n\r\nThis error happened while installing the dependencies of vitepress@1.0.0\r\n at @vue/devtools-api@7.0.25\r\n\r\nThe latest release of @vue/devtools-kit is \"7.0.24\".\r\n\r\nIf you need the full list of all 25 published versions run \"$ pnpm view @vue/devtools-kit versions\".\r\nProgress: resolved 12, reused 6, downloaded 0, added 0\n\n### Expected behavior\n\nInstallation successful\n\n### System Info\n\n```Text\nSystem:\r\n OS: macOS 14.4\r\n CPU: (8) arm64 Apple M1\r\n Memory: 461.66 MB / 16.00 GB\r\n Shell: 5.9 - /bin/zsh\r\n Binaries:\r\n Node: 16.19.1 - ~/.nvm/versions/node/v16.19.1/bin/node\r\n Yarn: 1.22.15 - /usr/local/bin/yarn\r\n npm: 6.14.15 - /usr/local/bin/npm\r\n Watchman: 4.9.0 - /usr/local/bin/watchman\r\n Browsers:\r\n Chrome: 123.0.6312.86\r\n Edge: 120.0.2210.133\r\n Firefox: 124.0.1\r\n Safari: 17.4\n```\n\n\n### Additional context\n\n_No response_\n\n### Validations\n\n- [X] Check if you're on the [latest VitePress version](https://github.com/vuejs/vitepress/releases/latest).\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\n- [X] Read the [docs](https://vitepress.dev).\n- [X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.",[2938],{"name":2927,"color":2928},3714,"closed","Can't install \"No matching version found for @vue/devtools-kit@^7.0.25\"","2024-04-28T12:25:21Z","https://github.com/vuejs/vitepress/issues/3714",0.70910025,{"description":2946,"labels":2947,"number":2949,"owner":2874,"repository":2875,"state":2940,"title":2950,"updated_at":2951,"url":2952,"score":2953},"### Describe the bug\n\n404-Page will be render, and there is the error message in console of browser\r\n```\r\nTypeError: Buffer2 is undefined\r\n js safer.js:25\r\n __require2 chunk-Y4MX6R6N.js:12\r\n js index.js:3\r\n __require2 chunk-Y4MX6R6N.js:12\r\n js string.js:3\r\n __require2 chunk-Y4MX6R6N.js:12\r\n js packet.js:11\r\n __require2 chunk-Y4MX6R6N.js:12\r\n js packet_parser.js:3\r\n __require2 chunk-Y4MX6R6N.js:12\r\n js connection.js:27\r\n __require2 chunk-Y4MX6R6N.js:12\r\n js index.js:5\r\n __require2 chunk-Y4MX6R6N.js:12\r\n \u003Canonymous> mysql2.js:19692\r\n```\n\n### Reproduction\n\n\r\nindex.md\r\n```\r\n---\r\ntitle: issue\r\n---\r\n\u003Cscript setup>\r\nimport mysql from \"mysql2\"\r\n\u003C/script>\r\n```\r\n\r\npackage.json:\r\n```\r\n{\r\n \"dependencies\": {},\r\n \"devDependencies\": {\r\n \"mysql2\": \"^3.9.7\",\r\n \"vitepress\": \"^1.1.4\"\r\n },\r\n \"scripts\": {\r\n \"docs:dev\": \"vitepress dev docs\",\r\n \"docs:build\": \"vitepress build docs\",\r\n \"docs:preview\": \"vitepress preview docs\"\r\n }\r\n}\r\n```\n\n### Expected behavior\n\nnone\n\n### System Info\n\n```Text\nSystem:\r\n OS: macOS 13.2.1\r\n CPU: (4) x64 Intel(R) Core(TM) i5-7360U CPU @ 2.30GHz\r\n Memory: 19.64 MB / 8.00 GB\r\n Shell: 5.8.1 - /bin/zsh\r\n Binaries:\r\n Node: 21.6.2 - /usr/local/bin/node\r\n Yarn: 1.22.19 - ~/Library/pnpm/yarn\r\n npm: 10.2.4 - /usr/local/bin/npm\r\n pnpm: 8.7.0 - ~/Library/pnpm/pnpm\r\n bun: 1.0.36 - ~/.bun/bin/bun\r\n Browsers:\r\n Chrome: 103.0.5060.53\r\n Safari: 16.3\r\n npmPackages:\r\n vitepress: ^1.1.4 => 1.1.4 \r\n\r\n```\n```\n\n\n### Additional context\n\nnone\n\n### Validations\n\n- [X] Check if you're on the [latest VitePress version](https://github.com/vuejs/vitepress/releases/latest).\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\n- [X] Read the [docs](https://vitepress.dev).\n- [X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.",[2948],{"name":2927,"color":2928},3865,"import mysql or mysql2 error: \"TypeError: Buffer2 is undefined\"","2024-05-13T04:42:05Z","https://github.com/vuejs/vitepress/issues/3865",0.7622364,{"description":2955,"labels":2956,"number":2957,"owner":2874,"repository":2875,"state":2940,"title":2958,"updated_at":2959,"url":2960,"score":2961},"### Describe the bug\n\n\ni created a component with the following content\n```vue\n\u003Ctemplate>\n\u003Cspan>{{ name }}\u003C/span>\n\u003C/template>\n```\nwhen I use it after the title, the value of `name` will appear in the directory\n\n\n\nhow can I write it so that it acts like the \"Badge\" component and doesn't appear in the catalog?\n\n### Reproduction\n\n\u003Cimg width=\"397\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/b639d4bd-5f1f-42a8-b3f6-86e619cae028\" />\n\n\u003Cimg width=\"998\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/3f185339-dd13-443e-adb3-481337331a37\" />\n\nthis will not happen when using the Badge component:\n\n\u003Cimg width=\"467\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/dea1d53a-ec19-4142-a736-fc0b571e3d76\" />\n\n\u003Cimg width=\"1183\" alt=\"Image\" src=\"https://github.com/user-attachments/assets/6916abdb-7106-4cb0-8e7d-27625a189287\" />\n\n\n\nexample: https://stackblitz.com/edit/vite-odjkgdaj\n\n### Expected behavior\n\nshould be like the `Badge` component\n\n### System Info\n\n```Text\nnone\n```\n\n### Additional context\n\n_No response_\n\n### Validations\n\n- [x] Check if you're on the [latest VitePress version](https://github.com/vuejs/vitepress/releases/latest).\n- [x] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\n- [x] Read the [docs](https://vitepress.dev).\n- [x] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.",[],4761,"directories should not read the contents of components","2025-05-25T17:54:49Z","https://github.com/vuejs/vitepress/issues/4761",0.773464,{"description":2963,"labels":2964,"number":2968,"owner":2874,"repository":2875,"state":2940,"title":2969,"updated_at":2970,"url":2971,"score":2972},"### Is your feature request related to a problem? Please describe.\n\nI would like to have to collapsible navigation sidebar since I organize my documents by using multiple layers of folders, which is frustrating to browse or lookup the content/page I want.\r\n\r\nVitePress only supports the top-level folders to be collapsible in the navigation sidebar currently.\n\n### Describe the solution you'd like\n\nThe default theme that VitePress provided could support multi-level sidebar to be collapsible since many of the people may also face such kind of the problem while using VitePress.\n\n### Describe alternatives you've considered\n\nI have tried to override the `VPSidebarNav` component from default theme that VitePress provided, however, the theme configuration overridding is not supported currently (related issue is still open, ref: #235 ), or I would have to duplicate the default theme as a single repository and publish it as a npm package after the development is done by myself. Anyways, I may think this kind of the feature is general for most of the users, it should be provided by VitePress, nor by users.\n\n### Additional context\n\n_No response_\n\n### Validations\n\n- [X] Follow our [Code of Conduct](https://vuejs.org/about/coc.html)\n- [X] Read the [docs](https://vitepress.vuejs.org).\n- [X] Read the [Contributing Guidelines](https://github.com/vuejs/vitepress/blob/main/.github/contributing.md).\n- [X] Check that there isn't already an issue that asks for the same feature to avoid creating a duplicate.",[2965],{"name":2966,"color":2967},"theme","0754FB",1360,"Add support for collapsible multi-level sidebar","2023-02-01T00:04:34Z","https://github.com/vuejs/vitepress/issues/1360",0.77454853,["Reactive",2974],{},["Set"],["ShallowReactive",2977],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$fEf18_xbjPiZoq8hbdAoBRU4CQzglZB_Q_T0HGSnUbL4":-1},"/vuejs/vitepress/3773"]