Trail
pendingby Theo Ryzhenkov
Add typed relations to your notes and traverse them via a powerful hierarchy view.
Trail
Trail is an Obsidian plugin for adding named relations between notes and traversing them through a dedicated pane.
Documentation · Getting Started · Examples · Support
Features
- Inline typed relations using a concise
::syntax. - Frontmatter relations via
relationsmap andrelations.<type>properties. - Implied relations with forward/reverse/both/sibling direction rules.
- Hierarchy view to browse all ancestors of the active note.
Inline syntax
Single relation per link, prefix or suffix:
up::[[Parent]][[Child]]::down
Frontmatter relations
Map format:
relations:
up: "[[Parent]]"
down:
- "Child A"
- "[[Child B]]"
Dot property format:
relations.up: "[[Parent]]"
Implied relations
In Settings → Trail, add implied relation rules:
- Base relation
- Implied relation
- Direction:
forward,reverse,both, orsibling
Examples:
up -> parent (forward)makesA -up-> BimplyA -parent-> Bup -> parent (reverse)makesA -up-> BimplyB -parent-> Aup -> sibling (sibling)makes notes sharing the same target siblings of each other
Using the Trail pane
- Open with the Trail: Open pane command.
- Use Trail: Refresh graph to rebuild all relations.
- Filter which relation types to include using the filter button.
- Browse the full ancestor chain of the active note.
Installation
Install via BRAT
- Install the BRAT plugin from Settings → Community plugins.
- Enable BRAT.
- Open BRAT settings and select Add Beta plugin.
- Enter
https://github.com/theoryzhenkov/trailand select Add Plugin. - Enable Trail in Settings → Community plugins.
Manual install
Copy main.js, styles.css, manifest.json to:
<Vault>/.obsidian/plugins/trail/
Development
npm install
npm run dev
Support
If you find Trail useful, consider buying me a coffee.
For plugin developers
Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.