Part 1: Project Setup

This is the first post in the VitePress Deep Dive series. We'll bootstrap a bare VitePress project and wire up a custom theme entry point.

Scaffold the project

bash
pnpm create vitepress my-site
cd my-site
pnpm install

Provide a custom theme

Delete the default theme scaffolding and create .vitepress/theme/index.ts:

typescript
import type { Theme } from 'vitepress'
import Layout from './Layout.vue'

export default { Layout } satisfies Theme

Next up: building the layout shell.