Esc

Start typing to search the docs

Quick Start

Scaffold a project and ship your first page.

2 min read · 336 words

Scaffold a project

The fastest way to start is the create-svocs-docs starter, which sets up a working SVOCS site with the same page structure as this one:

bun
bunx create-svocs-docs@latest my-docs
npm
npm create svocs-docs@latest my-docs
pnpm
pnpm create svocs-docs my-docs
deno
deno run -A npm:create-svocs-docs my-docs
nub
nub x create-svocs-docs@latest my-docs

Answer the prompts, then start the dev server:

cd my-docs
bun install
bun run dev

Your new site is live at http://localhost:5173.

The prompts also let you set your production URL (which turns on social preview cards, the sitemap, and absolute llms.txt links), add a GitHub button to the header, pick an accent color and a search backend, and, optionally, generate baseline content from an existing GitHub repo instead of the generic starter pages. See Theming and Repo Analysis.

Keep your site current

Scaffolds record a .svocs.json manifest, and the svocs companion CLI uses it to maintain your site after day one:

npx svocs-cli doctor   # checks SITE_URL, fonts, search config, template version
npx svocs-cli update   # applies template fixes to files you haven't modified

update never touches a file you’ve edited — it lists those for manual review instead. Both commands are covered on the CLI page.

Add a page

Every file under content/ becomes a route. Drop a markdown file at content/hello.md:

content/hello.md
---
title: Hello
description: My first SVOCS page.
---

Hello from SVOCS.

Save it, and /docs/hello appears without any route file or registration step. The sidebar picks it up automatically, sorted alongside your other pages.

Control the sidebar

Ordering and labels come from a _meta.json file next to the pages it applies to:

content/_meta.json
{
	"items": {
		"hello": { "title": "Hello, World", "order": 1 }
	}
}

_meta.json is also how you group pages under category headings, like “Getting Started” and “Guides” in this sidebar. See Navigation for the full schema.

Build for production

bun run build

This prerenders every page with adapter-static and indexes the site with Pagefind, so bun run preview serves the exact static output you’ll deploy. See Deployment for Cloudflare Pages and GitHub Pages walkthroughs.

Next steps

  • Writing Content — frontmatter, sidecar metadata, GFM, code blocks
  • Components — the built-in .svx component library
  • Theming — change the accent color, or the rest of the palette
  • Navigation — the full _meta.json schema
  • Repo Analysis — generate starter content from an existing repo, heuristically or with an AI