Docs site
This documentation is a VitePress site rooted at docs/. The source is the same Markdown the repo already used for architecture, the PRD, and the test strategy - VitePress just adds navigation, search, and theming on top.
Local preview
npm run docs:dev # dev server with hot reload at http://localhost:5173
npm run docs:build # build static site into docs/.vitepress/dist
npm run docs:preview # serve the built site locallyStructure
docs/
├── .vitepress/
│ └── config.ts Site config: nav, sidebar, theme
├── index.md Home page
├── guide/ Introduction, concepts, project structure
├── development/ Setup, Supabase, running, testing, conventions
├── deployment/ This section
├── architecture/ System design, data model, ADRs
├── prd/ Product requirements
└── test-plans/ Test strategyExcluded from the app toolchain
docs/.vitepress is excluded from tsconfig.json and eslint.config.js, so the VitePress config (which imports Vite/Vue) never interferes with the app's typecheck or lint.
Deploying to GitHub Pages
A workflow at .github/workflows/docs.yml builds and deploys the site on every push to main that touches docs/.
The site is served under the repo subpath, so base is set to /wespend/ in config.ts (overridable via the DOCS_BASE env var for other hosts).
One-time setup
In Settings -> Pages, set the source to GitHub Actions. After the first successful run, the docs are live at:
https://vineethkrishnan.github.io/wespend/Deploying elsewhere
The build output in docs/.vitepress/dist is plain static HTML, so it drops onto any static host (Netlify, Vercel, Cloudflare Pages, S3). For a root-domain host, build with DOCS_BASE=/:
DOCS_BASE=/ npm run docs:build