Supercharge your notes with dynamic data! The Live Variables Plugin v2 revolutionizes how you manage information in Obsidian. Define variables once, reuse them everywhere, and watch your notes auto-update—now with powerful code blocks, smart queries, and an intuitive form interface.
Love this plugin? Help keep it alive! Sponsor development →
Your sponsorship helps: - Fund critical updates and bug fixes - Prioritize feature requests from sponsors - Keep the plugin free for everyone
Edit existing Live Variables references without reinserting them! Just place your cursor on any variable reference and run Live Variables: Query variables to modify it in-place.
Instantly identify dynamic content with subtle highlights that: - Work in both light/dark modes - Preserve Markdown formatting (disables highlight when styling is present) - Help maintain visual hierarchy
This feature can be is enabled by default and can be disabled in the settings.
Formatting Awareness:
**boldVar** → No highlight to preserve bold style
plainVar → Highlighted for easy identification
https://github.com/user-attachments/assets/c698453e-6e08-4793-b542-47fc39d9deeb
https://github.com/user-attachments/assets/9e064696-f99a-4d9e-af4e-dc2f749ec569
https://github.com/user-attachments/assets/a72f7e87-64ea-454b-ad91-10daff7588c9
js
() => {
return Math.random() > 0.5 ? "New UI" : "Legacy UI";
}js
(tasks) => {
const done = tasks.filter(t => t.completed).length;
const doneBar = '▣'.repeat(done);
const undoneBar = '□'.repeat(tasks.length - done);
const completionPercentage = Math.round((done / tasks.length) * 100);
return doneBar + undoneBar + ' (' + completionPercentage +'% completed)';
}https://github.com/user-attachments/assets/979e4361-64b8-4d66-8f36-74d6fa1370df
https://github.com/user-attachments/assets/5affac22-1b86-4bf8-9993-15b9b023e4e8
Install directly from the Obsidian plugin marketplace, or manually download the latest release, unzip it, and place the folder in your vault's plugin directory. Enable the plugin in Obsidian’s settings.
Define Variables:
In the note’s frontmatter (the YAML block), define your variables. Example:
yaml
---
projectName: Obsidian Live Variables Plugin
dueDate: 2024-12-31
---
Insert Variables: You can insert variables using the following options:
Live Variables: Insert local variable.Live Variables: Insert variable from another note.Query variables: Insert a live code blocks, live custom js function and your saved function by using command: Live Variables: Query variables.
Update Variables:
Check out this quick demo of all of plugin's features in action:
https://github.com/user-attachments/assets/70361e83-5b84-4029-a7e9-e0e640e216d1
We welcome contributions! If you have suggestions for improvements or new features, feel free to open an issue or submit a pull request.
This project is licensed under the MIT License.
$ claude mcp add Live-variables \
-- python -m otcore.mcp_server <graph>