Tescade
approvedby xoyowiz
Recursively resolves Obsidian wikilinks into a standalone Markdown file. - This plugin has not been manually reviewed by Obsidian staff.
Tescade
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.
How it works
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.
Usage
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
Recursive resolution
Wikilinks are resolved recursively.
A
└── [[B]]
└── [[C]]
└── [[D]]
Resolving A inserts the contents of B, C, and D into the resulting document.
Circular links
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.
Missing files
If a wikilink cannot be resolved to a file in the vault, Tescade reports an error rather than silently omitting the link.
Design
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.
Installation
Manual installation
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
Development
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
Non-goals
Tescade is not intended to be a general-purpose publishing or export system.
It does not attempt to provide:
- templates
- variables
- scripting
- conditionals
- loops
- macros
- document formatting
- graph-based export configuration
Its purpose is simply recursive text composition through Obsidian wikilinks.
DISCLAIMERS
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.
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.