Guide5 min read
From Obsidian and other vaults
What md2hd reads out of a vault you already have, what it ignores, and the smallest edit that turns existing notes into a map.
md2hd was built for the case where the material already exists. If you keep an Obsidian vault, a Foam workspace, a Dendron hierarchy or just a folder of markdown, most of what it needs is already there.
What already works
Wikilinks. [[note-name]] anywhere in the body becomes an edge. Aliases work
too: [[note-name|display text]] links to the same node.
Frontmatter. Obsidian’s Properties are YAML frontmatter, which is exactly what md2hd parses. Every property you have already set becomes a labelled row in the detail panel.
Tags. A tags: array renders as chips on the card and in the panel.
Dataview inline fields. owns:: [[thing]] is read as a relation named owns.
So a vault where you have been writing [[links]] and setting properties will
already draw. The nodes will all be the same colour and all the links will be
untyped, but the shape is there.
The smallest useful edit
Add type: to your notes. That one field is what turns a grey mesh into a map.
---
type: person
---
Types are yours to invent — md2hd knows nothing about people, organisations, services or characters. Whatever strings you use become the categories, and each gets a colour.
If your vault already has a property that means the same thing (category,
kind, class), the fastest path is a find-and-replace to type across the
folder.
The second smallest edit
Name your links. A bare [[wikilink]] produces an untyped mentions edge; a
named relation produces a labelled one.
---
works_at: '[[acme]]'
---
or, in the prose you were writing anyway:
reports_to:: [[sam-webb]]
Once a named relation connects two nodes, any bare wikilink between the same pair is dropped, so you can convert gradually without doubling up your lines.
What md2hd ignores
- Files with no frontmatter block. They are skipped, and the app tells you so.
- Folder structure. A map is flat. Nesting and groups do not exist; an organisation containing people is expressed as edges, not containment.
- Non-markdown files. Images, PDFs and canvases in the folder are not read.
- Embeds.
![[note]]is treated as a link to that note, not an inline embed. - Plugin syntax. Anything that only means something inside a specific plugin renders as the plain text it is.
Ids and filenames
md2hd matches links by id, falling back to a slug of the title, falling back to
the first heading in the body. It does not match on filename.
In practice that means a note titled Acme Corp is acme-corp, and
[[Acme Corp]], [[acme corp]] and [[acme-corp]] all find it. If your vault
links by filename and your filenames differ from your titles, set id:
explicitly on the notes that matter.
Working alongside your vault
Nothing is copied, moved or written. Import a folder, read the map, and keep editing in Obsidian — reimport when you want the map to catch up.
Edits you make in md2hd’s Source tab live in the browser’s copy, not in your vault. If you want a change to be permanent, make it in your editor.
A note on size
Maps are stored in localStorage, which caps at roughly 5 MB per site. That is a
lot of markdown, but it is not a whole large vault. Import the folder you want to
look at rather than the vault root, and you will not meet the ceiling.