---
title: "VitePress: vendor profile: Agent Ready HTML"
description: "VitePress, a framework: 2 of 6 standards stated as supported, 15 sourced facts, dated plans and what it does not do. Read 2026-11-05."
canonical: https://agentreadyhtml.com/vendors/vitepress/
site: "Agent Ready HTML"
last_updated: 2026-11-05
section: "Vendors"
---

# VitePress: vendor profile: Agent Ready HTML

> VitePress, a framework: 2 of 6 standards stated as supported, 15 sourced facts, dated plans and what it does not do. Read 2026-11-05.

Source: https://agentreadyhtml.com/vendors/vitepress/
Site: Agent Ready HTML
Last reviewed: 2026-11-05

# 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

```text
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](https://agentreadyhtml.com/vendors/by-type/framework/)

Operator, as the facts below state it

Vue.js project (vuejs organization on GitHub)

Home page

[vitepress.dev](https://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](https://vitepress.dev/guide/what-is-vitepress), 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](https://vitepress.dev/guide/what-is-vitepress), 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](https://vitepress.dev/guide/deploy), 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](https://raw.githubusercontent.com/vuejs/vitepress/main/CHANGELOG.md), 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](https://vitepress.dev/guide/sitemap-generation), 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](https://vitepress.dev/reference/default-theme-search), 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](https://vitepress.dev/reference/site-config), 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](https://vitepress.dev/reference/site-config), 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](https://vitepress.dev/guide/routing), 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](https://raw.githubusercontent.com/vuejs/vitepress/main/docs/.vitepress/config.ts), 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](https://vitepress.dev/guide/getting-started), 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](https://raw.githubusercontent.com/vuejs/vitepress/main/CHANGELOG.md), read 5 November 2026.
-   VitePress ships under the MIT License with copyright held by Yuxi (Evan) You since 2019. \[primary source\] [source](https://raw.githubusercontent.com/vuejs/vitepress/main/LICENSE), 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](https://vitepress.dev/guide/getting-started), 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](https://vitepress.dev/guide/getting-started), 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

-   [Frameworks in this section](https://agentreadyhtml.com/vendors/by-type/framework/)
-   [The Plain Fetch viewer](https://agentreadyhtml.com/viewer/)

## Sources

1.  [VitePress: home page](https://vitepress.dev/) https://vitepress.dev/, read 5 November 2026
2.  [What is VitePress? | VitePress](https://vitepress.dev/guide/what-is-vitepress) https://vitepress.dev/guide/what-is-vitepress, read 5 November 2026
3.  [Deploy Your VitePress Site | VitePress](https://vitepress.dev/guide/deploy) https://vitepress.dev/guide/deploy, read 5 November 2026
4.  [VitePress CHANGELOG.md (main branch)](https://raw.githubusercontent.com/vuejs/vitepress/main/CHANGELOG.md) https://raw.githubusercontent.com/vuejs/vitepress/main/CHANGELOG.md, read 5 November 2026
5.  [Sitemap Generation | VitePress](https://vitepress.dev/guide/sitemap-generation) https://vitepress.dev/guide/sitemap-generation, read 5 November 2026
6.  [Search | VitePress](https://vitepress.dev/reference/default-theme-search) https://vitepress.dev/reference/default-theme-search, read 5 November 2026
7.  [Site Config | VitePress](https://vitepress.dev/reference/site-config) https://vitepress.dev/reference/site-config, read 5 November 2026
8.  [Routing | VitePress](https://vitepress.dev/guide/routing) https://vitepress.dev/guide/routing, read 5 November 2026
9.  [vitepress.dev site config (docs/.vitepress/config.ts)](https://raw.githubusercontent.com/vuejs/vitepress/main/docs/.vitepress/config.ts) https://raw.githubusercontent.com/vuejs/vitepress/main/docs/.vitepress/config.ts, read 5 November 2026
10.  [Getting Started | VitePress](https://vitepress.dev/guide/getting-started) https://vitepress.dev/guide/getting-started, read 5 November 2026
11.  [VitePress LICENSE](https://raw.githubusercontent.com/vuejs/vitepress/main/LICENSE) https://raw.githubusercontent.com/vuejs/vitepress/main/LICENSE, read 5 November 2026

Last reviewed 5 November 2026

Edition

Crawl

2026-11-04

Page updated

2026-11-05

Method

How the viewer reads a page, how a file is graded and how a platform is scored: [the method page](https://agentreadyhtml.com/method/).
