Import your Obsidian vault. Your YAML frontmatter becomes typed properties. Your wiki-links become typed relationships. Your queries actually work at scale.
Typed links, enforced schemas, real queries. And you keep your Markdown.
Upload your vault as a ZIP. SemPKM reads your frontmatter, resolves wiki-links, and converts tags — preserving every connection you built.
Your YAML frontmatter becomes schema-enforced fields. Put a string where a date belongs? SemPKM catches it — before your queries break.
Not just "linked from" — every edge has a type, direction, and provenance. Citations, dependencies, contradictions — all explicit, all queryable.
See your knowledge as a navigable graph with type-based styling, multiple layouts, and labeled edges. Not a decoration — a navigation tool.
Mount your SemPKM graph as a folder. Browse and edit alongside your Obsidian vault — Markdown files with typed frontmatter, all synced.
Every change is an immutable event. See who changed what, when, and why. Undo anything, any time — something Obsidian simply can't do.
You keep what you love about Obsidian — Markdown, local data, extensibility. You gain what it can't give you.
| Capability | Obsidian | SemPKM |
|---|---|---|
| Structure enforcement | Informal YAML — no validation | Schema-enforced properties |
| Typed links | Untyped wiki-links | Typed, directed, annotatable edges |
| Query reliability | Fragile — Dataview plugin | Reliable structured queries |
| Full history & undo | None built-in | Every change tracked, full undo |
| Data ownership | Local Markdown files | Self-hosted, open source |
| WebDAV access | Not applicable | Mount as folder, edit in Obsidian |
Export your Obsidian vault as a ZIP and upload it. SemPKM reads every note, frontmatter key, wiki-link, and tag.
SemPKM suggests type mappings based on your frontmatter patterns. Accept, adjust, or start fresh — your choice.
See your vault as a typed graph. Every wiki-link becomes a labeled edge. Clusters, relationships, and gaps become visible.
Mount your SemPKM knowledge base as a folder in your file system. Edit in Obsidian side-by-side — changes sync both ways.
Explore the live demo, self-host with a single Docker command, or read the user guide.