VuePress is markdown-centered. Each Markdown file inside your project is a standalone page.
By default, the route path of a page is determined by the relative path of your Markdown file.
Assuming this is the directory structure of your Markdown files:
└─ docs ├─ guide │ ├─ getting-started.md │ └─ README.md ├─ contributing.md └─ README.md
docs directory as your sourceDir, e.g. you are running
vuepress dev docs command. Then the route paths of your Markdown files would be:
|Relative Path||Route Path|
A Markdown file could contain a YAML frontmatter. The frontmatter must be at the top of the Markdown file and must be wrapped with a couple of triple-dashed lines. Here is a basic example:
--- lang: en-US title: Title of this page description: Description of this page ---
You must have noticed that those fields are similar with the Site Config in Config File. You can override
description, etc., of current page via frontmatter. So you can take frontmatter as page scope config.
Also, VuePress has built-in support for some frontmatter fields, and your theme may have its own special frontmatter, too.
Check out the Frontmatter Reference for a full list of VuePress built-in frontmatter.
Check out the Config > Frontmatter for the frontmatter of
The main content of your page is written in Markdown. VuePress will firstly transform your Markdown to HTML code, then treat the HTML code as
<template> of Vue SFC.