VAULT NOTE

Content Schema

(updated May 27, 2026) by Ishaan
metaschemacontent-model

The data model powering isHistory — how archive posts and vault notes are structured, validated, and rendered.

The isHistory content model is designed around two complementary collections that serve different authoring workflows while sharing a common rendering pipeline.

Archive Collection

The archive collection uses Astro’s built-in glob loader with a strict Zod schema. Every field is validated at build time:

  • title — 5-120 characters, used in <title>, OG tags, and JSON-LD
  • date — Required publication date, drives article:published_time and sitemap lastmod
  • description — 15-160 characters, used in meta description and OG description
  • series / seriesOrder / track — Series membership for serialized content
  • tags — Array of lowercase slugs for categorical organization
  • dateModified — Optional, only set when content is substantively revised

Vault Collection

The vault collection uses astro-loader-obsidian with a more flexible schema derived from Obsidian conventions:

  • title — Auto-derived from frontmatter, first h1, or filename
  • created / updated — From frontmatter or file system timestamps
  • tags — Both frontmatter tags and inline in the body
  • links — Auto-computed array of all wiki-links with resolved hrefs
  • permalink — Auto-generated URL path based on the url config option

The loader resolves wiki-links at build time:

  • Technical Stack/vault/technical-stack
  • [[Vision & Architecture|our vision]]/vault/vision-and-architecture with display text “our vision”
  • image.png<figure><img></figure> with Astro image optimization

See Also

  • [[Vision & Architecture]] for why we chose this dual-collection approach
  • Technical Stack for the implementation technologies