Repository: vuejs/vitepress Branch: main Commit: 4fc1db83d7c7 Files: 596 Total size: 2.3 MB Directory structure: gitextract_9ysuzuto/ ├── .gitattributes ├── .github/ │ ├── FUNDING.yml │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.yml │ │ └── feature_request.yml │ ├── commit-convention.md │ ├── contributing.md │ ├── pull_request_template.md │ └── workflows/ │ ├── cr-comment.yml │ ├── cr.yml │ ├── lock-threads.yml │ ├── release-tag.yml │ ├── stale.yml │ └── test.yml ├── .gitignore ├── .prettierignore ├── .prettierrc.yml ├── CHANGELOG.md ├── LICENSE ├── README.md ├── __tests__/ │ ├── e2e/ │ │ ├── .vitepress/ │ │ │ ├── config.ts │ │ │ └── theme/ │ │ │ ├── components/ │ │ │ │ ├── ApiPreference.vue │ │ │ │ ├── CustomLayout.vue │ │ │ │ ├── HomeHeroCopy.vue │ │ │ │ └── NavVersion.vue │ │ │ └── index.ts │ │ ├── __snapshots__/ │ │ │ └── home.test.ts.snap │ │ ├── data-loading/ │ │ │ ├── basic.data.mts │ │ │ ├── content/ │ │ │ │ ├── bar.md │ │ │ │ └── foo.md │ │ │ ├── contentLoader.data.ts │ │ │ ├── data/ │ │ │ │ ├── a.json │ │ │ │ └── b.json │ │ │ ├── data.md │ │ │ └── data.test.ts │ │ ├── dynamic-routes/ │ │ │ ├── [id].md │ │ │ ├── [id].paths.ts │ │ │ ├── dynamic-routes.test.ts │ │ │ └── paths.ts │ │ ├── frontmatter/ │ │ │ ├── multiple-levels-outline.md │ │ │ └── multiple-levels-outline.test.ts │ │ ├── home.md │ │ ├── home.test.ts │ │ ├── index.md │ │ ├── local-search/ │ │ │ ├── excluded.md │ │ │ ├── frontmatter-excluded.md │ │ │ ├── index.md │ │ │ └── local-search.test.ts │ │ ├── markdown-extensions/ │ │ │ ├── bar.md │ │ │ ├── foo.md │ │ │ ├── header-include.md │ │ │ ├── index.md │ │ │ ├── markdown-extensions.test.ts │ │ │ ├── nested-include.md │ │ │ ├── region-include.md │ │ │ └── subfolder/ │ │ │ ├── inside-subfolder.md │ │ │ └── subsub/ │ │ │ ├── subsub.md │ │ │ └── subsubsub/ │ │ │ └── subsubsub.md │ │ ├── multi-sidebar/ │ │ │ ├── index.md │ │ │ └── index.test.ts │ │ ├── package.json │ │ ├── shims.ts │ │ ├── text-literals/ │ │ │ └── index.md │ │ ├── vitest.config.ts │ │ ├── vitestGlobalSetup.ts │ │ └── vitestSetup.ts │ ├── init/ │ │ ├── init.test.ts │ │ ├── package.json │ │ └── vitest.config.ts │ ├── tsconfig.json │ └── unit/ │ ├── client/ │ │ └── theme-default/ │ │ ├── composables/ │ │ │ └── outline.test.ts │ │ └── support/ │ │ ├── docsearch.test.ts │ │ ├── sidebar.test.ts │ │ └── utils.test.ts │ ├── node/ │ │ ├── markdown/ │ │ │ └── plugins/ │ │ │ ├── highlight.test.ts │ │ │ ├── link.test.ts │ │ │ └── snippet.test.ts │ │ ├── postcss/ │ │ │ ├── __snapshots__/ │ │ │ │ └── isolateStyles.test.ts.snap │ │ │ └── isolateStyles.test.ts │ │ └── utils/ │ │ └── moduleGraph.test.ts │ ├── shims.ts │ └── vitest.config.ts ├── bin/ │ └── vitepress.js ├── client.d.ts ├── docs/ │ ├── .postcssrc.json │ ├── .vitepress/ │ │ ├── config.ts │ │ └── theme/ │ │ ├── index.ts │ │ └── styles.css │ ├── components/ │ │ ├── ComponentInHeader.vue │ │ └── ModalDemo.vue │ ├── config.ts │ ├── en/ │ │ ├── guide/ │ │ │ ├── asset-handling.md │ │ │ ├── cms.md │ │ │ ├── custom-theme.md │ │ │ ├── data-loading.md │ │ │ ├── deploy.md │ │ │ ├── extending-default-theme.md │ │ │ ├── frontmatter.md │ │ │ ├── getting-started.md │ │ │ ├── i18n.md │ │ │ ├── markdown.md │ │ │ ├── migration-from-vitepress-0.md │ │ │ ├── migration-from-vuepress.md │ │ │ ├── mpa-mode.md │ │ │ ├── routing.md │ │ │ ├── sitemap-generation.md │ │ │ ├── ssr-compat.md │ │ │ ├── using-vue.md │ │ │ └── what-is-vitepress.md │ │ ├── index.md │ │ └── reference/ │ │ ├── cli.md │ │ ├── default-theme-badge.md │ │ ├── default-theme-carbon-ads.md │ │ ├── default-theme-config.md │ │ ├── default-theme-edit-link.md │ │ ├── default-theme-footer.md │ │ ├── default-theme-home-page.md │ │ ├── default-theme-last-updated.md │ │ ├── default-theme-layout.md │ │ ├── default-theme-nav.md │ │ ├── default-theme-prev-next-links.md │ │ ├── default-theme-search.md │ │ ├── default-theme-sidebar.md │ │ ├── default-theme-team-page.md │ │ ├── frontmatter-config.md │ │ ├── runtime-api.md │ │ └── site-config.md │ ├── es/ │ │ ├── config.ts │ │ ├── guide/ │ │ │ ├── asset-handling.md │ │ │ ├── cms.md │ │ │ ├── custom-theme.md │ │ │ ├── data-loading.md │ │ │ ├── deploy.md │ │ │ ├── extending-default-theme.md │ │ │ ├── frontmatter.md │ │ │ ├── getting-started.md │ │ │ ├── i18n.md │ │ │ ├── markdown.md │ │ │ ├── mpa-mode.md │ │ │ ├── routing.md │ │ │ ├── sitemap-generation.md │ │ │ ├── ssr-compat.md │ │ │ ├── using-vue.md │ │ │ └── what-is-vitepress.md │ │ ├── index.md │ │ └── reference/ │ │ ├── cli.md │ │ ├── default-theme-badge.md │ │ ├── default-theme-carbon-ads.md │ │ ├── default-theme-config.md │ │ ├── default-theme-edit-link.md │ │ ├── default-theme-footer.md │ │ ├── default-theme-home-page.md │ │ ├── default-theme-last-updated.md │ │ ├── default-theme-layout.md │ │ ├── default-theme-nav.md │ │ ├── default-theme-prev-next-links.md │ │ ├── default-theme-search.md │ │ ├── default-theme-sidebar.md │ │ ├── default-theme-team-page.md │ │ ├── frontmatter-config.md │ │ ├── runtime-api.md │ │ └── site-config.md │ ├── fa/ │ │ ├── config.ts │ │ ├── guide/ │ │ │ ├── asset-handling.md │ │ │ ├── cms.md │ │ │ ├── custom-theme.md │ │ │ ├── data-loading.md │ │ │ ├── deploy.md │ │ │ ├── extending-default-theme.md │ │ │ ├── frontmatter.md │ │ │ ├── getting-started.md │ │ │ ├── i18n.md │ │ │ ├── markdown.md │ │ │ ├── migration-from-vitepress-0.md │ │ │ ├── migration-from-vuepress.md │ │ │ ├── mpa-mode.md │ │ │ ├── routing.md │ │ │ ├── sitemap-generation.md │ │ │ ├── ssr-compat.md │ │ │ ├── using-vue.md │ │ │ └── what-is-vitepress.md │ │ ├── index.md │ │ └── reference/ │ │ ├── cli.md │ │ ├── default-theme-badge.md │ │ ├── default-theme-carbon-ads.md │ │ ├── default-theme-config.md │ │ ├── default-theme-edit-link.md │ │ ├── default-theme-footer.md │ │ ├── default-theme-home-page.md │ │ ├── default-theme-last-updated.md │ │ ├── default-theme-layout.md │ │ ├── default-theme-nav.md │ │ ├── default-theme-prev-next-links.md │ │ ├── default-theme-search.md │ │ ├── default-theme-sidebar.md │ │ ├── default-theme-team-page.md │ │ ├── frontmatter-config.md │ │ ├── runtime-api.md │ │ └── site-config.md │ ├── ja/ │ │ ├── config.ts │ │ ├── guide/ │ │ │ ├── asset-handling.md │ │ │ ├── cms.md │ │ │ ├── custom-theme.md │ │ │ ├── data-loading.md │ │ │ ├── deploy.md │ │ │ ├── extending-default-theme.md │ │ │ ├── frontmatter.md │ │ │ ├── getting-started.md │ │ │ ├── i18n.md │ │ │ ├── markdown.md │ │ │ ├── mpa-mode.md │ │ │ ├── routing.md │ │ │ ├── sitemap-generation.md │ │ │ ├── ssr-compat.md │ │ │ ├── using-vue.md │ │ │ └── what-is-vitepress.md │ │ ├── index.md │ │ └── reference/ │ │ ├── cli.md │ │ ├── default-theme-badge.md │ │ ├── default-theme-carbon-ads.md │ │ ├── default-theme-config.md │ │ ├── default-theme-edit-link.md │ │ ├── default-theme-footer.md │ │ ├── default-theme-home-page.md │ │ ├── default-theme-last-updated.md │ │ ├── default-theme-layout.md │ │ ├── default-theme-nav.md │ │ ├── default-theme-prev-next-links.md │ │ ├── default-theme-search.md │ │ ├── default-theme-sidebar.md │ │ ├── default-theme-team-page.md │ │ ├── frontmatter-config.md │ │ ├── runtime-api.md │ │ └── site-config.md │ ├── ko/ │ │ ├── config.ts │ │ ├── guide/ │ │ │ ├── asset-handling.md │ │ │ ├── cms.md │ │ │ ├── custom-theme.md │ │ │ ├── data-loading.md │ │ │ ├── deploy.md │ │ │ ├── extending-default-theme.md │ │ │ ├── frontmatter.md │ │ │ ├── getting-started.md │ │ │ ├── i18n.md │ │ │ ├── markdown.md │ │ │ ├── migration-from-vitepress-0.md │ │ │ ├── migration-from-vuepress.md │ │ │ ├── mpa-mode.md │ │ │ ├── routing.md │ │ │ ├── sitemap-generation.md │ │ │ ├── ssr-compat.md │ │ │ ├── using-vue.md │ │ │ └── what-is-vitepress.md │ │ ├── index.md │ │ └── reference/ │ │ ├── cli.md │ │ ├── default-theme-badge.md │ │ ├── default-theme-carbon-ads.md │ │ ├── default-theme-config.md │ │ ├── default-theme-edit-link.md │ │ ├── default-theme-footer.md │ │ ├── default-theme-home-page.md │ │ ├── default-theme-last-updated.md │ │ ├── default-theme-layout.md │ │ ├── default-theme-nav.md │ │ ├── default-theme-prev-next-links.md │ │ ├── default-theme-search.md │ │ ├── default-theme-sidebar.md │ │ ├── default-theme-team-page.md │ │ ├── frontmatter-config.md │ │ ├── runtime-api.md │ │ └── site-config.md │ ├── lunaria.config.json │ ├── package.json │ ├── pt/ │ │ ├── config.ts │ │ ├── guide/ │ │ │ ├── asset-handling.md │ │ │ ├── cms.md │ │ │ ├── custom-theme.md │ │ │ ├── data-loading.md │ │ │ ├── deploy.md │ │ │ ├── extending-default-theme.md │ │ │ ├── frontmatter.md │ │ │ ├── getting-started.md │ │ │ ├── i18n.md │ │ │ ├── markdown.md │ │ │ ├── mpa-mode.md │ │ │ ├── routing.md │ │ │ ├── sitemap-generation.md │ │ │ ├── ssr-compat.md │ │ │ ├── using-vue.md │ │ │ └── what-is-vitepress.md │ │ ├── index.md │ │ └── reference/ │ │ ├── cli.md │ │ ├── default-theme-badge.md │ │ ├── default-theme-carbon-ads.md │ │ ├── default-theme-config.md │ │ ├── default-theme-edit-link.md │ │ ├── default-theme-footer.md │ │ ├── default-theme-home-page.md │ │ ├── default-theme-last-updated.md │ │ ├── default-theme-layout.md │ │ ├── default-theme-nav.md │ │ ├── default-theme-prev-next-links.md │ │ ├── default-theme-search.md │ │ ├── default-theme-sidebar.md │ │ ├── default-theme-team-page.md │ │ ├── frontmatter-config.md │ │ ├── runtime-api.md │ │ └── site-config.md │ ├── public/ │ │ └── pure.html │ ├── ru/ │ │ ├── components/ │ │ │ └── ModalDemo.vue │ │ ├── config.ts │ │ ├── guide/ │ │ │ ├── asset-handling.md │ │ │ ├── cms.md │ │ │ ├── custom-theme.md │ │ │ ├── data-loading.md │ │ │ ├── deploy.md │ │ │ ├── extending-default-theme.md │ │ │ ├── frontmatter.md │ │ │ ├── getting-started.md │ │ │ ├── i18n.md │ │ │ ├── markdown.md │ │ │ ├── migration-from-vitepress-0.md │ │ │ ├── migration-from-vuepress.md │ │ │ ├── mpa-mode.md │ │ │ ├── routing.md │ │ │ ├── sitemap-generation.md │ │ │ ├── ssr-compat.md │ │ │ ├── using-vue.md │ │ │ └── what-is-vitepress.md │ │ ├── index.md │ │ └── reference/ │ │ ├── cli.md │ │ ├── default-theme-badge.md │ │ ├── default-theme-carbon-ads.md │ │ ├── default-theme-config.md │ │ ├── default-theme-edit-link.md │ │ ├── default-theme-footer.md │ │ ├── default-theme-home-page.md │ │ ├── default-theme-last-updated.md │ │ ├── default-theme-layout.md │ │ ├── default-theme-nav.md │ │ ├── default-theme-prev-next-links.md │ │ ├── default-theme-search.md │ │ ├── default-theme-sidebar.md │ │ ├── default-theme-team-page.md │ │ ├── frontmatter-config.md │ │ ├── runtime-api.md │ │ └── site-config.md │ ├── snippets/ │ │ ├── algolia-crawler.js │ │ ├── algolia-i18n.ts │ │ ├── init.ansi │ │ ├── snippet-with-region.js │ │ └── snippet.js │ └── zh/ │ ├── config.ts │ ├── guide/ │ │ ├── asset-handling.md │ │ ├── cms.md │ │ ├── custom-theme.md │ │ ├── data-loading.md │ │ ├── deploy.md │ │ ├── extending-default-theme.md │ │ ├── frontmatter.md │ │ ├── getting-started.md │ │ ├── i18n.md │ │ ├── markdown.md │ │ ├── migration-from-vitepress-0.md │ │ ├── migration-from-vuepress.md │ │ ├── mpa-mode.md │ │ ├── routing.md │ │ ├── sitemap-generation.md │ │ ├── ssr-compat.md │ │ ├── using-vue.md │ │ └── what-is-vitepress.md │ ├── index.md │ └── reference/ │ ├── cli.md │ ├── default-theme-badge.md │ ├── default-theme-carbon-ads.md │ ├── default-theme-config.md │ ├── default-theme-edit-link.md │ ├── default-theme-footer.md │ ├── default-theme-home-page.md │ ├── default-theme-last-updated.md │ ├── default-theme-layout.md │ ├── default-theme-nav.md │ ├── default-theme-prev-next-links.md │ ├── default-theme-search.md │ ├── default-theme-sidebar.md │ ├── default-theme-team-page.md │ ├── frontmatter-config.md │ ├── runtime-api.md │ └── site-config.md ├── netlify.toml ├── package.json ├── patches/ │ ├── @types__markdown-it-attrs.patch │ ├── @types__mdurl@2.0.0.patch │ ├── markdown-it-anchor@9.2.0.patch │ └── markdown-it-attrs@4.3.1.patch ├── pnpm-workspace.yaml ├── rollup.config.ts ├── scripts/ │ ├── copyClient.js │ ├── copyShared.js │ ├── release.js │ └── watchAndCopy.js ├── src/ │ ├── client/ │ │ ├── app/ │ │ │ ├── components/ │ │ │ │ ├── ClientOnly.ts │ │ │ │ └── Content.ts │ │ │ ├── composables/ │ │ │ │ ├── codeGroups.ts │ │ │ │ ├── copyCode.ts │ │ │ │ ├── head.ts │ │ │ │ └── preFetch.ts │ │ │ ├── data.ts │ │ │ ├── devtools.ts │ │ │ ├── index.ts │ │ │ ├── router.ts │ │ │ ├── ssr.ts │ │ │ ├── theme.ts │ │ │ └── utils.ts │ │ ├── index.ts │ │ ├── shims.d.ts │ │ ├── theme-default/ │ │ │ ├── Layout.vue │ │ │ ├── NotFound.vue │ │ │ ├── components/ │ │ │ │ ├── VPAlgoliaSearchBox.vue │ │ │ │ ├── VPBackdrop.vue │ │ │ │ ├── VPBadge.vue │ │ │ │ ├── VPButton.vue │ │ │ │ ├── VPCarbonAds.vue │ │ │ │ ├── VPContent.vue │ │ │ │ ├── VPDoc.vue │ │ │ │ ├── VPDocAside.vue │ │ │ │ ├── VPDocAsideCarbonAds.vue │ │ │ │ ├── VPDocAsideOutline.vue │ │ │ │ ├── VPDocAsideSponsors.vue │ │ │ │ ├── VPDocFooter.vue │ │ │ │ ├── VPDocFooterLastUpdated.vue │ │ │ │ ├── VPDocOutlineItem.vue │ │ │ │ ├── VPFeature.vue │ │ │ │ ├── VPFeatures.vue │ │ │ │ ├── VPFlyout.vue │ │ │ │ ├── VPFooter.vue │ │ │ │ ├── VPHero.vue │ │ │ │ ├── VPHome.vue │ │ │ │ ├── VPHomeContent.vue │ │ │ │ ├── VPHomeFeatures.vue │ │ │ │ ├── VPHomeHero.vue │ │ │ │ ├── VPHomeSponsors.vue │ │ │ │ ├── VPImage.vue │ │ │ │ ├── VPLink.vue │ │ │ │ ├── VPLocalNav.vue │ │ │ │ ├── VPLocalNavOutlineDropdown.vue │ │ │ │ ├── VPLocalSearchBox.vue │ │ │ │ ├── VPMenu.vue │ │ │ │ ├── VPMenuGroup.vue │ │ │ │ ├── VPMenuLink.vue │ │ │ │ ├── VPNav.vue │ │ │ │ ├── VPNavBar.vue │ │ │ │ ├── VPNavBarAppearance.vue │ │ │ │ ├── VPNavBarAskAiButton.vue │ │ │ │ ├── VPNavBarExtra.vue │ │ │ │ ├── VPNavBarHamburger.vue │ │ │ │ ├── VPNavBarMenu.vue │ │ │ │ ├── VPNavBarMenuGroup.vue │ │ │ │ ├── VPNavBarMenuLink.vue │ │ │ │ ├── VPNavBarSearch.vue │ │ │ │ ├── VPNavBarSearchButton.vue │ │ │ │ ├── VPNavBarSocialLinks.vue │ │ │ │ ├── VPNavBarTitle.vue │ │ │ │ ├── VPNavBarTranslations.vue │ │ │ │ ├── VPNavScreen.vue │ │ │ │ ├── VPNavScreenAppearance.vue │ │ │ │ ├── VPNavScreenMenu.vue │ │ │ │ ├── VPNavScreenMenuGroup.vue │ │ │ │ ├── VPNavScreenMenuGroupLink.vue │ │ │ │ ├── VPNavScreenMenuGroupSection.vue │ │ │ │ ├── VPNavScreenMenuLink.vue │ │ │ │ ├── VPNavScreenSocialLinks.vue │ │ │ │ ├── VPNavScreenTranslations.vue │ │ │ │ ├── VPPage.vue │ │ │ │ ├── VPSidebar.vue │ │ │ │ ├── VPSidebarGroup.vue │ │ │ │ ├── VPSidebarItem.vue │ │ │ │ ├── VPSkipLink.vue │ │ │ │ ├── VPSocialLink.vue │ │ │ │ ├── VPSocialLinks.vue │ │ │ │ ├── VPSponsors.vue │ │ │ │ ├── VPSponsorsGrid.vue │ │ │ │ ├── VPSwitch.vue │ │ │ │ ├── VPSwitchAppearance.vue │ │ │ │ ├── VPTeamMembers.vue │ │ │ │ ├── VPTeamMembersItem.vue │ │ │ │ ├── VPTeamPage.vue │ │ │ │ ├── VPTeamPageSection.vue │ │ │ │ ├── VPTeamPageTitle.vue │ │ │ │ └── icons/ │ │ │ │ ├── VPIconAlignJustify.vue │ │ │ │ ├── VPIconAlignLeft.vue │ │ │ │ ├── VPIconAlignRight.vue │ │ │ │ ├── VPIconArrowLeft.vue │ │ │ │ ├── VPIconArrowRight.vue │ │ │ │ ├── VPIconChevronDown.vue │ │ │ │ ├── VPIconChevronLeft.vue │ │ │ │ ├── VPIconChevronRight.vue │ │ │ │ ├── VPIconChevronUp.vue │ │ │ │ ├── VPIconEdit.vue │ │ │ │ ├── VPIconHeart.vue │ │ │ │ ├── VPIconLanguages.vue │ │ │ │ ├── VPIconMinus.vue │ │ │ │ ├── VPIconMinusSquare.vue │ │ │ │ ├── VPIconMoon.vue │ │ │ │ ├── VPIconMoreHorizontal.vue │ │ │ │ ├── VPIconPlus.vue │ │ │ │ ├── VPIconPlusSquare.vue │ │ │ │ └── VPIconSun.vue │ │ │ ├── composables/ │ │ │ │ ├── aside.ts │ │ │ │ ├── data.ts │ │ │ │ ├── edit-link.ts │ │ │ │ ├── flyout.ts │ │ │ │ ├── langs.ts │ │ │ │ ├── layout.ts │ │ │ │ ├── nav.ts │ │ │ │ ├── outline.ts │ │ │ │ ├── prev-next.ts │ │ │ │ ├── sidebar.ts │ │ │ │ └── sponsor-grid.ts │ │ │ ├── index.ts │ │ │ ├── styles/ │ │ │ │ ├── base.css │ │ │ │ ├── components/ │ │ │ │ │ ├── custom-block.css │ │ │ │ │ ├── vp-code-group.css │ │ │ │ │ ├── vp-code.css │ │ │ │ │ ├── vp-doc.css │ │ │ │ │ └── vp-sponsor.css │ │ │ │ ├── docsearch.css │ │ │ │ ├── fonts.css │ │ │ │ ├── icons.css │ │ │ │ ├── utils.css │ │ │ │ └── vars.css │ │ │ ├── support/ │ │ │ │ ├── docsearch.ts │ │ │ │ ├── lru.ts │ │ │ │ ├── reactivity.ts │ │ │ │ ├── sidebar.ts │ │ │ │ ├── translation.ts │ │ │ │ └── utils.ts │ │ │ └── without-fonts.ts │ │ └── tsconfig.json │ ├── node/ │ │ ├── alias.ts │ │ ├── build/ │ │ │ ├── build.ts │ │ │ ├── buildMPAClient.ts │ │ │ ├── bundle.ts │ │ │ ├── generateSitemap.ts │ │ │ └── render.ts │ │ ├── cli.ts │ │ ├── config.ts │ │ ├── contentLoader.ts │ │ ├── defaultTheme.ts │ │ ├── index.ts │ │ ├── init/ │ │ │ └── init.ts │ │ ├── markdown/ │ │ │ ├── markdown.ts │ │ │ └── plugins/ │ │ │ ├── containers.ts │ │ │ ├── githubAlerts.ts │ │ │ ├── highlight.ts │ │ │ ├── image.ts │ │ │ ├── lineNumbers.ts │ │ │ ├── link.ts │ │ │ ├── preWrapper.ts │ │ │ ├── restoreEntities.ts │ │ │ └── snippet.ts │ │ ├── markdownToVue.ts │ │ ├── plugin.ts │ │ ├── plugins/ │ │ │ ├── dynamicRoutesPlugin.ts │ │ │ ├── localSearchPlugin.ts │ │ │ ├── rewritesPlugin.ts │ │ │ ├── staticDataPlugin.ts │ │ │ └── webFontsPlugin.ts │ │ ├── postcss/ │ │ │ └── isolateStyles.ts │ │ ├── serve/ │ │ │ └── serve.ts │ │ ├── server.ts │ │ ├── shortcuts.ts │ │ ├── siteConfig.ts │ │ ├── tsconfig.json │ │ └── utils/ │ │ ├── fnSerialize.ts │ │ ├── getGitTimestamp.ts │ │ ├── glob.ts │ │ ├── moduleGraph.ts │ │ ├── processIncludes.ts │ │ └── task.ts │ └── shared/ │ ├── shared.ts │ └── tsconfig.json ├── template/ │ ├── .vitepress/ │ │ ├── config.js │ │ └── theme/ │ │ ├── Layout.vue │ │ ├── index.js │ │ └── style.css │ ├── api-examples.md │ ├── index.md │ └── markdown-examples.md ├── theme-without-fonts.d.ts ├── theme.d.ts ├── tsconfig.json └── types/ ├── default-theme.d.ts ├── docsearch.d.ts ├── index.d.ts ├── local-search.d.ts └── shared.d.ts ================================================ FILE CONTENTS ================================================ ================================================ FILE: .gitattributes ================================================ * text=auto eol=lf ================================================ FILE: .github/FUNDING.yml ================================================ github: [yyx990803, kiaking, brc-dd, posva] open_collective: vuejs patreon: evanyou ================================================ FILE: .github/ISSUE_TEMPLATE/bug_report.yml ================================================ name: "\U0001F41E Bug report" description: Create a report to help us improve labels: ['bug: pending triage'] body: - type: markdown attributes: value: | "Thanks for taking the time to fill out this bug report! VitePress is still WIP, and it is not compatible with VuePress. Please do not open issue about default theme missing features or something doesn't work like VuePress." - type: textarea id: bug-description attributes: label: Describe the bug description: A clear and concise description of what the bug is. If you intend to submit a PR for this issue, tell us in the description. Thanks! placeholder: Bug description validations: required: true - type: textarea id: reproduction attributes: label: Reproduction description: Steps to reproduce the behavior. [vitepress.new](https://vitepress.new/) can be used as a starter template. placeholder: Reproduction validations: required: true - type: textarea id: expected attributes: label: Expected behavior description: A clear and concise description of what you expected to happen. placeholder: Expected behavior validations: required: true - type: textarea id: system-info attributes: label: System Info description: Output of `npx envinfo --system --npmPackages vitepress --binaries --browsers` render: Text placeholder: System, Binaries, Browsers validations: required: true - type: textarea id: additional-context attributes: label: Additional context description: Add any other context or screenshots about the bug report here. - type: checkboxes id: checkboxes attributes: label: Validations description: Before submitting the issue, please make sure you do the following options: - label: Check if you're on the [latest VitePress version](https://github.com/vuejs/vitepress/releases/latest). required: true - label: Follow our [Code of Conduct](https://vuejs.org/about/coc.html) required: true - label: Read the [docs](https://vitepress.dev). required: true - label: Check that there isn't already an issue that reports the same bug to avoid creating a duplicate. required: true ================================================ FILE: .github/ISSUE_TEMPLATE/feature_request.yml ================================================ name: "\U0001F680 New feature proposal" description: Suggest an idea for this project body: - type: markdown attributes: value: | Thanks for your interest in the project and taking the time to fill out this feature report! - type: textarea id: feature-description attributes: label: Is your feature request related to a problem? Please describe. description: "A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]" validations: required: true - type: textarea id: suggested-solution attributes: label: Describe the solution you'd like description: A clear and concise description of what you want to happen. validations: required: true - type: textarea id: alternative attributes: label: Describe alternatives you've considered description: A clear and concise description of any alternative solutions or features you've considered. - type: textarea id: additional-context attributes: label: Additional context description: Add any other context or screenshots about the feature request here. - type: checkboxes id: checkboxes attributes: label: Validations description: Before submitting the issue, please make sure you do the following options: - label: Follow our [Code of Conduct](https://vuejs.org/about/coc.html) required: true - label: Read the [docs](https://vitepress.dev). required: true - label: Read the [Contributing Guidelines](https://github.com/vuejs/vitepress/blob/main/.github/contributing.md). required: true - label: Check that there isn't already an issue that asks for the same feature to avoid creating a duplicate. required: true ================================================ FILE: .github/commit-convention.md ================================================ ## Git Commit Message Convention > This is adapted from [Angular's commit convention](https://github.com/conventional-changelog/conventional-changelog/tree/master/packages/conventional-changelog-angular). #### TL;DR: Messages must be matched by the following regex: ```js /^(revert: )?(feat|fix|docs|dx|style|refactor|perf|test|workflow|build|ci|chore|types|wip)(\(.+\))?: .{1,50}/ ``` #### Examples Appears under "Features" header, `theme` subheader: ``` feat(theme): add home page feature ``` Appears under "Bug Fixes" header, `theme` subheader, with a link to issue #28: ``` fix(theme): remove underline on sidebar hover style close #28 ``` Appears under "Performance Improvements" header, and under "Breaking Changes" with the breaking change explanation: ``` perf: improve store getters performance by removing 'foo' option BREAKING CHANGE: The 'foo' option has been removed. ``` The following commit and commit `667ecc1` do not appear in the changelog if they are under the same release. If not, the revert commit appears under the "Reverts" header. ``` revert: feat(theme): add home page feature This reverts commit 667ecc1654a317a13331b17617d973392f415f02. ``` ### Full Message Format A commit message consists of a **header**, **body** and **footer**. The header has a **type**, **scope** and **subject**: ``` ():