Reference

Content schema

The complete typed shape of the documentation tree.

The full schema, exactly as declared in lib/docs-content.ts. Because the tree is typed, a typo in a block kind or a missing field fails the build instead of rendering a broken page.

lib/docs-content.ts
export type DocBlock =
  | { kind: 'heading'; text: string }
  | { kind: 'paragraph'; text: string }
  | { kind: 'list'; items: string[]; ordered?: boolean }
  | { kind: 'code'; code: string; language?: string; filename?: string }
  | { kind: 'callout'; tone: 'note' | 'warning'; text: string }

export interface DocPage {
  slug: string
  title: string
  description: string
  blocks: DocBlock[]
}

export interface DocSection {
  slug: string
  title: string
  pages: DocPage[]
}
Note: Helpers like findDoc, prevNextFor, and allDocSlugs are derived from this tree — pages never need touching when content changes.
⬡ Built with Cleo HQ