xoyowiz35 downloadsRecursively resolves Obsidian wikilinks into a standalone Markdown file.
Tescade is a tiny Obsidian plugin for recursively resolving wikilinks into a standalone Markdown file.
It treats [[wikilinks]] as instructions to insert the contents of the referenced note at that exact location.
Given a note:
This is the main note.
[[Another Note]]
This is the end.
where Another Note.md contains:
This comes from another note.
[[Third Note]]
and Third Note.md contains:
This comes from the third note.
Tescade produces:
Main Note-resolved.md
containing:
This is the main note.
This comes from another note.
This comes from the third note.
This is the end.
The original notes are not modified.
Open the Markdown note you want to resolve.
From the Obsidian Command Palette, run:
Tescade: Resolve file
Tescade recursively follows the note's wikilinks and creates a -resolved.md file next to the original.
For example:
My Document.md
My Document-resolved.md
Wikilinks are resolved recursively.
A
└── [[B]]
└── [[C]]
└── [[D]]
Resolving A inserts the contents of B, C, and D into the resulting document.
Tescade detects circular references and stops with an error instead of recursively processing the same files forever.
For example:
A → B → C → A
will be reported as a circular link.
If a wikilink cannot be resolved to a file in the vault, Tescade reports an error rather than silently omitting the link.
Tescade is intentionally simple.
Its purpose is to provide a straightforward Markdown composition mechanism:
[[Note]]
becomes:
contents of Note
and this process continues recursively.
The resolved file is a generated artifact; the source notes remain unchanged.
Build the plugin and copy the plugin directory into:
YourVault/.obsidian/plugins/tescade/
The directory must contain at least:
tescade/
├── main.js
└── manifest.json
Then enable Tescade under:
Settings → Community plugins → Installed plugins
Install dependencies:
npm install
Run the development build:
npm run dev
This watches the source files and rebuilds main.js whenever they change.
For a production build:
npm run build
Tescade is not intended to be a general-purpose publishing or export system.
It does not attempt to provide:
Its purpose is simply recursive text composition through Obsidian wikilinks.
LLM assistance: Portions of the code and accompanying documentation were formatted, refined, or partially generated with the assistance of a large language model (LLM). The resulting code was reviewed and tested by the author, but LLM assistance was used as part of the development process.
Project scope: As of the current version (1.0.0), no further features are intended to be added to Tescade. The project is deliberately kept small and focused on its core purpose of recursively resolving Obsidian wikilinks into standalone Markdown files.