'\r\n const target = `\u003Cdiv id=\"app\">\u003C/div>`\r\n this.shadow = this.attachShadow({ mode: 'open' })\r\n this.shadow.innerHTML = designSystemCSS + target\r\n createApp(App) // App defined elsewhere ofc\r\n .mount(this.shadow.querySelector('#app'))\r\n }\r\n}\r\n```\n\n### Describe the solution you'd like\n\nProbably just being able to set `compilerOptions.isCustomElement` somewhere would be good enough?\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.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.",[],735,"Custom element support","2023-01-21T14:34:18Z","https://github.com/vuejs/vitepress/issues/735",0.6813851,{"description":3066,"labels":3067,"number":3068,"owner":3020,"repository":3021,"state":3022,"title":3069,"updated_at":3070,"url":3071,"score":3072},"### Is your feature request related to a problem? Please describe.\r\n\r\nMake configuration easier.\r\n\r\n### Describe the solution you'd like\r\n\r\nSame as [vite](https://vitejs.dev/config/#config-intellisense) :\r\n\r\n```ts\r\nimport { defineConfig } from 'vitepress'\r\n\r\nexport default defineConfig({\r\n lang: 'en-US',\r\n // ...\r\n}) \r\n``` \r\n\r\nBut we need to improve the support for theme config:\r\n\r\nBy default, `defineConfig` helper leverages the theme config type from default theme:\r\n\r\n```js\r\nimport { defineConfig } from 'vitepress'\r\n\r\nexport default defineConfig({\r\n themeConfig: {\r\n // Type is `DefaultTheme.Config` \r\n }\r\n})\r\n```\r\n\r\nIf you use a custom theme, you'll be able to pass the generics type for your custom theme, and you need overload it with the second parameter of `defineConfig` helper:\r\n\r\n```js\r\nimport { defineConfig } from 'vitepress'\r\nimport { ThemeConfig } from 'your-theme'\r\n\r\nexport default defineConfig\u003CThemeConfig>({\r\n themeConfig: {\r\n // Type is `ThemeConfig` \r\n }\r\n}, true); // declare `usingCustomTheme` and discard usage of the default theme.\r\n```\r\n\r\n\r\n### Describe alternatives you've considered\r\n\r\n_No response_\r\n\r\n### Additional context\r\n\r\n_No response_\r\n\r\n### Validations\r\n\r\n- [X] Follow our [Code of Conduct](https://vuejs.org/coc)\r\n- [X] Read the [docs](https://vitepress.vuejs.org/).\r\n- [X] Read the [Contributing Guidelines](https://github.com/vuejs/vitepress/blob/master/.github/contributing.md).\r\n- [X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.",[],464,"[Feature Request] Improve TypeScript support for config file.","2023-01-21T16:20:21Z","https://github.com/vuejs/vitepress/issues/464",0.68141365,{"description":3074,"labels":3075,"number":3076,"owner":3020,"repository":3021,"state":3022,"title":3077,"updated_at":3078,"url":3079,"score":3080},"### Is your feature request related to a problem? Please describe.\n\n## Adding Static Resources config\r\nWhen I use **vitepress** with external css files e.g. `element-plus.css`. I found that the only way to import the css file is via JavaScript. You can't actually add it in the rendered template `head` tag. So I wonder is it possible to expose a config field for importing external resources via `CDN`\r\n\r\n## Benefits\r\n\r\nWhen using external resources this way we could potentially benefit from using CDN.\n\n### Describe the solution you'd like\n\n### Exposing a field named `externals` or `resources` with type:\r\n\r\n```typescript\r\ntype Resource = {\r\n type: 'script' | 'link',\r\n target: 'url_to_resource',\r\n async: boolean // or defer?\r\n}\r\n\r\ntype Resources = Resource[]\r\n```\r\n\r\n### When rendering\r\n\r\nAdd co-responding HTML tag into the `head` tag for external links.\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/coc)\n- [X] Read the [docs](https://vitepress.vuejs.org/).\n- [X] Read the [Contributing Guidelines](https://github.com/vuejs/vitepress/blob/master/.github/contributing.md).\n- [X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.",[],375,"[Feature Request] Adding config for external resources","2023-01-21T16:22:09Z","https://github.com/vuejs/vitepress/issues/375",0.6826299,{"description":3082,"labels":3083,"number":3087,"owner":3020,"repository":3021,"state":3022,"title":3088,"updated_at":3089,"url":3090,"score":3091},"### Describe the bug\n\n\nThe current implementation of the collapsible **sidebar** navigation uses div elements and custom JavaScript to function as an accordion. This non-semantic approach creates significant accessibility issues.\n\nAssistive technologies, like screen readers, cannot properly interpret the role or state (expanded/collapsed) of these components. This results in a poor user experience for individuals who rely on such technology.\n\nI propose replacing the current div-based implementation with the native HTML \u003Cdetails> and \u003Csummary> elements. This would:\n\nProvide full accessibility out-of-the-box for screen reader and keyboard-only users.\n\nReduce custom JavaScript and engineering complexity by leveraging native browser behavior.\n\nAlign the component with modern web standards and semantic best practices.\n\n\n\n### Reproduction\n\nNavigate to any page in the VitePress documentation that uses a collapsible container, such as the [Vitepress Docs](https://vitepress.dev/guide/what-is-vitepress).\n\n\nAttempt to navigate the **sidebar** with a screen reader (e.g., VoiceOver, NVDA, JAWS). The screen reader fails to announce it as a collapsible element or communicate its state.\n\n### Expected behavior\n\nFor sidebar to look and function exactly as it does now but with better accessibility.\n\n\n### System Info\n\n```Text\nJAWS, NVDA, VOICEOVER\n```\n",[3084],{"name":3085,"color":3086},"need more info","bdbefc",4846,"Bug: Custom Container/Accordion component is not accessible and should use native \u003Cdetails>/\u003Csummary> elements","2025-07-17T06:30:42Z","https://github.com/vuejs/vitepress/issues/4846",0.6871135,{"description":3093,"labels":3094,"number":3095,"owner":3020,"repository":3021,"state":3022,"title":3096,"updated_at":3097,"url":3098,"score":3099},"**Is your feature request related to a problem? Please describe.**\r\n\r\nin VuePress we can pass `configureWebpack` to the vuepress config to modify webpack behaviour. useful to add module resolve and aliases, plugins etc.\r\n\r\nhttps://vuepress.vuejs.org/config/#configurewebpack\r\n\r\n**Describe the solution you'd like**\r\n\r\nAllow to do the same (or similar) with vitepress\r\n\r\n**Describe alternatives you've considered**\r\n\r\nanything that'll result in the same behavior\r\n\r\n",[],179,"configureWebpack in vitepress config","2023-01-21T16:24:09Z","https://github.com/vuejs/vitepress/issues/179",0.69198275,{"description":3101,"labels":3102,"number":3107,"owner":3020,"repository":3021,"state":3022,"title":3108,"updated_at":3109,"url":3110,"score":3111},"### Is your feature request related to a problem? Please describe.\n\nuse \r\n`\r\n\u003C\u003C\u003C @/../../ code_project/example/views/xxx/xx.vue\r\n`\r\nImport code snippet,Can customize @ path,\r\n\r\n\r\nthank you very much indeed\r\n\r\n\n\n### Describe the solution you'd like\n\n`\r\n\r\nimport { defineConfig } from 'vitepress';\r\nimport { fileURLToPath } from 'url';\r\nimport { dirname, resolve } from 'path';\r\nconst vitepressDir = dirname(fileURLToPath(import.meta.url));\r\nexport default defineConfig({\r\n vite: {\r\n resolve: {\r\n // Can it be defined here ??? \r\n alias: {\r\n '@codePath': resolve(vitepressDir, '../../../code_project/example/views/')\r\n }\r\n }\r\n }\r\n});\r\n`\r\nWhen in use\r\n`\r\n\u003C\u003C\u003C @codePath/xxx/xx.vue\r\n`\r\n\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.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.",[3103,3106],{"name":3104,"color":3105},"build","377ba8",{"name":3050,"color":3051},1698,"Allow customizing root for importing snippets","2023-08-12T00:04:20Z","https://github.com/vuejs/vitepress/issues/1698",0.698851,["Reactive",3113],{},["Set"],["ShallowReactive",3116],{"$fTRc1wZytZ_XrK4EfJfei_Sz-An4H4Yy6syhVxH_PVJc":-1,"$f7fqUZoDZjjcj702iMHfaWGF59QvcbwR99hlg3rNjEOE":-1},"/vuejs/vitepress/1246"]