VitePress: vendor profile
In short
VitePress pre-renders each Markdown page to HTML and writes a root 404.html that, since version 1.2.1, renders on the client and holds almost no text. llms.txt and .md copies come from a community plugin, not core. vitepress.dev answered Accept: text/markdown with HTML on 2026-11-05.
At a glance
standards.txt vitepress
llms-txt = partial
markdown-negotiation = no statement
markdown-twin = partial
initial-html = supports
real-404 = supports
vary-accept = no statement
2 supports, 2 partial or announced, 2 no statement.
VitePress Framework
Vite and Vue static site generator that pre-renders each Markdown page to HTML and writes a root 404.html; sitemap.xml needs a hostname, and llms.txt or .md twins come only from the community vitepress-plugin-llms.
- Type
- Framework
- Operator, as the facts below state it
- Vue.js project (vuejs organization on GitHub)
- Home page
- vitepress.dev, answered HTTP 200 on 2026-11-05
- Last read
- 5 November 2026
What it does for this layer
- VitePress takes Markdown source, applies a theme and writes static HTML pages, so page text is in the HTML file an agent fetches. [primary source] source, read 5 November 2026.
- On a first visit VitePress serves the pre-rendered HTML, then loads a JavaScript bundle that hydrates the page into a Vue single page app for later navigation. [primary source] source, read 5 November 2026.
- The VitePress deploy guide says 404.html is generated for the root depth only, and hosts that serve that file for deep missing URLs render it without styles. [primary source] source, read 5 November 2026.
- VitePress 1.2.1 (2024-05-21) changed the 404 page to render completely on the client so the locale can be read from the browser path, which keeps its 404.html nearly empty of text. [primary source, 2024-05-21] source, read 5 November 2026.
- VitePress writes sitemap.xml only after sitemap.hostname is set in .vitepress/config, and adds lastmod tags when the lastUpdated option is on. [primary source] source, read 5 November 2026.
- The VitePress default theme gets fuzzy full-text search from an in-browser MiniSearch index when themeConfig.search.provider is 'local'; Algolia DocSearch is the hosted alternative. [primary source] source, read 5 November 2026.
- The experimental mpa option builds a VitePress site in MPA mode, shipping 0 kB of JavaScript by default and dropping client-side navigation. [primary source] source, read 5 November 2026.
- VitePress has no structured data setting; its transformHead build hook returns extra head tags per page, which is where a site would add JSON-LD. [primary source] source, read 5 November 2026.
- With the cleanUrls option VitePress generates links without the .html extension, which needs a host that serves /foo.html for /foo. [primary source] source, read 5 November 2026.
- The config of vitepress.dev imports the community package vitepress-plugin-llms and calls llmstxt with workDir 'en' only in production builds. [primary source] source, read 5 November 2026.
- vitepress.dev served a text/markdown twin at /guide/getting-started.md (6,275 bytes) on 2026-11-05, yet the same page requested with Accept: text/markdown came back as 56,191 bytes of HTML with only Vary: Accept-Encoding. [observed] source, read 5 November 2026.
- The VitePress changelog dates 2.0.0-alpha.21 to 2026-10-25, a pre-release that adds asset sharding and native RTL support in the theme. [primary source, 2026-10-25] source, read 5 November 2026.
- VitePress ships under the MIT License with copyright held by Yuxi (Evan) You since 2019. [primary source] source, read 5 November 2026.
Test build
- A default VitePress 1.6.4 site (npm add -D vitepress@1.6.4, npx vitepress init with every default, npm run docs:build) built on 2026-11-05 held 404.html and three page files but no llms.txt, robots.txt or sitemap.xml. [observed] source, read 5 November 2026.
- Under vitepress preview that 1.6.4 build kept the hero H1 'My Awesome Project' in the server HTML, answered a made-up path with 404, and returned text/html to Accept: text/markdown. [observed] source, read 5 November 2026.
Products and plans
| Product | What it is | Price | As of | Source |
|---|---|---|---|---|
| VitePress | Static site generator and default docs theme built on Vite and Vue. | Free, open source MIT licence, free; 1.6.4 is the stable line and 2.0 is in alpha | 2026-11-05 | source |
Standards
| Standard | Status | What the vendor's pages say | Source |
|---|---|---|---|
| llms-txt | partial | Core VitePress has no llms.txt option; the vitepress.dev config adds it with the community vitepress-plugin-llms package in production builds. | source |
| markdown-negotiation | no statement | No statement found in the VitePress guide, site config or deploy pages; vitepress.dev returned HTML to Accept: text/markdown on 2026-11-05. | none |
| markdown-twin | partial | vitepress.dev serves .md twins produced by vitepress-plugin-llms, which its own docs config imports; a default VitePress build writes none. | source |
| initial-html | supports | VitePress says the initial visit to any page is served the static, pre-rendered HTML. | source |
| real-404 | supports | The deploy guide documents a generated 404.html and nginx error_page 404 /404.html rules; the preview server returned 404 for a made-up path. | source |
| vary-accept | no statement | No statement found in the VitePress site config, routing or deploy pages; VitePress does not negotiate, and vitepress.dev sent only Vary: Accept-Encoding. | none |
Checks on its own site
| Reading | Result | Date |
|---|---|---|
| Home page request | HTTP 200; H1 in the initial HTML: yes; 99 words; 0 JSON-LD blocks | 2026-11-05 |
| Request with Accept: text/markdown | HTTP 200, text/html, Vary: Accept-Encoding | 2026-11-05 |
| /llms.txt at the host root | HTTP 200, text/plain, 4.9 KB, starts with an H1 | 2026-11-05 |
| A made-up path | HTTP 404 | 2026-11-05 |
| Ora score, cached | 40, grade D | 2026-09-02 |
| Cloudflare keyless scan | 27, L2 Bot-Aware | 2026-11-05 |
What it does not do
- VitePress core writes no llms.txt and no .md copy of a page; vitepress.dev gets both from the separately maintained vitepress-plugin-llms.
Related pages on this site
Sources
- VitePress: home page https://vitepress.dev/, read 5 November 2026
- What is VitePress? | VitePress https://vitepress.dev/guide/what-is-vitepress, read 5 November 2026
- Deploy Your VitePress Site | VitePress https://vitepress.dev/guide/deploy, read 5 November 2026
- VitePress CHANGELOG.md (main branch) https://raw.githubusercontent.com/vuejs/vitepress/main/CHANGELOG.md, read 5 November 2026
- Sitemap Generation | VitePress https://vitepress.dev/guide/sitemap-generation, read 5 November 2026
- Search | VitePress https://vitepress.dev/reference/default-theme-search, read 5 November 2026
- Site Config | VitePress https://vitepress.dev/reference/site-config, read 5 November 2026
- Routing | VitePress https://vitepress.dev/guide/routing, read 5 November 2026
- vitepress.dev site config (docs/.vitepress/config.ts) https://raw.githubusercontent.com/vuejs/vitepress/main/docs/.vitepress/config.ts, read 5 November 2026
- Getting Started | VitePress https://vitepress.dev/guide/getting-started, read 5 November 2026
- VitePress LICENSE https://raw.githubusercontent.com/vuejs/vitepress/main/LICENSE, read 5 November 2026
Last reviewed 5 November 2026