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”- Node.js — 20 or later; 22.x is a good default for current Astro tooling. Required to run
create-vaultcms. - Astro project (see themes)
- Obsidian (desktop)
- Git — for publishing from Obsidian and normal project version control
CLI installation (recommended)
Section titled “CLI installation (recommended)”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”Use manual install if you cannot run Node, want to inspect files first, or are wiring a custom monorepo layout. The CLI is still the recommended path for most users.
- 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.