Search...Search plugins and themes...
⌘K
Sign in
  • Get started
  • Download
  • Pricing
  • Enterprise
  • Account
  • Obsidian
  • Overview
  • Sync
  • Publish
  • Canvas
  • Mobile
  • Web Clipper
  • CLI
  • Learn
  • Help
  • Developers
  • Changelog
  • About
  • Roadmap
  • Blog
  • Resources
  • System status
  • License overview
  • Terms of service
  • Privacy policy
  • Security
  • Community
  • Plugins
  • Themes
  • Discord
  • Forum / 中文论坛
  • Merch store
  • Brand guidelines
Follow us
DiscordTwitterBlueskyThreadsMastodonYouTubeGitHub
© 2026 Obsidian

Vault Variables

nicostavnicostav13 downloads

Define variables once and use them as {{name}} anywhere in your notes.

Add to Obsidian
  • Overview
  • Scorecard
  • Updates1

Define variables once and use them as {{name}} anywhere in your notes.

If you keep setup notes with the same IP, hostname, or username scattered across many snippets, this plugin lets you change the value in one place and have every note update.

Usage

  • Open the settings tab, or click the braces icon in the ribbon ("Edit vault variables"), to add, edit, reorder, or delete variables.
  • Use {{name}} anywhere in a note — plain text, lists, tables, headings, callouts, inline code, and fenced code blocks. Type {{ in the editor to get an autocomplete popup listing your variables.
  • Substitution only happens in Reading view. Source mode and Live Preview always show the raw {{name}}, and note files are never modified.
  • Undefined variables are left as the literal {{name}} and highlighted, so you can spot typos or values you haven't set yet. This can be turned off in settings.
  • The native code-block copy button copies the substituted text, not the raw {{name}} source.
  • Editing a variable updates any open Reading views immediately.

Installation

Community plugins

Search for "Vault Variables" in Obsidian's community plugins browser and install it from there.

Manual

Copy main.js, manifest.json, and styles.css from a release into <vault>/.obsidian/plugins/vault-variables/, then enable the plugin in Obsidian's settings.

Issues

Please file issues on Disroot.

Development

npm install
npm run dev     # esbuild watch mode
npm run build   # typecheck + production build
npm run lint

Releasing

npm version patch   # or minor/major
git push --follow-tags
npm run build
gh release create <version> main.js manifest.json styles.css --title <version>

The git tag must equal the manifest.json version exactly, with no v prefix.

License

MIT, see LICENSE.

HealthExcellent
ReviewSatisfactory
About
Define vault-wide variables and reference them as {{name}} anywhere in your notes to change values in one place. Display substituted values in Reading view (Source/Live Preview show raw {{name}}), get autocomplete, highlight undefined variables, update open views live, and copy substituted code-block text.
TemplatingAutocomplete
Details
Current version
1.0.0
Last updated
3 days ago
Created
3 days ago
Updates
1 release
Downloads
13
Compatible with
Obsidian 1.0.0+
Platforms
Desktop, Mobile
License
MIT
Report bugRequest featureReport plugin
Author
nicostavnicostav
GitHubnicostav
  1. Community
  2. Plugins
  3. Templating
  4. Vault Variables

Related plugins

Templater

Create and use dynamic templates.

QuickAdd

Quickly add new notes or content to your vault.

Folder notes

Create notes within folders that can be accessed without collapsing the folder, similar to the functionality offered in Notion.

Numerals

Turn any code block into an advanced calculator. Evaluate math expressions on each line of a code block, including units, currency, and optional TeX rendering.

Various Complements

Complete words similar to auto-completion in an IDE.

Journals

Manage your journals.

Fantasy Statblocks

Create, manage and view a Fantasy Bestiary with Dungeons and Dragons style statblocks.

Periodic Notes

Manage your daily, weekly, and monthly notes.

Raindrop Highlights

Sync your Raindrop.io highlights.

Kindle Highlights

Sync your Kindle book highlights using your Amazon login or uploading your My Clippings file.