Properties3
Is BaseNo
Icon
Order
1Lithos is designed to bridge the gap between a Personal Knowledge Base (PKB) and a Public Documentation Site.
Core Philosophy
- Vault as Source of Truth: The Obsidian vault is never modified by the build process. All transformations happen in memory or at build time.
- Obsidian-First: If it works in Obsidian, it should work in Lithos. We aim for 1:1 parity in syntax support.
- Modern Web Stack: We use Nuxt 4 and Docus to provide a fast, SEO-optimized, and accessible reading experience.
The Symlink Strategy
Lithos uses a symlink strategy to map the user's vault to the Nuxt Content directory.
User Vault <====(symlink)====> Lithos/content
This allows Nuxt Content to "see" the vault files as if they were inside the project, while keeping the actual files in their original location (or independent vault/ directory).
Transformation Pipeline
- Read: Nuxt Content reads a markdown file.
- Hook
content:file:beforeParse:obsidian-transformintercepts the raw string.- Regex replacements convert
[[links]]and![[embeds]]. obsidian-orderinginjects sort order.
- Parse: Nuxt Content parses the markdown into AST.
- Hook
content:file:afterParse:- Metadata extraction (titles, dates).
- Link graph construction.
- Render: Vue components (
NoteEmbed,ForceGraph) render the enhanced content.