For the complete documentation index, see llms.txt. The full corpus is available at llms-full.txt. This page is also available as Markdown by appending
.mdto the URL.
Installation
Vault CMS installs into your Astro content directory by default (usually src/content); installing at the project root is also supported.
Prerequisites
Section titled “Prerequisites”- Astro project (see themes)
- Obsidian (desktop)
- Git: for publishing from Obsidian and normal project version control
- Node.js (optional): 20 or later. Needed only for the CLI installation. Manual installation gives the same result without Node.
Vault CMS itself doesn’t need Node.js. Your host (Netlify, Vercel, Cloudflare) builds the site when you publish, so Node on your own computer is only for previewing the site locally or running the CLI.
CLI installation
Section titled “CLI installation”The fastest option if you already have Node.js. From your Astro project root (the folder that contains astro.config.mjs):
npx create-vaultcms# or: npm create vaultcms | pnpm create vaultcms | yarn create vaultcms- The CLI detects your Astro project and may list content collections.
- Choose the install location, default
src/content, or.for the project root. - Optional: choose a preset for your theme (
--templateor the interactive prompt). - When asked, open Obsidian and Open folder as vault on the directory that was just populated.
- Complete the setup wizard (Vault CMS: Open Wizard) if it does not open automatically.
What the installer does
Section titled “What the installer does”- Copies
.obsidian/(settings, community plugins, hotkeys) - Copies
_bases/(Home.base dashboard) - Copies
_GUIDE.md(in-vault quick reference) - Updates
.gitignoreat the project root with Obsidian workspace excludes (see below) - Adjusts internal paths when you install at root vs
src/content
Preset templates
Section titled “Preset templates”npx create-vaultcms --template starlightOther package managers and template names work the same way. See Presets for positional npx create-vaultcms starlight and the full preset list on GitHub.
Manual installation
Section titled “Manual installation”Manual installation copies the same files as the CLI, so the result is identical. Choose it if you don’t have Node.js, want to see exactly what goes into your project, or are wiring a custom monorepo layout. The only extra step is updating .gitignore yourself (step 6).
- Download the Vault CMS ZIP or clone
https://github.com/davidvkimball/vaultcms.git. - Choose the target inside your Astro project, usually
src/contentor the repo root (same tradeoffs as the CLI). - Copy from the Vault CMS tree into that target:
.obsidian/_bases/_GUIDE.md
PowerShell (run from your machine, adjusting paths):
Copy-Item -Recurse -Force .\vaultcms\.obsidian .\your-project\src\content\Copy-Item -Recurse -Force .\vaultcms\_bases .\your-project\src\content\Copy-Item -Force .\vaultcms\_GUIDE.md .\your-project\src\content\- In Obsidian: Manage vaults → Open folder as vault → select that directory.
- Run Vault CMS: Open Wizard from the command palette.
- Append to
.gitignoreat the Astro project root (the CLI does this for you automatically):
# Vault CMS / Obsidian.obsidian/workspace.json.obsidian/workspace-mobile.json.ref/After installation
Section titled “After installation”Ctrl/Cmd + Mor the Home icon, content dashboardCtrl/Cmd + N, new content (with Astro Composer templates when configured)- Git: Push: publish; see Publishing and Git plugin
Problems?
Section titled “Problems?”See Common issues and FAQ.